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
從儀表板的左側窗格中,從 Service 下拉式選單中選擇
productpage.default
,然後點擊 Find Traces(尋找追蹤)追蹤儀表板 點擊頂部最新的追蹤,查看對應於最近對
/productpage
的請求的詳細資訊詳細追蹤檢視 追蹤由一組 span 組成,其中每個 span 對應於一個 Bookinfo 服務,在執行
/productpage
請求期間調用,或內部 Istio 組件,例如:istio-ingressgateway
。
清理
使用 Control-C 或以下方式移除可能仍在執行的任何
istioctl
程序$ killall istioctl
如果您不打算探索任何後續任務,請參閱 Bookinfo 清理 指示以關閉應用程式。