単一テナントノード グループを作成する

このドキュメントでは、単一テナントノード グループを作成および削除する方法について説明します。単一テナントノード テンプレートをまだ作成していない場合は、ノードグループを作成する前に作成する必要があります。

ノードグループは、ベースとなるノード テンプレートからプロパティを継承するゾーン リソースです。ノードグループを作成するときは、ノード数やメンテナンス設定などの構成を指定する必要があります。

単一テナントノード グループを作成する

単一テナントノード グループを作成するには、次のいずれかの方法を使用します。

コンソール

  1. Google Cloud コンソールで、[単一テナントノード] ページに移動します。

    [単一テナントノード] ページに移動

  2. [ノードグループを作成] をクリックしてノードグループの作成を開始します。

  3. ノードグループの名前を指定します。

  4. ノードグループのリージョンを指定して、そのリージョンで使用可能なノード テンプレートを表示します。

  5. ノードグループを作成するリージョン内の [ゾーン] を指定します。

  6. ノード テンプレートを指定してノードグループを作成するか、[ノード テンプレートを作成] をクリックして新しい単一テナントノード テンプレートを作成します。選択したノード テンプレートがノードグループに適用されます。

  7. ノードグループのオートスケーラーの [自動スケーリング モード] には、次のいずれかを選択します。

    • オフ: ノードグループのサイズを手動で管理します。

    • オン: ノードグループに対するノードの追加または削除を自動的に行います。

    • スケールアウトのみ: 追加の容量が必要な場合に、ノードグループにノードを追加します。

  8. ノードグループのノード数を指定します。ノードグループのオートスケーラーを有効にする場合は、ノードグループのサイズの範囲を指定します。この値は後で手動で変更できます。

  9. [メンテナンス設定の構成] セクションで、単一テナントノード グループのメンテナンス ポリシーを次のいずれかの値に設定します。メンテナンス ポリシーを使用すると、ホスト メンテナンス イベント中のノードグループ上の VM の動作を構成できます。詳細については、メンテナンス ポリシーをご覧ください。

    • デフォルト
    • 再起動
    • ノードグループ内で移行
  10. 単一テナントノード グループのメンテナンスは、次のように通常のメンテナンスの時間枠と高度なメンテナンス管理のいずれかを選択できます。

    • メンテナンスの時間枠: 単一テナントノード グループ内のノードに対して計画的なメンテナンス イベントを発生させる期間を選択します。

    • 単一テナンシーに対して高度なメンテナンス管理を有効にする: 単一テナンシーに対する高度なメンテナンス管理により、単一テナントノード グループの計画メンテナンス イベントを制御し、メンテナンス関連の中断を最小限に抑えることができます。高度なメンテナンス管理を有効にするには、[単一テナンシーに対して高度なメンテナンス管理を有効にする] をクリックして、オンの位置に切り替えます。ノードのメンテナンスにこのオプションを使用すると、[メンテナンスの時間枠] フィールドは無効になり、メンテナンスは高度なメンテナンス管理での構成に従って行われます。

    高度なメンテナンス管理は、デフォルトのメンテナンス ポリシーのみをサポートします。

  11. 共有設定の構成で次のいずれかを指定して、共有設定を構成します。

    • ノードグループを組織内のすべてのプロジェクトと共有するには、[このノードグループを組織内のすべてのプロジェクトと共有する] を選択します。
    • ノードグループを組織内の特定のプロジェクトと共有するには、[このノードグループを組織内の選択したプロジェクトと共有する] を選択します。

    ノードグループを共有しない場合は、[このノードグループを他のプロジェクトと共有しない] を選択します。ノードグループの共有の詳細については、単一テナントノード グループを共有するをご覧ください。

  12. [作成] をクリックして、ノードグループの作成を完了します。

gcloud

gcloud compute sole-tenancy node-groups create コマンドを実行して、以前の手順で作成したノード テンプレートに基づいてノードグループを作成します。

gcloud compute sole-tenancy node-groups create GROUP_NAME \
  --node-template=TEMPLATE_NAME \
  --target-size=TARGET_SIZE \
  [--zone=ZONE \]
  [--maintenance-policy=MAINTENANCE_POLICY \]
  [--maintenance-window-start-time=START_TIME \]
  [--autoscaler-mode=AUTOSCALER_MODE \
  --min-nodes=MIN_NODES \
  --max-nodes=MAX_NODES]

次のように置き換えます。

  • GROUP_NAME: 新しいノードグループの名前。
  • TEMPLATE_NAME: このグループの作成に使用するノード テンプレートの名前。
  • TARGET_SIZE: グループ内に作成するノードの数。
  • ZONE: ノードグループを作成するゾーン。これは、ノードグループのベースとするノード テンプレートと同じリージョンに存在している必要があります。
  • MAINTENANCE_POLICY: ノードグループに適用するメンテナンス ポリシー。詳細については、メンテナンス ポリシーをご覧ください。次のいずれかの値を指定する必要があります。

    • default
    • restart-in-place
    • migrate-within-node-group

    また、--maintenance-interval フラグを使用して、単一テナントノード グループに高度なメンテナンス管理を有効にすることもできます。詳細については、単一テナントノードで高度なメンテナンス管理を有効にするをご覧ください。

  • START_TIME: このノードグループに含まれる VM のメンテナンスの時間枠の開始時刻(GMT)。00:0004:0008:0012:0016:0020:00 のいずれかに設定します。設定しないと、ノードグループにメンテナンスの時間枠が設定されません。

  • AUTOSCALER_MODE: ノードグループに適用するオートスケーラー ポリシー。次のいずれかを指定する必要があります。

    • off: ノードグループのサイズを手動で管理します。
    • on: ノードグループにノードを自動的に追加する、またはノードグループからノードを自動的に削除します。
    • only-scale-out: 追加の容量が必要な場合にノードをノードグループに追加します。
  • MIN_NODES: ノードグループの最小サイズ。デフォルト値は 0 で、MAX_NODES 以下の整数値にする必要があります。

  • MAX_NODES: ノードグループの最大サイズ。指定する値は 100 以下で、MIN_NODES 以上でなければなりません。AUTOSCALER_MODEoff に設定されていない場合は、この値を指定する必要があります。

REST

以前の手順で作成したノード テンプレートに基づいてノードグループを作成するには、nodeGroups.insert メソッドを使用します。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups?initialNodeCount=TARGET_SIZE
{
  "nodeTemplate": "regions/REGION/nodeTemplates/TEMPLATE_NAME",
  "name": "GROUP_NAME",
  "maintenancePolicy": MAINTENANCE_POLICY,
  "maintenanceWindow": {
      "startTime": "START_TIME"
  },
  "autoscalingPolicy": {
      "mode": AUTOSCALER_MODE,
      "minNodes": MIN_NODES,
      "maxNodes": MAX_NODES
  },
}

次のように置き換えます。

  • PROJECT_ID: プロジェクト ID。

  • ZONE: ノードグループを作成するゾーン。これは、ノードグループのベースとなるノード テンプレートと同じリージョンに存在している必要があります。

  • TARGET_SIZE: グループ内に作成するノードの数。

  • REGION: ノードグループを作成するリージョン。使用するノード テンプレートは、選択したリージョン内に存在している必要があります。

  • TEMPLATE_NAME: このグループの作成に使用するノード テンプレートの名前。

  • GROUP_NAME: 新しいノードグループの名前。

  • MAINTENANCE_POLICY: ノードグループに適用するメンテナンス ポリシー。次のいずれかの値を指定する必要があります。

    • DEFAULT
    • RESTART_IN_PLACE
    • MIGRATE_WITHIN_NODE_GROUP

    また、maintenanceInterval フィールドを使用して、単一テナントノード グループに高度なメンテナンス管理を有効にすることもできます。詳細については、単一テナントノードで高度なメンテナンス管理を有効にするをご覧ください。

  • START_TIME: このノードグループに含まれる VM のメンテナンスの時間枠の開始時刻(GMT)。00:0004:0008:0012:0016:0020:00 のいずれかに設定します。設定しないと、ノードグループにメンテナンスの時間枠が設定されません。

  • AUTOSCALER_MODE: ノードグループに適用するオートスケーラー ポリシー。次のいずれかの値を指定する必要があります。

    • OFF: ノードグループのサイズを手動で管理します。
    • ON: ノードグループにノードを自動的に追加する、またはノードグループからノードを自動的に削除します。
    • ONLY_SCALE_OUT: 追加の容量が必要な場合にノードをノードグループに追加します。
  • MIN_NODES: ノードグループの最小サイズ。デフォルトは 0 です。MAX_NODES 以下の整数値を指定する必要があります。

  • MAX_NODES: ノードグループの最大サイズ。指定する値は 100 以下で、MIN_NODES 以上でなければなりません。AUTOSCALER_MODEOFF に設定されていない場合は、この値を指定する必要があります。

ノードグループの削除

単一テナントノード グループを削除する必要がある場合は、まずノードグループからすべての VM を削除します。

Console

  1. [単一テナントノード] ページに移動します。

    [単一テナントノード] ページに移動

  2. 削除するノードグループの [名前] をクリックします。

  3. ノードグループ内のノードごとに、ノードの名前をクリックして、ノードの詳細ページで個々の VM インスタンスを削除するか、個々の VM を削除する標準的な手順を行います。マネージド インスタンス グループ内の VM を削除するには、マネージド インスタンス グループを削除します。

  4. ノードグループのすべてのノードで実行されているすべての VM インスタンスを削除したら、[単一テナントノード] ページに戻ります。

    [単一テナントノード] ページに移動

  5. [ノードグループ] をクリックします。

  6. 削除するノードグループの名前を選択します。

  7. [削除] をクリックします。

gcloud

  1. gcloud compute sole-tenancy node-groups list-nodes コマンドを使用して、ノードグループのノードで実行中の VM インスタンスを一覧表示します。

    gcloud compute sole-tenancy node-groups list-nodes GROUP_NAME \
      --zone=ZONE

    次のように置き換えます。

    • GROUP_NAME: ノードグループの名前
    • ZONE: ノードグループのゾーン
  2. ノードグループで実行されている VM がある場合は、個別の VM を削除する手順またはマネージド インスタンス グループを削除する手順を行います。

  3. ノードグループのすべてのノードで実行されているすべての VM を削除したら、gcloud compute sole-tenancy node-groups delete コマンドを使用してノードグループを削除します。

    gcloud compute sole-tenancy node-groups delete GROUP_NAME \
        --zone=ZONE

    次のように置き換えます。

    • GROUP_NAME: ノードグループの名前
    • ZONE: ノードグループのゾーン

REST

  1. nodeGroups.listNodes メソッドを使用して、ノードグループ内のノードで実行中の VM インスタンスを一覧表示します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/GROUP_NAME/listNodes

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: ノードグループのゾーン
    • GROUP_NAME: VM を一覧表示するグループ
  2. ノードグループで実行されている VM がある場合は、個別の VM を削除する手順またはマネージド インスタンス グループを削除する手順を行います。

  3. ノードグループのすべてのノードで実行されるすべての VM を削除したら、nodeGroups.delete メソッドを使用してノードグループを削除します。

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/GROUP_NAME
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID
    • ZONE: ノードグループのゾーン
    • GROUP_NAME: 削除するノードグループの名前

次のステップ