Nodeの使用可能リソース確認方法

目的

K8SNodeサーバーの情報を確認する

前提

  • K8Sがインストール済みであること
  • K8Sにmetrics-serverがインストール済みであること
  • kubectlコマンドが実行可能であること

確認方法

  1. kubectlコマンドでNode一覧を取得する。

    kubectl get node

  2. kubectlコマンドでNodeの詳細を取得する。

    kubectl describe node ip-128-16-100-15.ap-northeast-1.compute.internal

    ※出力結果は長いので割愛

  3. 今回は以下の項目について説明する。
    Capacity: サーバーのリソース
    Allocatable: podが使用可能なリソース
    Non-terminated Pods: 動作しているPod一覧
    Allocated resources: トータル使用リソース

Capacity、Allocatableについて

Capacity: サーバーの全てのリソース

Allocatable: K8SがPodに割り当て可能なリソース

内容

Capacity、Allocatable

cpu: サーバーのCPU

memory: サーバーのメモリ

pods: 最大Pods数

hugepages-1Gi: ※1

hugepages-2Mi: ※1

※1 これはよくわからなかった。参考は以下

huge pageリソースを指定することができます。
Huge PageはLinux固有の機能であり、Nodeのカーネルはデフォルトのページサイズよりもはるかに大きいメモリブロックを割り当てます。

huge pageを管理する

Non-terminated Podsについて

Non-terminated Pods: 動作しているPod一覧

内容

Namespace: K8SNamespace
Name: Pod名
CPU Requests: リクエストCPU
CPU Limits: リミットCPU
Memory Requests: リクエストメモリ
Memory Limits: リミットメモリ
AGE: Podの動作時間

Allocated resourcesについて

Allocated resources: トータル使用リソース

内容

Non-terminated Podsの合計値となる。

Smallitのサービス