註冊叢集接入阿里雲Prometheus能為分布在各處的Kubernetes叢集提供統一的管理方式。本文介紹如何將阿里雲Prometheus接入至註冊叢集中。
前提條件
已通過Container ServiceKubernetes版接入一個註冊的Kubernetes叢集。具體操作,請參見建立註冊叢集、通過onectl建立註冊叢集。
已通過kubectl串連註冊叢集。具體操作,請參見擷取叢集KubeConfig並通過kubectl工具串連叢集。
對已通過專線方式與雲上VPC互連的註冊叢集,已配置指向Prometheus內網網段的路由。更多資訊,請參見Prometheus內網網域名稱與路由網段對照表。
步驟一:為ack-arms-prometheus組件配置RAM許可權
通過onectl配置
在本地安裝配置onectl。具體操作,請參見通過onectl管理註冊叢集。
執行以下命令,為ack-arms-prometheus組件配置RAM許可權。
onectl ram-user grant --addon arms-prometheus
預期輸出:
Ram policy ack-one-registered-cluster-policy-arms-prometheus granted to ram user ack-one-user-ce313528c3 successfully.
通過控制台配置
建立RAM使用者。具體操作,請參見建立RAM使用者。
建立自訂權限原則。具體操作,請參見建立自訂權限原則。ack-arms-prometheus組件需要的權限原則內容如下。
{ "Version": "1", "Statement": [ { "Action": [ "arms:Describe*", "arms:List*", "arms:Get*", "arms:Search*", "arms:Check*", "arms:Query*", "arms:ListEnvironments", "arms:DescribeAddonRelease", "arms:InstallAddon", "arms:DeleteAddonRelease", "arms:ListEnvironmentDashboards", "arms:ListAddonReleases", "arms:CreateEnvironment", "arms:UpdateEnvironment", "arms:InitEnvironment", "arms:DescribeEnvironment", "arms:InstallEnvironmentFeature", "arms:ListEnvironmentFeatures" ], "Resource": "*", "Effect": "Allow" } ] }
為RAM使用者添加許可權。具體操作,請參見為RAM使用者授權。
為RAM使用者建立AccessKey。具體操作,請參見擷取AccessKey。
使用AccessKey在註冊叢集中建立名為alibaba-addon-secret的Secret資源。
執行以下命令,建立ack-arms-prometheus組件使用的Secret。
kubectl -n arms-prom create secret generic alibaba-addon-secret --from-literal='access-key-id=<your AccessKey ID>' --from-literal='access-key-secret=<your AccessKey Secret>'
說明<your AccessKey ID>
和<your AccessKey Secret>
為上一步擷取的AccessKey資訊。
步驟二:安裝ack-arms-prometheus組件
通過onectl安裝
執行以下命令,安裝ack-arms-prometheus組件。
onectl addon install arms-prometheus
預期輸出:
Addon arms-prometheus, version **** installed.
通過控制台安裝
登入Container Service管理主控台,在左側導覽列選擇叢集。
在叢集列表頁面中,單擊目的地組群名稱,然後在左側導覽列中,選擇 。
若Helm頁面存在arms-prometheus和arms-prom安裝記錄,請刪除對應的安裝記錄後,再按照後續操作重新接入。
在叢集管理頁左側導覽列,選擇 。
在組件管理頁面,單擊日誌與監控頁簽。
找到ack-arms-prometheus卡片,單擊右下角的安裝。然後單擊確定。
安裝完成後,您可登入Prometheus控制台。進入對應叢集執行個體,查看監控資料和定義警示規則。更多資訊,請參見使用阿里雲Prometheus監控和建立Prometheus監控警示。
如何切換ack-arms-prometheus組件採集CAdvisor 10250連接埠資料
ack-arms-promethues組件預設採集CAdvisor 10255連接埠資料,如果您的註冊叢集只開啟了kubelet 10250連接埠,可以按照以下步驟切換ack-arms-promethues組件的採集連接埠。
使用以下YAML內容,在註冊叢集中部署配置ServiceMonitor。
等待大約需要15s~1 min後,進行採集資料驗證。
驗證切換連接埠後的採集資料。
登入ARMS控制台。
在左側導覽列選擇 ,進入可觀測監控 Prometheus 版的執行個體列表頁面。
在Prometheus監控頁面的頂部功能表列,選擇叢集所在的地區。
在執行個體列表頁面,單擊目標執行個體名稱進入整合中心頁面,然後在左側導覽列單擊服務發現,單擊Targets頁簽。
查看是否已存在arms-prom/arms-prom-cadvisor-10250採集任務,且採集任務狀態是否正常。