EKS コストを分析する
DoiT Cloud Analytics(クラウド分析)は、EKS クラスタのメトリクスを AWS の請求データと統合します。これにより、Kubernetes リソースや、DoiT プラットフォームでサポートされているその他のディメンションとラベルごとに EKS コストを内訳表示できます。
EKS コストの構成要素
EKS コストを分析する際は、Amazon EKS では EKS のサービスと、ワークロードが使用する各種 AWS リソースに対して個別に支払うことを理解しておくことが重要です。
-
EKS サービスのコスト:Amazon EKS pricing には、Kubernetes クラスタのバ ージョンサポートに基づくクラスタ単位の料金、Amazon EKS Auto Mode の料金、Amazon EKS Hybrid Nodes の vCPU 単位の料金が含まれます。
-
リソースのコスト:Kubernetes のワーカーノード上でアプリケーションを実行するために使用するリソースには、個別に支払います。たとえば、EKS クラスタで EC2 インスタンスを使用している場合、EC2 の料金に基づいて請求されます。EBS ボリューム(ストレージ)やデータ転送(ネットワーキング)のコストも同様です。
EKS ラベル
EKS ラベルはPods レベルで割り当てられます。EKS ラベルを使用して Kubernetes リソースの使用状況を追跡し、プロジェクトコストを分析し、コスト最適化の機会を特定できます。
DoiT Cloud Analytics(クラウド分析)のレポートでは、EKS ラベルは「EKS Labels」セクションにまとめられており、次の 2 つのカテゴリで構成されます。
-
Kubernetes メタデータ:Kubernetes オブジェクトを一意に特定するためのデータで、
EKS billing_source、EKS cluster name、EKS namespace、EKS deployment_kind、EKS pod、EKS uid、EKS pod_owner_name、EKS nodegroup nameを含みます。 -
カスタムラベル:お客様側で定義・割り当てたラベルです。これらのラベルは DoiT コンソールで
label_のプレフィックス付きで表示されます(例:label_k8s_app)。
さらに、未アロケーションのリソースの追跡に特に役立つラベル値が 2 つあります。
-
[Label N/A]は、特定の Kubernetes リソースにアトリビューションできなかった項目を示すのが一般的です。これには、ストレージやネットワークといったクラスタレベルのリソースのコスト、UNREQUESTED_COSTSのノード、Kubernetes のメトリクス収集が一部のワークロード詳細を取得できなかった場合のメタデータ欠落のリソースが含まれます。 -
UNREQUESTED_COSTSは、特定の Pod にアトリビューションできないノードレベルのコスト(各ノードで実行中のどの Pod にも消費されていない残余コスト)を表します。
DoiT Cloud Analytics(クラウド分析)は EKS メトリクスを AWS の請求データと統合しているため、同一レポート内で、EKS ラベルと他の AWS リソースに割り当てられたAWS コスト配分タグを組み合わせて使用できます。
必要な権限
Cloud Analytics(クラウド分析)のレポートを作成・実行するには、DoiT コンソールで「Cloud Analytics User」の権限が必要です。
レポート例
DoiT コンソールには、Amazon EKS の支出の 各側面を強調表示するレポートウィジェットを備えた、事前構築済みのEKS Intelligence ダッシュボードが用意されています。EKS ラベルやその他のディメンションを使用して独自のレポートを作成することも可能です。以下に例を示します。
Namespace と Pod オーナー別のコスト内訳
この例では、直近 1 か月における EKS クラスタ eks-cluster-1 のコストを、Namespace と Pod オーナー別に内訳表示します。

コストタイプと SKU 別のコスト内訳
この例では、コストタイプ と SKU によって、EKS クラスタのコストをさらに詳細に内訳表示します。

サービス横断のコストアロケーション
この例では、組織が Team ラベルを使用して、さまざまな主体が要求した AWS リソースを区別しています。同一レポートで EKS およびその他の AWS サービスのコストを表示するには、標準ラベル Team と EKS のカスタムラベル EKS label_team の両方を含めます。(または、標準ラベルと対応する EKS カスタムラベルを含むアロケーションを作成し、コストをアロケーション することもできます。)
