可能原因
-
應用監控被暫停。
-
應用所在pod的探針沒有被正確載入。
解決方案
步驟一:檢查應用監控是否被暫停
步驟二:檢查探針是否被正確載入
登入Container Service管理主控台,在叢集列表頁面,單擊目的地組群名稱進入叢集詳情頁。
-
在左側導覽列選擇。
-
在容器組頁面頂部選擇您的應用所在的命名空間,然後單擊目標應用右側單擊YAML 編輯。
-
在編輯YAML對話方塊中查看YAML檔案中是否存在initContainers。
state: running: startedAt: '2023-01-13T08:50:46Z' hostIP: xxx.xxx.xx.196 initContainerStatuses: - containerID: >- containerd://5d6cff441916ea146f6c9568e86e749817a64f212405349b5edc580991fb3195 image: >- registry-vpc.cn-hangzhou.aliyuncs.com/ack-onepilot/ack-onepilot-init:3.0.6 imageID: >- registry-vpc.cn-hangzhou.aliyuncs.com/ack-onepilot/ack-onepilot-init@sha256:93fe036b4c3dda4d4db3bc90de1e00972199a371ada31d1818b3395ecae8a145 lastState: {} name: one-pilot-initcontainer ready: true restartCount: 0 state: terminated: containerID: >- containerd://5d6cff441916ea146f6c9568e86e749817a64f212405349b5edc580991fb3195 exitCode: 0 finishedAt: '2023-01-13T08:50:45Z' reason: Completed startedAt: '2023-01-13T08:50:31Z' phase: Running podIP: xxx.xxx.xx.241 podIPs: - ip: xxx.xxx.xx.241 qosClass: Guaranteed startTime: '2023-01-13T08:50:30Z' -
在頁面頂部選擇命名空間為ack-onepilot。查看Pod列表中是否存在名稱首碼為ack-onepilot的Pod,且ack-onepilot的所有Pod均已變換完畢。
-
如果存在,則執行步驟6。
-
如果不存在,則在應用市場中安裝ack-onepilot。具體操作,請參見如何卸載arms-pilot和安裝ack-onepilot。
-
-
在工作負載下的無狀態或有狀態頁面目標應用右側操作列中選擇,在編輯YAML對話方塊查看YAML檔案中的spec.template.metadata層級下是否存在以下Labels註解。
labels: armsPilotAutoEnable: "on" armsPilotCreateAppName: "<your-deployment-name>" # 請將<your-deployment-name>替換為您的應用程式名稱。 # armsSecAutoEnable: "on" # 如果需要接入應用安全,則需要配置此參數。-
如果存在,則執行步驟7。
-
如果不存在,則在編輯YAML對話方塊中的spec.template.metadata層級下添加以上Labels註解,然後單擊更新。
-
-
在頁面目標應用右側選擇,查看ack-onepilot的Pod日誌是否報STS錯誤,即提示
"Message":"STS錯誤"。-
如果報STS錯誤,則需為應用所在叢集授權,並重啟應用所在Pod。具體操作,請參見為Container ServiceKubernetes版授權。
-
如果未報STS錯誤,請提交工單。
-
-
在頁面目標應用右側單擊YAML 編輯,在編輯YAML對話方塊中查看YAML檔案中是否存在以下javaagent參數。
-javaagent:/home/admin/.opt/ArmsAgent/aliyun-java-agent.jar說明如果您使用的探針版本在2.7.3.5以下,請將本文中的aliyun-java-agent.jar替換為arms-bootstrap-1.7.0-SNAPSHOT.jar。建議您儘快將探針升級至最新版本。
> YAML 編輯