CNCF 準拠の接続クラスタの前提条件

GKE 接続クラスタとして動作させるには、クラスタに次の特性が必要です。

一般的なクラスタ要件

  • ローカルマシンに kubectl コマンドライン ツールがインストールされ、クラスタにアクセスするように構成されていることを確認します。これには、kubeconfig ファイルに正しいユーザー認証情報を設定することも含まれます。
  • クラスタへのネットワーク接続があることを確認します。
  • クラスタの Kubernetes バージョンが 1.25 以降であることを確認します。Kubernetes major.minor バージョンは、選択したプラットフォーム バージョンと一致する必要があります。
  • 選択したプラットフォーム バージョンは、少なくとも次のものである必要があります。

    1.25.0-gke.8
    1.26.0-gke.6
    1.27.0-gke.3
    

    次のものを使用して、サポートされているすべてのバージョンを一覧表示することもできます。

    gcloud container attached get-server-config  \
        --location=GOOGLE_CLOUD_REGION
    

    各プラットフォーム バージョンのリリースノートは、サポートされているバージョンのページで確認できます。

ネットワーキングの要件

接続クラスタはサポートしている Google Cloud サービスに依存しているため、クラスタのアウトバウンド ファイアウォール ルールを変更して、次のドメインへのアクセスを許可する必要があります。これは、GKE 接続クラスタをインストールして実行するためにクラスタに対して行う必要のある唯一の変更です。

住所 目的
.gcr.io Artifact Registry からイメージを pull します。
gkeconnect.googleapis.com Google Cloud からのリクエストの受信に使用するチャネルを確立し、レスポンスを発行します。
gkemulticloud.googleapis.com Google やサードパーティの認証情報を、 Google Cloud リソースへの有効期間が短いアクセス トークンと交換できます。クラスタが Google Cloud リージョンを使用してフリートに登録された場合は、許可リストに REGION-gkemulticloud.googleapis.com を登録する必要があります(例: us-central1-gkemulticloud.googleapis.com)。
oauth2.googleapis.com OAuth トークン交換によってアカウントへのアクセスを認証します。
securetoken.googleapis.com Workload Identity 承認の更新トークンを取得します。
storage.googleapis.com Artifact Registry オブジェクトなどのオブジェクト ストレージとバケットを管理します。
sts.googleapis.com Google やサードパーティの認証情報を、 Google Cloud リソースへの有効期間が短いアクセス トークンと交換できます。
www.googleapis.com 受信した Google Cloud サービス リクエストからサービス トークンを認証します。

ロギングとモニタリング

ロギングとモニタリングの機能を使用するには、クラスタが次の URL にアクセスできる必要もあります。

logging.googleapis.com
monitoring.googleapis.com
opsconfigmonitoring.googleapis.com
kubernetesmetadata.googleapis.com

Google Cloud 要件

クラスタを Google Cloud 管理サービスに接続する前に、Google Cloud CLI コマンドを含む gcloud CLI をインストールし、 Google Cloud アカウントに対するアクセス権を Google Cloud 管理サービスに付与して、接続クラスタのリソースを管理できるようにする必要があります。

  1. 次のコマンドで gcloud CLI のインストールを確認します。

    gcloud version
    
  2. gcloud CLI がインストールされていない場合、またはバージョンが 412.0.0 より前の場合は、gcloud CLI のインストール手順に沿ってバージョン 412.0.0 以降をインストールします。

  3. kubectl 追加コンポーネントをインストールします。

  4. まだ作成していない場合は、 Google Cloud プロジェクトを作成します。 Google Cloud プロジェクト ID とプロジェクト番号が生成されます。

  5. 次のコマンドを使用して、アクティブな Google Cloud プロジェクトを設定し、アカウントを認証します。

    export PROJECT_ID=<your project id>
    gcloud auth login
    gcloud config set project $PROJECT_ID
    gcloud auth application-default login
    
  6. 次のコマンドを使用して、GKE 接続クラスタ API と必要なサービスを有効にします。

    gcloud services enable gkemulticloud.googleapis.com
    gcloud services enable gkeconnect.googleapis.com
    gcloud services enable connectgateway.googleapis.com
    gcloud services enable cloudresourcemanager.googleapis.com
    gcloud services enable anthos.googleapis.com
    gcloud services enable logging.googleapis.com
    gcloud services enable monitoring.googleapis.com
    gcloud services enable opsconfigmonitoring.googleapis.com
    gcloud services enable kubernetesmetadata.googleapis.com