Jaeger
完成此任务后,您将了解如何让您的应用程序参与使用 Jaeger 进行跟踪,无论您使用哪种语言、框架或平台构建应用程序。
此任务使用 Bookinfo 示例作为示例应用程序。
要了解 Istio 如何处理跟踪,请访问此任务的 概述。
开始之前
请按照 Jaeger 安装 文档将 Jaeger 部署到您的集群中。
启用跟踪时,您可以设置 Istio 用于跟踪的采样率。在安装期间使用
meshConfig.defaultConfig.tracing.sampling
选项 设置采样率。默认采样率为 1%。部署 Bookinfo 示例应用程序。
访问仪表盘
远程访问遥测插件 详细介绍了如何通过网关配置对 Istio 插件的访问。
为了测试(和临时访问),您也可以使用端口转发。假设您已将 Jaeger 部署到 istio-system
命名空间,请使用以下命令:
$ istioctl dashboard jaeger
使用 Bookinfo 示例生成跟踪
Bookinfo 应用程序启动并运行后,访问
http://$GATEWAY_URL/productpage
一次或多次以生成跟踪信息。要查看跟踪数据,您必须向您的服务发送请求。请求数量取决于 Istio 的采样率,并且可以使用 遥测 API 进行配置。使用默认的 1% 采样率,您需要发送至少 100 个请求才能看到第一个跟踪。要向
productpage
服务发送 100 个请求,请使用以下命令:$ for i in $(seq 1 100); do curl -s -o /dev/null "http://$GATEWAY_URL/productpage"; done
在仪表盘的左侧窗格中,从**服务**下拉列表中选择
productpage.default
,然后单击**查找跟踪**。跟踪仪表盘 单击顶部的最新跟踪以查看与对
/productpage
的最新请求相对应的详细信息。详细跟踪视图 跟踪由一组跨度组成,每个跨度对应于在执行
/productpage
请求期间调用的Bookinfo服务,或内部Istio组件,例如:istio-ingressgateway
。
清理
使用control-C或删除任何可能仍在运行的
istioctl
进程。$ killall istioctl
如果您不打算探索任何后续任务,请参阅Bookinfo清理说明以关闭应用程序。