對於部署在Container ServiceKubernetes版中的Java應用,您可以使用應用即時監控服務ARMS對其進行監控,實現自動探索應用拓撲、自動產生3D拓撲、自動探索並監控介面、捕獲異常事務和慢事務,大幅提升線上問題診斷的效率。
前提條件
已建立Kubernetes叢集。具體操作,請參見建立Kubernetes託管版叢集或建立Kubernetes專有版叢集。
建立命名空間。具體操作,請參見管理命名空間與配額。本文樣本中的命名空間為
arms-demo
。檢查您的JDK版本。ARMS應用監控支援的JDK版本如下:
JDK 1.7.0+
重要ARMS應用監控將於3.0.X探針版本終止支援Java 7,如果您還在使用Java 7,請儘快升級Java版本。更多資訊,請參見ARMS應用監控終止支援Java 7的說明。
JDK 1.8.0_25+
說明Kubernetes叢集應用部署建議:JDK 1.8.0_191+。
如果JDK版本為1.8.0_25或者1.8.0_31,可能會出現無法安裝探針的情況,請升級至1.8.X最新版本。
JDK 11.0.8+
JDK 17
背景資訊
應用即時監控服務ARMS(Application Real-Time Monitoring Service)是一款阿里雲應用效能管理(APM)類監控產品。只要為部署在Container ServiceKubernetes版中的Java應用安裝ARMS應用監控組件,您無需修改任何代碼,就能藉助ARMS對Java應用進行全方位監控,以便您更快速地定位出錯介面和慢介面、重現調用參數、檢測記憶體流失、發現系統瓶頸,從而大幅提升線上問題診斷的效率。ARMS應用監控的詳細資料請參見什麼是應用監控。
步驟一:安裝ARMS應用監控組件
ACK舊版應用監控組件arms-pilot已不再維護,您可以安裝升級後的ack-onepilot組件用於監控您的應用,ack-onepilot完全相容arms-pilot,您無需修改應用配置即可無縫接入ack-onepilot。更多資訊,請參見如何安裝ack-onepilot和卸載arms-pilot。
在左側導覽列單擊叢集,然後在叢集列表頁面單擊目的地組群名稱。
在左側導覽列選擇 ,然後在右上方通過關鍵字搜尋ack-onepilot。
在ack-onepilot卡片上單擊安裝。
說明ack-onepilot組件預設支援1000個pod規模,叢集pod每超過1000個,ack-onepilot資源對應的CPU請增加0.5核、記憶體請增加512 M。
在彈出的頁面中可以配置相關的參數,建議使用預設值,單擊確定。
說明安裝完成後,您可以在組件管理頁面升級、配置或卸載ack-onepilot組件。
步驟二:授予ARMS資源的存取權限
如果需監控ASK(Container ServiceServerless版)或對接了ECI的叢集應用,請在雲資源訪問授權頁面完成授權,然後重啟ack-onepilot組件下的所有Pod。
如果需監控ACK叢集應用,但ACK叢集中不存在ARMS Addon Token,請執行以下操作手動為叢集授予ARMS資源的存取權限。
說明叢集存在ARMS Addon Token時,ARMS會進行免密授權。Kubernetes託管版叢集預設存在ARMS Addon Token,但對於部分早期建立的Kubernetes託管版叢集,可能會存在沒有ARMS Addon Token的情況,因此,對於Kubernetes託管版叢集,建議首先檢查ARMS Addon Token是否存在。若不存在,需進行手動授權。
在左側導覽列選擇叢集,然後單擊目的地組群名稱。
在目的地組群的叢集資訊頁面上單擊叢集資源頁簽,然後單擊Worker RAM角色右側的連結。
在角色頁面的許可權管理頁簽上,單擊新增授權。
選擇許可權為AliyunARMSFullAccess,然後單擊確定。
步驟三:為Java應用開啟ARMS應用監控
如需在建立新應用的同時開啟ARMS應用監控,請完成以下操作。
登入Container Service管理主控台,在左側導覽列選擇叢集。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇 。
在無狀態頁面右上方單擊使用YAML建立資源。
選擇樣本模板,並在模板(YAML格式)中將以下
labels
添加到spec.template.metadata層級下。labels: armsPilotAutoEnable: "on" armsPilotCreateAppName: "<your-deployment-name>" #請將<your-deployment-name>替換為您的應用程式名稱。 armsSecAutoEnable: "on" #如果需要接入應用安全,則需要配置此參數。
建立一個無狀態(Deployment)應用並開啟ARMS應用監控的完整YAML樣本模板如下:
執行結果
在無狀態頁面上,目標應用的操作列將出現ARMS控制台按鈕。
後續步驟
完成上述步驟後,您就為部署在Container ServiceKubernetes版中的應用開啟了ARMS應用監控。在目標應用的操作列中單擊ARMS控制台,將進入ARMS控制台的應用監控頁面。更多資訊,請參見應用總覽。