Kubernetes Metrics Server でのリソース使用状況の表示 - Amazon EKS

このページの改善にご協力ください

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「GitHub でこのページを編集する」リンクを選択してください。

Kubernetes Metrics Server でのリソース使用状況の表示

Kubernetes Metrics Server は、クラスター内のリソース使用状況データを集約する働きをし、デフォルトでは Amazon EKS クラスターにデプロイされません。詳細については、GitHub の「Kubernetes Metrics Server (Kubernetes メトリクスサーバー)」を参照してください。Kubernetes Metrics Server は、Scale pod deployments with Horizontal Pod AutoscalerKubernetes Dashboard など他の Kubernetes アドオンによってよく使用されます。詳細については、Kubernetes ドキュメントの「Resource metrics pipeline」を参照してください。このトピックでは、Kubernetes メトリクスサーバーを Amazon EKS クラスターにデプロイする方法について説明します。

重要

メトリクスはポイントインタイム分析を目的としており、履歴分析の正確なソースではありません。監視ソリューションとして、またはその他の自動スケーリング以外の目的には使用できません。監視ツールの詳細については「クラスターのパフォーマンスをモニタリングし、ログを表示する」を参照してください。

Amazon EKS アドオンを使用してコミュニティアドオンとしてデプロイする

新規: AWSコンソールまたは Amazon EKS APIs Server をコミュニティアドオンとしてデプロイできるようになりました。

AWS コンソールでデプロイ

  1. AWS コンソールで EKS クラスターを開きます

  2. 「アドオン」タブから Get More Add-ons.を選択します。

  3. 「コミュニティアドオン」セクションで、メトリクスサーバーを選択し、次を選択してください。

  4. EKS はクラスターに適したバージョンのアドオンを決定します。バージョンドロップダウン メニューを使用してバージョンを変更できます。

  5. 次へ を選択し、作成 を選択してアドオンをインストールします。

追加リソース

コミュニティアドオン の詳細を確認してください。

コミュニティアドオンは他の Amazon EKS アドオンと同じ方法でインストールまたは更新します。

マニフェストを使用してデプロイする

新規: AWSコンソールまたは Amazon EKS APIs Server をコミュニティアドオンとしてデプロイできるようになりました。これらのマニフェストのインストール手順はアーカイブされます。

  1. 次のコマンドを使用してメトリクスサーバーをデプロイします。

    kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

    Fargate を使用している場合はこのファイルを変更する必要があります。デフォルト設定ではメトリクスサーバーはポート 10250 を使用します。このポートは Fargate で予約されています。components.yaml のポート 10250 への参照を 10251 などの別のポートに置き換えます。

  2. 次のコマンドを使用して、metrics-server デプロイで必要な数の Pod が実行されていることを確認します。

    kubectl get deployment metrics-server -n kube-system

    出力例は次のとおりです。

    NAME READY UP-TO-DATE AVAILABLE AGE metrics-server 1/1 1 1 6m
  3. ノードのリソース (CPU/メモリ) 使用状況を表示して、メトリクスサーバーが動作しているかテストします。

    kubectl top nodes
  4. エラーメッセージ Error from server (Forbidden) が表示された場合はKubernetes RBAC 設定を更新する必要があります。Kubernetes RBAC ID にはクラスターメトリクスを読み取るための十分なアクセス許可が必要です。メトリクスを読み取るために必要な最低限の Kubernetes API アクセス許可を GitHub で確認します。役割などの AWS IAM ID に Kubernetes API へのアクセス権を付与する方法について説明します。