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 カスタムラベルを含むアロケーションを作成し、コストをアロケーション することもできます。)
