Container Service for Kubernetes (ACK) のコストインサイト機能は、財務部門が複数ディメンションからリソース使用量を分析し、コストを割り当てるのに役立ちます。この機能は、コスト削減に関する提案も提供します。
前提条件
Kubernetes 1.18.8 以降を実行する ACK クラスタが準備されていること。 Kubernetes バージョンのアップグレードについては、「ACK クラスタを手動でアップグレードする」をご参照ください。
Managed Service for Prometheus がクラスタで有効になっていること。詳細については、「Managed Service for Prometheus を有効にする」をご参照ください。
課金
コストインサイトメトリック
コストインサイト機能は、請求書やクラウドリソースの価格設定などのデータから基本的なメトリックを生成し、Managed Service for Prometheus に報告します。ストレージの保存期間などのデフォルト構成を変更すると、追加費用が発生する可能性があります。
コストタグの設定デフォルトでは、コストインサイト機能はコスト配分タグを使用してデータをフィルタリングします。コストインサイトが請求データまたはノードプール分析を取得できるようにするには、次の手順を実行します。
[コスト配分タグ] を 費用とコスト コンソールで有効にします。
ack.aliyun.comタグとack.alibabacloud.com/nodepool-idタグを [コスト配分タグ] 設定で有効にします。
コストインサイトを有効にする
[ACK コンソール] にログオンします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。左側のペインで、 を選択します。
AliyunCSManagedCostRole Resource Access Management (RAM) ロールをクラスタに割り当て、ack-cost-exporter コンポーネントをインストールします。
課金管理で課金データにアクセスするための ACK クラスタを承認する
ACK マネージドクラスター: システムは必要な権限を自動的に付与します。承認が完了すると、システムは自動的に AliyunCSManagedCostRole ロールを作成します。Managed Service for Prometheus は、RAM ロールを担って、費用とコストで課金データにアクセスします。
[承認][RAM クイック承認] ページで することもできます。
ACK 専用クラスター:
ack-cost-exporter コンポーネントをインストールする
画面の指示に従って ack-cost-exporter コンポーネントをインストールします。コンポーネントがインストールされると、自動的にコストインサイトページにリダイレクトされます。
コストインサイトを無効にする
コストインサイト機能を使用する必要がなくなった場合は、ack-cost-exporter コンポーネントをアンインストールし、機能を無効にすることができます。
[ACK コンソール] にログオンします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
[アドオン] ページで、ack-cost-exporter を見つけ、[アンインストール] をクリックします。 [アンインストール] メッセージで、[OK] をクリックします。
FAQ
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-roleack-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