簡介
容器服務 Kubernetes 版(簡稱 ACK)提供高性能可伸縮的容器應用管理能力,支持企業級容器化應用的全生命周期管理,2021 年成為國內唯一連續三年入選 Gartner 公共云容器報告的產品,2022 年國內唯一進入 Forrester 領導者象限,其整合了阿里云虛擬化、存盤、網路和安全能力,助力企業高效運行云端 Kubernetes 容器化應用,
觀測云支持 ACK 集群的接入,下面是入門接入的具體步驟,
前置條件
安裝 ACK,本次使用版本 1.24.6-aliyun.1 ,
注冊「觀測云賬號」,
操作步驟
1 配置 yaml 檔案
1.1 下載 datakit.yaml
登錄「觀測云」,點擊「集成」模塊,再點擊左上角「DataKit」,選擇「Kubernetes」,下載 datakit.yaml,本次部署的是 datakit 1.4.19 ,
1.2 替換 Token
登錄「觀測云」,進入「管理」模塊,在「基本設定」里面復制 token,替換 datakit.yaml 檔案中的 ENV_DATAWAY 環境變數的 value 值中的 ,
1.3 增加全域 Tag
針對一個作業空間接入多個 Kubernetes 集群指標,觀測云提供了使用全域 Tag 的方式來進行區分,
當集群中只有一個采集物件,比如采集kubernetes API Server指標,集群中 DataKit 的數量會大于一個,為了避免指標采集重復,DataKit 開啟了選舉功能,這個時候區分集群的方式是增加
ENV_GLOBAL_ELECTION_TAGS;而針對非選舉類的指標采集,比如為 Pod 增加 annotations 的方式進行指標采集,觀測云提供了在 ENV_GLOBAL_HOST_TAGS環境變數中增加全域 Tag 的方式,(注意:舊版本這個環境變數名稱是 ENV_GLOBAL_TAGS,)
-name:ENV_GLOBAL_HOST_TAGS value:host=__datakit_hostname,host_ip=__datakit_ip,cluster_name_k8s=aliyun-ack
根據上面的說明,下面修改 yaml 檔案,
在 datakit.yaml 檔案中的 ENV_GLOBAL_TAGS 環境變數值最后增加 cluster_name_k8s=aliyun-ack;
再增加環境變數 ENV_GLOBAL_ELECTION_TAGS,這樣測驗環境的集群就是 aliyun-ack;
增加環境變數 ENV_NAMESPACE 值是 aliyun-ack,
2 部署 DataKit
修改完成 yaml 檔案后,下面開始部署 DataKit,
(1)登錄阿里云容器服務管理控制臺,
(2)在控制臺左側導航欄中,單擊「集群」,
(3)在「集群串列」頁面中,單擊目標集群名稱或者目標集群右側「操作」列下的「詳情」,
(4)在集群管理頁左側導航欄單擊「作業負載」 - 「自定義資源」,然后在右側頁面單擊「使用 YAML 創建」,
選擇相應的命名空間,選擇所有名稱空間,
在示例模板中,選擇自定義,把 yaml 的內容貼入模板中, 點擊「創建」,
在守護行程集下面可以查看到 DataKit 運行情況,
3 卸載 DataKit
DataKit 部署默認使用了 datakit 命名空間,卸載只需要洗掉守護行程集中的 datakit、datakit 命名空間下的資源及名為 datakit 的 ClusterRoleBinding,卸載的方式比較多,這里提供一種通過阿里云容器服務管理控制臺卸載的方式,
3.1 洗掉 DaemonSet
在阿里云的容器管理控制臺進入「作業負載」 - 「守護行程集」,找到 datakit,點擊右邊的「洗掉」,
3.2 洗掉命名空間
進入「節點管理」- 「命名空間與配額」,找到 datakit,點擊右邊的「洗掉」,
3.3 洗掉 Cluster Role
進入 「安全管理」 - 「角色」,在 Cluster Role 下面找到 datakit,點擊右邊的「洗掉」,
3.4 例外處理
如果在下次部署的時候提示如下錯誤,是因為阿里云控制臺顯示洗掉了,實際資源還存在的情況,
這時只需要把 datakit.yaml 檔案中的如下部分洗掉即可重新部署,
1 apiVersion:rbac.authorization.k8s.io/v1 3 kind:ClusterRoleBinding 5 metadata: 7 name:datakit 9 roleRef: 11 apiGroup:rbac.authorization.k8s.io 13 kind:ClusterRole 15 name:datakit 17 subjects: 19 -kind: ServiceAccount 21 name:datakit 23 namespace: datakit
或者使用命令把 ClusterRoleBinding 洗掉,再部署 DataKit,
kubectldeleteclusterrolebindings datakit
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/533540.html
標籤:其他
