配置軌跡
本指南提供如何配置Jaeger為Milvus收集軌跡的說明。
先決條件
部署 Jaeger
Jaeger 是Uber Technologies 以開源方式釋出的分散式追蹤平台。
1.在 Kubernetes 上安裝 Jaeger 操作器
要安裝操作器,請執行:
$ kubectl create namespace observability
$ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/download/v1.62.0/jaeger-operator.yaml -n observability
此時,應該會有jaeger-operator
部署可用。您可以執行以下指令查看:
$ kubectl get deployment jaeger-operator -n observability
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator 1 1 1 1 48s
2.部署 Jaeger
創建一個 Jaeger 實例的最簡單方法是創建一個 YAML 檔案,就像下面的範例一樣。這會安裝預設的 AllInOne 策略,在單一 pod 中部署All-in-one映像(結合jaeger-agent、jaeger-collector、jaeger -query 和 Jaeger UI),預設使用記憶體儲存。
如果要長時間儲存追蹤資料,請參考production-strategy。
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: jaeger
然後,YAML 檔案就可以使用kubectl
:
$ kubectl apply -f simplest.yaml
幾秒鐘之後,一個新的 Jaeger 存儲在記憶體中的多合一實例就會出現,適合快速演示和開發用途。要檢查已建立的實體,請列出 jaeger 物件:
$ kubectl get jaegers
NAME STATUS VERSION STRATEGY STORAGE AGE
jaeger Running 1.62.0 allinone memory 13s
使用 Helm Chart 安裝 Milvus
您可以使用下列設定安裝或升級 Milvus with Helm Chart:
extraConfigFiles:
user.yaml: |+
trace:
exporter: jaeger
sampleFraction: 1
jaeger:
url: "http://jaeger-collector:14268/api/traces"
要將上述設定套用到新的 Milvus 部署,您可以執行下列指令:
$ helm repo add zilliztech https://zilliztech.github.io/milvus-helm
$ helm repo update
$ helm upgrade --install -f values.yaml my-release milvus/milvus
要將上述設定套用到現有的 Milvus 部署,您可以執行下列指令:
$ helm upgrade my-release -f values.yaml milvus/milvus
檢視追蹤
一旦您使用 Helm Chart 部署了 Jaeger 和 Milvus,dfault 已經啟用了入口。您可以執行以下指令檢視ingress:
$ kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.34 80 14m
一旦ingress可用,您就可以通過導航到http://${ADDRESS}
來訪問 Jaeger UI。用攝取端的實際 IP 位址取代${ADDRESS}
。
下面的截圖顯示了Jaeger用戶介面,以及Milvus在搜索操作和載入收集操作中的痕跡:
追蹤搜尋請求
蹤跡負載收集請求