クラスタのタイプ

このページでは、Google Kubernetes Engine(GKE)で作成可能な主要なクラスタタイプについて説明します。ここで説明している選択肢を、クラスタの作成後に変更することはできません。これらの選択肢は、クラスタの可用性バージョン安定性、クラスタが VPC ネイティブとルートベースのどちらであるか、およびネットワーク分離に影響を与えます。

クラスタタイプの選択に役立つ情報については、リージョンまたはプレーンのコントロール プレーンの選択をご覧ください。

クラスタの可用性の選択肢

GKE では、ワークロードの可用性要件と予算に合わせてクラスタを作成できます。

使用可能なクラスタのタイプには、ゾーン(シングルゾーンまたはマルチゾーン)とリージョンがあります。

シングルゾーン クラスタ

シングルゾーン クラスタには、1 つのゾーンで動作する 1 つのコントロール プレーン(マスター)が含まれています。このコントロール プレーンは、同じゾーンで動作するノード上のワークロードを管理します。

シングルゾーン クラスタの作成については、こちらをご覧ください。

マルチゾーン クラスタ

マルチゾーン クラスタには、1 つのゾーンで動作するコントロール プレーンの 1 つのレプリカと、複数のゾーンで動作する複数のノードが含まれています。クラスタのアップグレード中や、コントロール プレーンが動作するゾーンの停止中にも、ワークロードは動作を継続します。ただし、コントロール プレーンが使用可能になるまでは、クラスタや、その中にあるノードとワークロードを設定できません。マルチゾーン クラスタでは、可用性とコストのバランスをとりながら一貫したワークロードが実現されます。ノードとノードプールの数が頻繁に変化するような環境で、可用性を維持する必要がある場合は、リージョン クラスタの使用を検討してください。

マルチゾーン クラスタの作成については、こちらをご覧ください。

リージョン クラスタ

リージョン クラスタには、特定の 1 リージョン内の複数ゾーンで動作する複数のレプリカが含まれています。ノードは、コントロール プレーンのレプリカが動作する各ゾーンでも動作します。リージョン クラスタはコントロール プレーンとノードを複製するので、同様のシングルゾーン クラスタやマルチゾーン クラスタより多くの Compute Engine リソースを消費します。

リージョン クラスタの作成については、こちらをご覧ください。

クラスタ バージョンの選択肢

クラスタを作成する際には、クラスタの特定の Kubernetes バージョンを選択することも、安定性と機能性の全体的なバランスを踏まえて別の選択肢を考慮することもできます。

クラスタのバージョンをどのように管理するかに関係なく、クラスタとそのノードの自動アップグレードを有効にすることをおすすめします。

リリース チャンネル

特定のクラスタに必要な安定性レベルがわかっている場合は、クラスタをリリース チャネルに登録できます。クラスタとそのノードは、そのリリース チャンネルでアップデートが利用可能になると自動的にアップグレードされます。Rapid チャンネルは毎月複数のアップデートを受け取るのに対して、Stable チャンネルは 1 年に数回のアップデートを受信するだけです。

リリース チャンネルへのクラスタの登録については、こちらをご覧ください。

デフォルトのバージョン

リリース チャネルを使用せず、クラスタ バージョンも選択しない場合には、現在のデフォルト バージョンが使用されます。デフォルト バージョンは、安定性と実際のパフォーマンスに基づいて選択され、定期的に変更されます。デフォルト バージョンの変更はリリースノートで通知されます。

特定のバージョン

特定のワークロードに対応する Kubernetes のバージョンを使用する必要があることがわかっている場合は、クラスタの作成時にそのバージョンを指定できます。

使用する特定のパッチ バージョンを制御する必要がない場合は、クラスタのバージョンを直接管理するのではなく、そのクラスタをリリース チャンネルに登録することを検討してください。

特定バージョンのクラスタの作成については、こちらをご覧ください。

アルファ クラスタ

アルファ クラスタでは、すべての Kubernetes アルファ API(機能ゲートともいう)が有効になっています。アルファ クラスタは、Kubernetes 機能の早期テストや検証に使用できます。アルファ クラスタは本番環境ワークロードではサポートされず、アップグレードも行われません。また、30 日以内に期限が切れます。

アルファ クラスタの作成については、こちらをご覧ください。

VPC ネイティブ クラスタとルートベース クラスタ

Google Kubernetes Engine では、あるポッドから別のポッドにトラフィックをルーティングする方法によってクラスタを区別できます。エイリアス IP を使用するクラスタは、VPC ネイティブ クラスタと呼ばれています。Google Cloud のルートを使用するクラスタは、ルートベース クラスタと呼ばれています。

新しいクラスタに推奨されるネットワーク モードは VPC ネイティブです。

デフォルトのクラスタ ネットワーク モードは、クラスタの作成方法によって異なります。詳しくは、こちらのグラフをご覧ください。

ネットワーク分離の選択肢

デフォルトでは、パブリック ネットワークからクラスタのワークロードへのアクセスを設定できます。ルートは自動的には作成されません。プライベート クラスタがポッドとノードに内部(RFC 1918)IP アドレスを割り当て、ワークロードがパブリック ネットワークから完全に分離されます。

プライベート クラスタの作成については、こちらをご覧ください。

ワークロード サプライ チェーンのセキュリティ

Binary Authorization は、GKE ワークロードにソフトウェア サプライ チェーンのセキュリティを提供します。Binary Authorization は、Container Registry やその他のコンテナ イメージ レジストリから GKE にデプロイされるイメージに対して機能します。Binary Authorization を使用すると、アプリケーションを本番環境にデプロイする前に、ソフトウェアの品質と整合性を保護するための内部プロセスを正常かつ確実に完了できます。

詳細については、Binary Authorization ドキュメントBinary Authorization を有効にしたクラスタの作成をご覧ください。