Container Service for Kubernetes (ACK) クラスターで、Namespace、ノードプール、アプリケーションごとにリソース使用状況を分析し、コストを割り当てます。
コストのディメンション
以下のディメンションでコストを分析できます:
-
クラスター
-
Namespace
-
ノードプール
-
アプリケーション (Deployment、StatefulSet、DaemonSet、Job、CronJob)
前提条件
次の要件を満たしていることを確認してください:
-
Kubernetes 1.18.8 以降を実行している ACK マネージドクラスターまたは専用クラスターがあること。 必要に応じて クラスターをアップグレード してください。
-
Managed Service for Prometheus が有効化されていること。 詳細については、「Prometheus モニタリングの有効化」をご参照ください。
課金
コストインサイトのメトリクス
コストインサイトは、課金データとリソース価格からメトリクスを生成し、Prometheus にレポートします。 ストレージ保持期間などのデフォルト設定を変更すると、追加のコストが発生する場合があります。
コスト配分タグ
コスト配分タグは、課金データをフィルタリングし、ノードプール分析と関連付けます。 コストインサイトを有効にする前に、これらを設定してください:
-
[費用とコスト] コンソールに移動します。
-
[コスト配分タグ] ページで、左側のパネルからタグを選択し、[選択したタグ] に移動して、[有効化] をクリックします。
-
以下のタグを有効にします:
-
ack.aliyun.com -
ack.alibabacloud.com/nodepool-id
-
コストインサイトの有効化
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、 を選択します。
-
クラスターが課金データにアクセスできるように承認します。
承認はクラスターのタイプによって異なります:
-
課金データへのアクセス権の付与
-
ACK マネージドクラスター
システムは自動的に AliyunCSManagedCostRole RAM ロールを作成します。 Prometheus はこのロールを引き受けて、課金データにアクセスします。
または、[RAM クイック承認] ページから承認します。
-
ACK 専用クラスター
ワーカーロールのポリシーに課金権限を追加します:
-
-
画面の指示に従って ack-cost-exporter をインストールします。
インストール後、ページは [コストインサイト] にリダイレクトされます。
-
コストインサイトの無効化
コストメトリクスの収集を停止するには、ack-cost-exporter をアンインストールしてください:
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、 を選択します。
-
[アドオン] ページで ack-cost-exporter を見つけ、[アンインストール] をクリックします。 確認ダイアログボックスで、[OK] をクリックします。
よくある質問
ack-cost-exporter のインストールまたはアンインストールに失敗した場合はどうすればよいですか?
残っているリソースを手動で削除してから、再試行してください:
# Deployment と Service を削除
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
# ServiceMonitor を削除
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
# RBAC リソースを削除
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 を再インストールしてください。 詳細については、「コンポーネントの管理」をご参照ください。