ノードプールの作成

このページでは、ノードプールの作成方法について説明します。

始める前に

このページは、クラスタ オートスケーラーに精通していることを前提としています。詳細については、クラスタ オートスケーラーをご覧ください。

ネットワーク セキュリティ グループのカスタマイズ

ノードプールのネットワーク セキュリティ グループ(NSG)をカスタマイズするには、ネットワーク セキュリティ グループをご覧ください。

ノードプールの作成

ノードプールの作成にあたり、次のものが必要です。

  • az コマンドライン ツールを使用して Azure サブネット ID を取得する権限。
  • クラスタの SSH 公開鍵へのアクセス権。

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

  1. Azure VNet サブネット ID と SSH 公開鍵を環境変数に保存します。

    SUBNET_ID=$(az network vnet subnet show \
      --resource-group=VNET_RESOURCE_GROUP_NAME --vnet-name=VNET_NAME \
      --name default --query "id" -otsv)
    SSH_PUBLIC_KEY=$(cat KEY_PATH.pub)
    

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

    • VNET_RESOURCE_GROUP_NAME: VNet を保持するリソース グループ名
    • VNET_NAME: VNet の名前
    • KEY_PATH: 鍵ペアのパス
  2. Google Cloud CLI を使用してノードプールを作成します。

    gcloud container azure node-pools create NODE_POOL_NAME \
        --cluster CLUSTER_NAME \
        --location GOOGLE_CLOUD_LOCATION \
        --node-version 1.28.7-gke.1700 \
        --vm-size VM_SIZE \
        --max-pods-per-node 110 \
        --min-nodes MIN_NODES \
        --max-nodes MAX_NODES \
        --ssh-public-key "${SSH_PUBLIC_KEY}" \
        --subnet-id "${SUBNET_ID}"
    

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

  3. ノードプールのステータスを確認します。

    gcloud container azure node-pools describe NODE_POOL_NAME \
        --cluster CLUSTER_NAME \
        --location GOOGLE_CLOUD_LOCATION
    

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

    • NODE_POOL_NAME: ノードプールの一意の名前(node-pool-1 など)
    • CLUSTER_NAME: GKE on Azure クラスタの名前
    • GOOGLE_CLOUD_LOCATION: クラスタを管理する Google Cloud のロケーション

    出力には、ノードプールのステータス(PROVISIONINGRUNNING かどうか、など)が含まれます。

特定のゾーンでノードプールを作成します

特定の Azure アベイラビリティ ゾーンにノードプールを作成するには、ノードプールの作成時に --azure-availability-zone フラグを Google Cloud CLI に渡します。

Google Cloud CLI を使用して特定の Azure アベイラビリティ ゾーンにノードプールを作成するには、次のコマンドを実行します。

gcloud container azure node-pools create NODE_POOL_NAME \
    --cluster CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION \
    --node-version 1.28.7-gke.1700 \
    --vm-size VM_SIZE \
    --max-pods-per-node 110 \
    --min-nodes MIN_NODES \
    --max-nodes MAX_NODES \
    --azure-availability-zone AZURE_ZONE \
    --ssh-public-key "${SSH_PUBLIC_KEY}" \
    --subnet-id "${SUBNET_ID}"

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

次のステップ