Odigos 安裝使用
本文轉寫時間為 2023年11月20日,內容可能會有變動,僅記錄
Odigos結合了OpenTelemetry和eBPF,自動為應用程式進行instrument,不須修改任何程式。使用Odigos,可獲得分散式追蹤、metric和log。此外Odigos能夠檢測每個正在運行的應用程式的編程語言,並使用最適合該編程語言的instrument技術。
Odigos使用eBPF來instrument應用程式。eBPF是一種kernel技術,對應用程式幾乎沒有任何額外影響。
Odigos 架構

下載 odigos cli,請根據作業系統和架構選擇 https://github.com/keyval-dev/odigos/releases
解壓縮
確認kubeconfig 位置,此範例在預設位置 ~/.kube.config
部屬範例程式,這裡不跟官網一樣,我選sock-shop 為範例,請修改yaml 內的mongodb image為 mongo:5.0.11
安裝 Odigos
啟動UI頁面
輸入IP port 即可看到網頁

部署範例
部署 all-in-one Jaeger
回到 odigos ui 重整頁面,namespace 選擇 sock-shop ,選擇要被 trace 的服務,這裡全選

下一步,選擇輸出的目的,這裡選擇剛剛建立的 jaeger

並輸入 jaeger 位置

完成後可以看到所有服務透過 odigos 把trace 導入到 jaeger

回到範例程式頁面,並操作
連到jaeger 頁面, http://localhost:16686,即可看到trace 結果

結論
可以不用重啟程式,透過UI介面就可以設定那些應用程式可以trace,使用起來非常方便,但是目前專案剛起步,使用上還太少客製化設定,像是採樣率還有政策等等,還有透過UI操作時有時候會一直無法加入trace,這個專案可以持續關注未來的發展,個人覺得有淺,但是社群也需要大力支持才能更強壯。
Last updated