Repolode
kubernetes-sigs

kubernetes-sigs/metrics-server

Metrics API経由で提供され、Kubernetesのオートスケーリングに使われる、コンテナのCPU・メモリメトリクスをスケーラブルに収集する仕組み。

スター
6,763
フォーク
2,054
未解決の Issue
68
最終コミット
9 日前

これは何?

Metrics ServerはKubeletからリソースメトリクスを収集し、Metrics APIを介してKubernetes apiserverに公開します。Horizontal Pod AutoscalerとVertical Pod Autoscalerはこのデータを使ってスケーリングを判断し、kubectl topは同じAPIからポッドやノードの使用状況を表示します。

汎用的な監視ではなく、オートスケーリング専用に設計されています。監視システムへのデータ転送が目的の場合は、Kubeletの/metrics/resourceエンドポイントから直接メトリクスを収集することを推奨しています。単一の軽量なデプロイを想定しており、デフォルトのリソースリクエストは約100ノードまでのクラスターに適しています。それを超える規模へのスケーリング方法も案内されています。

クラスターでは、apiserver aggregation layer、Kubelet webhook authentication and authorizationを有効にし、クラスターCAによって署名されたKubelet証明書を使うか、明示的にinsecure-TLSフラグを指定する必要があります。YAMLマニフェストまたは公式Helm chartでインストールでき、複数ノードのクラスター向けに高可用性モードも用意されています。

主な機能

  • 01Kubeletから15秒ごとにCPUとメモリの使用量を収集します。
  • 02標準のKubernetes Metrics APIを通じて、ポッドとノードのメトリクスを公開します。
  • 03Horizontal Pod AutoscalerとVertical Pod Autoscalerのスケーリング判断にデータを提供します。
  • 04kubectl topを使ってリソース使用状況を手軽に確認できます。
  • 05複数のレプリカによる高可用性モードに対応しています。
  • 06Kubeletのアドレス種別とTLSオプションを設定できます。

ユースケース

  • CPUまたはメモリの使用率に基づいてDeploymentを水平スケーリングする。
  • コンテナのリソースリクエストに関する適切な値の提案を得る。
  • kubectl topを使ってオートスケーリングの挙動を調査する。
  • 中規模のKubernetesクラスターで軽量なメトリクス収集基盤を運用する。

クイックスタート

  1. 1

    components.yaml マニフェストから最新リリースをインストールします

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

    少し待ってから kubectl top でメトリクスを確認します

    kubectl top pods

使う前に知っておきたいこと

  • 有効な aggregation layer や、クラスター CA によって署名された kubelet 証明書など、特定のクラスター設定が必要です。
  • オートスケーリング専用に設計されています。README では、監視用のメトリクスソースとして使用しないよう記載されています。
  • デフォルトのリソースリクエストは約 100 ノードまでを想定して調整されています。それより大きなクラスターでは、より多くのリソースが必要です。

収録されている特集

トピック

よくある質問

metrics-server とは?
Metrics API経由で提供され、Kubernetesのオートスケーリングに使われる、コンテナのCPU・メモリメトリクスをスケーラブルに収集する仕組み。 Metrics ServerはKubeletからリソースメトリクスを収集し、Metrics APIを介してKubernetes apiserverに公開します。Horizontal Pod AutoscalerとVertical Pod Autoscalerはこのデータを使ってスケーリングを判断し、kubectl topは同じAPIからポッドやノードの使用状況を表示します。
metrics-server は無料で使えますか?ライセンスは?
metrics-server は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
metrics-server は今もメンテナンスされていますか?
活発にメンテナンス中。metrics-server の最終コミットは 2026年10月16日 です。
metrics-server は何に使えますか?
CPUまたはメモリの使用率に基づいてDeploymentを水平スケーリングする。 コンテナのリソースリクエストに関する適切な値の提案を得る。 kubectl topを使ってオートスケーリングの挙動を調査する。 中規模のKubernetesクラスターで軽量なメトリクス収集基盤を運用する。
metrics-server のインストール方法は?
components.yaml マニフェストから最新リリースをインストールします: kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml 少し待ってから kubectl top でメトリクスを確認します: kubectl top pods
metrics-server はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/kubernetes-sigs/metrics-server

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト