全部產品
Search
文件中心

Container Service for Kubernetes:啟用成本洞察功能

更新時間:Sep 07, 2024

成本洞察功能可以協助企業IT成本管理員從多維度瞭解叢集資源使用量及成本分布,提供成本節約建議。本文介紹如何開啟和關閉成本洞察功能。

前提條件

開啟成本洞察功能

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇成本套件 > 成本洞察

  3. 授權AliyunCSManagedCostRole角色並安裝ack-cost-exporter組件,開啟成功洞察。

    1. 授予訪問ACK叢集賬單資料的許可權

      • 如果您使用的是託管版叢集,系統會自動授予相關許可權。完成授權後,系統會建立AliyunCSManagedCostRole角色,阿里雲Prometheus使用該角色訪問您在費用與成本的賬單資料並進行成本洞察。

        您也單擊雲資源訪問授權連結,在雲資源訪問授權頁面,單擊同意授權

      • 如果您使用的是專有版叢集,請展開按照以下步驟完成授權。

        1. 成本洞察頁面,單擊KubernetesWorkerRole-***

        2. 在RAM角色頁面的許可權管理頁簽,單擊權限原則列下的k8sWorkerRole****

        3. 在權限原則詳情頁面的策略內容頁簽下,單擊修改策略內容

        4. 在指令碼編輯框中Statement欄位中增加以下授權規則,修改完成後單擊編輯基本資料,然後單擊確定

                  {
                      "Action": [
                          "bssapi:QueryInstanceBill",
                          "bssapi:DescribeInstanceBill"
                      ],
                      "Resource": "*",
                      "Effect": "Allow"
                  },
                  {
                      "Action": [
                          "ecs:DescribeDisks",
                          "ecs:DescribeSpotPriceHistory",
                          "ecs:DescribeInstances",
                          "ecs:DescribePrice"
                      ],
                      "Resource": "*",
                      "Effect": "Allow"
                  },
                  {
                      "Action": [
                          "eci: DescribeContainerGroupPrice"
                      ],
                      "Resource": "*",
                      "Effect": "Allow"
                  }
          說明

          多個策略內容需要用英文半形逗號(,)分隔。

    2. 安裝組件

      按照頁面指引,安裝ack-cost-exporter組件。安裝完成後,頁面自動跳轉至成本洞察頁面。

關閉成本洞察功能

如無需使用成本洞察功能,您可以卸載ack-cost-exporter組件,關閉該功能。

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > 組件管理

  3. 組件管理頁面找到ack-cost-exporter,在卡片單擊卸載,然後在卸載組件對話方塊,單擊確定

常見問題

ack-cost-exporter組件安裝或卸載失敗後如何處理?

  • 當安裝ack-cost-exporter組件失敗時,請先通過以下命令手動刪除ack-cost-exporter組件,然後重新安裝ack-cost-exporter組件。關於安裝ack-cost-exporter組件的具體操作,請參見管理組件

    kubectl delete deployment ack-cost-exporter -n kube-system
    kubectl delete service alibaba-cloud-price-exporter -n kube-system
    kubectl delete service alibaba-cloud-billing-exporter -n kube-system
    kubectl delete service alibaba-cloud-cost-exporter -n kube-system
    
    kubectl delete ServiceMonitor alibaba-cloud-price-exporter -n kube-system
    kubectl delete ServiceMonitor alibaba-cloud-billing-exporter -n kube-system
    kubectl delete ServiceMonitor alibaba-cloud-cost-exporter -n kube-system
    
    kubectl delete ClusterRoleBinding ack-cost-exporter-cluster-role-binding
    kubectl delete ClusterRoleBinding ack-cost-exporter-cluster-role-binding-v1
    
    kubectl delete ServiceAccount ack-cost-exporter -n kube-system
    kubectl delete ClusterRole ack-cost-exporter-cluster-role
  • 當卸載ack-cost-exporter組件失敗時,可以通過以下命令手動刪除ack-cost-exporter組件。

    kubectl delete deployment ack-cost-exporter -n kube-system
    kubectl delete service alibaba-cloud-price-exporter -n kube-system
    kubectl delete service alibaba-cloud-billing-exporter -n kube-system
    kubectl delete service alibaba-cloud-cost-exporter -n kube-system
    
    kubectl delete ServiceMonitor alibaba-cloud-price-exporter -n kube-system
    kubectl delete ServiceMonitor alibaba-cloud-billing-exporter -n kube-system
    kubectl delete ServiceMonitor alibaba-cloud-cost-exporter -n kube-system
    
    kubectl delete ClusterRoleBinding ack-cost-exporter-cluster-role-binding
    kubectl delete ClusterRoleBinding ack-cost-exporter-cluster-role-binding-v1
    
    kubectl delete ServiceAccount ack-cost-exporter -n kube-system
    kubectl delete ClusterRole ack-cost-exporter-cluster-role