Autopilot クラスタの作成


このページでは、Autopilot モードで Google Kubernetes Engine(GKE)クラスタを作成する方法について説明します。Autopilot は、お客様がサービスとアプリケーションに集中できるようにする GKE の運用モードであり、ノードとインフラストラクチャの管理は Google が行います。ワークロードをデプロイすると、GKE によりリソースとハードウェアのプロビジョニング、構成、管理が行われます(スケーリング時を含む)。

始める前に

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

  • Google Kubernetes Engine API を有効にする。
  • Google Kubernetes Engine API の有効化
  • このタスクに Google Cloud CLI を使用する場合は、gcloud CLI をインストールして初期化する。すでに gcloud CLI をインストールしている場合は、gcloud components update を実行して最新のバージョンを取得する。
  • クラスタを作成するための適切な権限があることを確認します。少なくとも、Kubernetes Engine Cluster 管理者である必要があります。
  • 新しいクラスタをフリートに登録する場合は、必要な API と権限があることを確認してください。

Autopilot クラスタの作成

Autopilot クラスタは、Google Cloud CLI、Google Cloud コンソール、または Terraform を使用して作成できます。

gcloud

次のコマンドを実行します。

gcloud container clusters create-auto CLUSTER_NAME \
    --location=LOCATION \
    --project=PROJECT_ID

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

  • CLUSTER_NAME: 新しい Autopilot クラスタの名前。
  • LOCATION: クラスタのリージョンus-central1 など)。
  • PROJECT_ID: プロジェクト ID。

必要に応じて --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com フラグを使用して、ノードで Compute Engine のデフォルト サービス アカウントの代わりに使用する別の IAM サービス アカウントを指定できます。ノードに必要以上の権限が付与されないように、最小限の権限を持つサービス アカウントを作成して使用することを強くおすすめします。

指定できるその他のオプションのリストについては、gcloud container clusters create-auto リファレンス ドキュメントをご覧ください。

コンソール

次の作業を行います。

  1. Google Cloud コンソールで Google Kubernetes Engine のページに移動します。

    Google Kubernetes Engine に移動

  2. [ 作成] をクリックします。

  3. [クラスタの基本] セクションで、次の操作を行います。

    1. クラスタの名前を [名前] に入力します。
    2. クラスタのリージョンを選択します。
  4. 省略可(GKE Enterprise で利用可能): 新しいクラスタをフリートに登録する場合は、[フリート登録] セクションに移動し、Google Cloud コンソールで新しいクラスタを作成して登録するの手順に沿ってクラスタの登録を完了します。

  5. [ネットワーキング] セクションで次のいずれかを選択します。

    • 一般公開されているエンドポイントを含むクラスタを作成するには、[一般公開クラスタ] を選択します。
    • 組織に特定のネットワーク分離要件がある場合は、[限定公開クラスタ] を選択します。構成手順については、限定公開クラスタの作成をご覧ください。
  6. 必要に応じて、メンテナンスの時間枠や高度なセキュリティ機能などの設定を構成します。

  7. [作成] をクリックします。

Terraform

Terraform を使用して Autopilot クラスタを作成するには、次の例を参照してください。

resource "google_container_cluster" "default" {
  name     = "gke-autopilot-basic"
  location = "us-central1"

  enable_autopilot = true

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Terraform を使用する詳細については、GKE での Terraform のサポートをご覧ください。

新しい Autopilot クラスタのバージョンとリリース チャンネルを設定する

デフォルトでは、GKE は新しい Autopilot クラスタを Regular リリース チャンネルに登録します。このチャンネルにはデフォルトの GKE バージョンが含まれています。Autopilot クラスタを作成するときにリリース チャンネルを変更するには、gcloud CLI、Google Cloud コンソール、または Terraform を使用します。gcloud CLI を使用してクラスタを作成するときには、特定の GKE バージョンも設定できます。

gcloud

Autopilot クラスタの作成時にリリース チャンネルとクラスタ バージョンを設定するには、次のコマンドを実行します。クラスタ バージョンの設定が有用であるのは、特定のバージョン要件がある場合に限られます。ほとんどの場合はリリース チャンネルのみを設定することをおすすめします。

gcloud container clusters create-auto CLUSTER_NAME \
    --location=LOCATION \
    --release-channel=RELEASE_CHANNEL \
    --cluster-version=VERSION

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

これらのフラグは省略可能です。特定の GKE バージョンを設定すると、クラスタのリリース チャンネルで新しいバージョンがデフォルト バージョンになるまで、そのバージョンが適用されます。その後、GKE はクラスタを新しいデフォルト バージョンに自動的にアップグレードします。

コンソール

Autopilot クラスタの作成時にリリース チャンネルを設定する手順は次のとおりです。

  1. Google Cloud コンソールで Google Kubernetes Engine のページに移動します。

    Google Kubernetes Engine に移動

  2. [ 作成] をクリックします。

  3. [Autopilot] で [構成] をクリックします。

  4. [クラスタの基本] セクションで、次の操作を行います。

    1. 名前を指定します。
    2. リージョンを選択します。
  5. [詳細設定] セクションでリリース チャンネルを選択します。

  6. [作成] をクリックします。

Terraform

Terraform を使用して Autopilot クラスタを作成するときにリリース チャンネルとクラスタ バージョンを設定するには、次の例を参照してください。

resource "google_container_cluster" "default" {
  name     = "gke-autopilot-release-channel"
  location = "us-central1"

  enable_autopilot = true

  release_channel {
    channel = "REGULAR"
  }

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Terraform を使用する詳細については、GKE での Terraform のサポートをご覧ください。

既存のクラスタのリリース チャンネルと GKE バージョンも変更できます。手順については、コントロール プレーンの手動アップグレード新しいリリース チャンネルの選択をご確認ください。

クラスタに接続する

gcloud

gcloud container clusters get-credentials CLUSTER_NAME \
    --location=LOCATION \
    --project=PROJECT_ID

このコマンドにより、作成したクラスタを使用するように kubectl が構成されます。

コンソール

  1. クラスタリストで、接続先のクラスタの横にある [ アクション] をクリックし、[接続] をクリックします。

  2. プロンプトが表示されたら、[Cloud Shell で実行] をクリックします。生成されたコマンドは、次のように Cloud Shell にコピーされます。

    gcloud container clusters get-credentials autopilot-cluster --location=us-central1 --project=autopilot-test
    
  3. Enter キーを押してコマンドを実行します。

クラスタモードを確認する

クラスタが Autopilot クラスタであることを確認するには、gcloud CLI または Google Cloud コンソールを使用します。

gcloud

クラスタが Autopilot モードで作成されていることを確認するには、次のコマンドを実行します。

gcloud container clusters describe CLUSTER_NAME \
    --location=LOCATION

出力には次のものが含まれます。

autopilot:
  enabled: true

コンソール

クラスタが Autopilot モードで作成されていることを確認するには、次のようにします。

  1. クラスタのリストで、クラスタの名前をクリックします。
  2. [自動化] セクションで、[ノードの自動プロビジョニング(Autopilot モード)] フィールドが [有効] に設定されているかどうかを確認します。

次のステップ