ノードプールの追加と管理

このページでは、Google Kubernetes Engine(GKE)クラスタを実行するノードプールを追加して操作する方法を説明します。ノードプールの仕組みについては、ノードプールをご覧ください。

始める前に

作業を始める前に、次のことを確認してください。

次のいずれかの方法で gcloud のデフォルトの設定を指定します。

  • gcloud init。デフォルトの設定全般を確認する場合に使用します。
  • gcloud config。プロジェクト ID、ゾーン、リージョンを個別に設定する場合に使用します。

gcloud init の使用

  1. gcloud init を実行して、次の操作を行います。

    gcloud init

    リモート サーバーで SSH を使用している場合は、--console-only フラグを指定して、コマンドがブラウザを起動しないようにします。

    gcloud init --console-only
  2. 手順に従って gcloud を承認し、Google Cloud アカウントを使用します。
  3. 新しい構成を作成するか、既存の構成を選択します。
  4. Google Cloud プロジェクトを選択します。
  5. デフォルトの Compute Engine ゾーンを選択します。

gcloud config の使用

  • デフォルトのプロジェクト ID を設定します。
    gcloud config set project project-id
  • ゾーンクラスタを使用する場合は、デフォルトのコンピューティング ゾーンを設定します。
    gcloud config set compute/zone compute-zone
  • リージョン クラスタを使用する場合は、デフォルトのコンピューティング リージョンを設定します。
    gcloud config set compute/region compute-region
  • gcloud を最新バージョンに更新します。
    gcloud components update

ノードプールの追加

gcloud

ノードプールを作成するには、次のコマンドを実行します。

gcloud container node-pools create pool-name --cluster cluster-name

オプションの完全なリストについては、gcloud container node-pools create のドキュメントをご覧ください。

node-pools create リクエストが正しく処理されると、ノードプール情報が返されます。

Creating node pool example-pool...done.
Created [https://container.googleapis.com/v1/projects/kubernetes-engine-docs/zones/us-central1-f/clusters/example-cluster/nodePools/example-pool].
NAME          MACHINE_TYPE   DISK_SIZE_GB  NODE_VERSION
example-pool  n1-standard-1  100           1.2.4

ノードプールが作成されます。ノードプールが正常に作成されても、サーバーからステータスが報告されず、gcloud コマンドがタイムアウトになる場合があります。プロビジョニングが完了していないノードプールを含め、すべてのノードプールのステータスを確認するには、次のコマンドを使用します。

gcloud container node-pools list --cluster cluster-name

Console

既存のクラスタにノードプールを追加するには、次の手順を行います。

  1. Cloud Console で Google Kubernetes Engine のメニューに移動します。

    Google Kubernetes Engine のメニューに移動

  2. クラスタの編集ボタン(鉛筆の形をしたボタン)をクリックします。

  3. [ノードプールを追加] をクリックします。

  4. 必要に応じてノードプールを構成します。

  5. [完了] をクリックして、ノードプールの追加オーバーレイを閉じます。

  6. [保存] をクリックして、クラスタを変更します。

クラスタのノードプールを表示する

gcloud

クラスタのすべてのノードプールを一覧表示するには、次のように gcloud node-pools list コマンドを実行します。

gcloud container node-pools list --cluster cluster-name

特定のノードプールの詳細を表示するには、次のように gcloud node-pools describe コマンドを実行します。

gcloud container node-pools describe pool-name \
    --cluster cluster-name

Console

クラスタのノードプールを表示するには、次の手順を行います。

  1. Cloud Console で Google Kubernetes Engine のメニューに移動します。

    Google Kubernetes Engine のメニューに移動

  2. 表示するクラスタの名前をクリックします。

  3. [ノードプール] セクションで、目的のノードプールの横にある開示アイコンをクリックします。メニューが展開され、ノードプールの詳細が表示されます。

  4. [完了] をクリックして、ノードプールの詳細の表示を終了します。

ノードプールのサイズを変更する

gcloud

ノードプールのサイズを変更するには、gcloud container clusters resize コマンドを使用します。クラスタの名前、目的のノードプールの名前、および新しいノードの数を指定する必要があります。

gcloud container clusters resize cluster-name --node-pool pool-name \
    --num-nodes num-nodes

各ノードプールに対してこのコマンドを繰り返します。クラスタにデフォルトのノードプールのみが存在する場合は、--node-pool フラグを省略します。

詳細については、gcloud container clusters resize のドキュメントをご覧ください。

Console

クラスタのノードプールのサイズを変更するには、次の手順に従います。

  1. Cloud Console で Google Kubernetes Engine のメニューに移動します。

    Google Kubernetes Engine のメニューに移動

  2. クラスタの編集ボタン(鉛筆の形をしたボタン)をクリックします。

  3. [ノードプール] セクションで、[サイズ] フィールドの値を目的の値に変更します。必要に応じてノードプールごとに同じ操作を繰り返します。

  4. [保存] をクリックします。

ノードプールをアップグレードする

gcloud

すべてのノードをマスターと同じバージョンに更新するには、gcloud container clusters upgrade コマンドを実行します。

gcloud container clusters upgrade cluster-name

特定のノードプールを更新するには、--node-pool フラグを指定します。

gcloud container clusters upgrade cluster-name --node-pool pool-name

Console

ノードプールをアップグレードするには、次の手順を行います。

  1. Cloud Console で Google Kubernetes Engine のメニューに移動します。

    Google Kubernetes Engine のメニューに移動

  2. クラスタの編集ボタン(鉛筆の形をしたボタン)をクリックします。

  3. [ノードプール] セクションで、目的のノードプールの [ノードのバージョン] フィールドの横にある [変更] リンクをクリックします。

  4. 目的の Kubernetes バージョンを選択します。

  5. 警告を読み、[変更] をクリックして確定します。

  6. [保存] をクリックしてクラスタ変更画面を閉じます。

ノードプールを削除する

ノードプールを削除すると、ノードとそのノードへのルートが削除されます。それらのノードで実行されているポッドはすべて強制排除され、再スケジュールされます。ポッドに特定のノードセレクタが設定されており、クラスタ内の他のノードが条件を満たさない場合、そのポッドはスケジュールできない状態のままになることがあります。

gcloud

ノードプールを削除するには、gcloud node-pools delete コマンドを実行します。

gcloud container node-pools delete pool-name --cluster cluster-name

Console

ノードプールを削除するには、次の手順を行います。

  1. Cloud Console で Google Kubernetes Engine のメニューに移動します。

    Google Kubernetes Engine のメニューに移動

  2. クラスタの編集ボタン(鉛筆の形をしたボタン)をクリックします。

  3. [ノードプール] セクションで、削除するノードプールを展開します。

  4. ごみ箱のような削除アイコンをクリックします。

  5. [保存] をクリックします。

次のステップ