在Kubernetes環境下,ack-onepilot組件實現了ARMS探針自動升級能力,如果您不需要跟隨ARMS探針的版本發布自動更新掛載的探針,可以參考本文鎖定探針版本,待新版探針在您的測試環境驗證通過後,再逐步更新所有應用的探針版本。
方式一(推薦):自主指定探針版本
ack-onepilot組件版本要求
ack-onepilot組件版本≥3.0.17。
您可以在Container Service管理主控台目的地組群下的 頁面檢查ack-onepilot組件版本。如果版本不滿足,請單擊升級,更新ack-onepilot組件。
在應用YAML檔案中添加Label指定固定的探針版本,該方式會覆蓋ARMS探針的版本發布更新,保證應用掛載的探針為指定版本,操作步驟如下:
在ARMS控制台的 頁簽查看線上支援的探針版本號碼,建議使用最新發行版本。
在探針線上狀態頁簽查看應用當前掛載的探針版本,以便後續探針版本復原。
為應用掛載指定的探針版本號碼。
說明如果同時使用方式一和方式二/方式三來設定應用掛載的探針版本,即在EDAS上進行應用部署時同時指定label參數,則方式二、方式三的配置優先順序高於方式一。
方式一:修改應用的YAML檔案,在
labels
下添加aliyun.com/agent-version
指定探針版本號碼,單擊更新後,應用將會自動重啟生效。該操作生效範圍為當前應用,需要固定版本的線上應用都需要修改相應YAML檔案。
如果您的ack-onepilot版本大於等於3.3.0,您還可以使用漸進式升級的方式來自主控制探針版本,可以通過在
aliyun.com/agent-version
下方添加如下label來開啟漸進式升級:aliyun.com/enable-progressive-update: 'true'
說明漸進式升級可以在您通過Kubernetes重新部署工作負載(Deployment, StatefulSet等)時,只有1~2個執行個體的探針可以升級到
aliyun.com/agent-version
指定的版本,其餘執行個體掛載的探針版本保持不變。如果應用工作負載的副本數小於3,則漸進式升級能力不會生效,當指定探針版本後,所有的副本都不會升級到指定的版本,此時不建議開啟漸進式升級能力。
方式二:針對需要部署在EDAS中的K8s叢集應用,您可以在部署應用時,在應用進階設定頁簽的監控及治理配置地區指定探針版本。
說明如需調整可選的探針版本,請聯絡EDAS支援人員。
方式三:針對需要使用EDAS的API(InsertK8sApplication或DeployK8sApplication介面)建立或部署的K8s叢集應用,您可以通過CustomAgentVersion參數指定探針版本。具體操作,請參見DeployK8sApplication - 部署K8s應用。
在測試環境使用測試應用驗證指定探針版本生效後,可逐步更新其他應用的探針版本。
若測試新版本探針功能異常,您可以重複步驟3,恢複應用的探針版本為原版本。
方式二:聯絡支援人員指定探針版本
如果ack-onepilot組件版本小於3.0.17,或者手動修改YAML方式操作量較大,您可以使用線上版本鎖定的方式,將舊的、即將過支援周期的探針版本升級到最新的正式版本。