通過OpenTelemetry eBPF Instrumentation(OBI)提供的無侵入監控能力上報鏈路資料至CloudMonitor2.0後,CloudMonitor2.0即可開始監控應用,您可以查看應用拓撲、調用鏈路、異常事務、慢事務和SQL分析等一系列監控資料。本文介紹如何使用OBI為應用進行監控並上報資料。
前提條件
請確保您的Kubernetes叢集版本1.24或者以上版本。
如果您的Kubernetes叢集沒有部署在阿里雲,請確保叢集連通公網,或者通過雲企業網等方式打通阿里雲VPC和叢集之間的串連。
步驟一:安裝Helm3
步驟二:安裝OBI
執行以下
wget命令下載arms-obi安裝包。wget 'https://aliacs-k8s-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/app/charts-incubator/arms-obi-0.9.4.tgz'執行以下命令解壓arms-obi安裝包。
tar xvf arms-obi-0.9.4.tgz編輯安裝包下的values.yaml檔案,根據實際情況修改以下參數,然後儲存。
workspace: default-cms-__ACK_UID__-__ACK_REGION_ID__ registry: registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ cluster_id: __ACK_CLUSTER_ID__ accessKey: __ACCESSKEY__ accessKeySecret: __ACCESSKEY_SECRET__ uid: "__ACK_UID__" region_id: __ACK_REGION_ID__workspace:將__ACK_UID__、__ACK_REGION_ID_ 替換為阿里雲主帳號的UID和需要上報的RegionId。registry:arms-obi鏡像地址,arms-obi 包含三個鏡像,如果是無法訪問公網,需要同步這個鏡像到對應內網倉庫:registry-cn-hangzhou.ack.aliyuncs.com/acs/obi:obi-app-update-0.9.4 registry-cn-hangzhou.ack.aliyuncs.com/acs/obi:0.9.4 registry-cn-hangzhou.ack.aliyuncs.com/acs/obi:init-0.9.4cluster_id:自訂Kubernetes叢集ID,叢集的唯一標識。建議格式為-。accessKey和accessKeySecret:阿里雲帳號(主帳號)的AccessKey ID和AccessKey Secret。擷取方法,請參見建立AccessKey。重要請確認對應的阿里雲帳號(主帳號)已包含AliyunARMSFullAccess和AliyunSTSAssumeRoleAccess許可權。
uid:阿里雲帳號(主帳號)ID。將滑鼠懸浮於阿里雲控制台右上方的頭像上可以擷取。region_id:阿里雲地區ID,應用監控支援的地區,請參見開服地區。
執行以下命令安裝arms-obi。請在arms-obi安裝包外執行此命令。
helm3 upgrade --install arms-obi arms-obi --namespace obi-system --create-namespace
步驟三:修改設定檔接入應用
若監控grpc協議的應用,重啟應用才能完成grpc協議監控。
在命名空間切
obi-system,找到arms-obi-config並單擊編輯。增加需要監控的應用deployment、namespace、以及在CloudMonitor2.0顯示應用程式名稱,配置樣本如下:
discovery: instrument: - k8s_deployment_name: "server" k8s_namespace: "arms-default" name: "server-test-obi"