Google Distributed Cloud には、クラスタを作成し、クラスタのライフサイクル オペレーション(更新、アップグレード、削除)を管理するためのツールが用意されています。
- コマンドライン ツール
gkectlは、オンプレミス データセンターの管理ワークステーションで実行されます。クラスタ ネットワーク、ロード バランシング、その他のクラスタ機能を記述した構成ファイルを作成します。このファイルをコマンドラインでgkectlに指定します。 - Google Cloud コンソール、Google Cloud CLI、またはTerraform。GKE On-Prem API にネットワーク接続できる任意のコンピュータから実行できます。これらの標準ツールは、 Google Cloud インフラストラクチャで実行される GKE On-Prem API を使用します。標準ツールは、総称して GKE On-Prem API On-Prem API クライアントと呼ばれます。GKE On-Prem API でクラスタのライフサイクルを管理するには、クラスタの作成時に指定した Google Cloud リージョンの中の、 Google Cloud に、クラスタの状態に関するメタデータを保存する必要があります。このメタデータにより、API はクラスタのライフサイクルを管理できますが、メタデータにワークロード固有のデータは含まれません。
クラスタの作成に使用するツールに関係なく、収集してツールに提供する情報(クラスタノード マシンの IP アドレスやロードバランサの VIP など)は同じです。
この選択により、ユースケースと環境に最適なツールを選択できます。例:
- 開発環境で初めてインストールする場合は、ユーザー インターフェースに補足のガイダンスとヘルプがあるため、 Google Cloud コンソールを使用することをおすすめします。
- 組織ですでに gcloud CLI または Terraform を使用して他の Google Cloud リソースを管理している場合は、Google Distributed Cloud にもこれらのツールを使用することをおすすめします。
- 組織で規制要件や制限がある場合、 Google Cloud への依存を制限し、管理ワークステーションで
gkectlを使用してクラスタを作成して、クラスタのライフサイクルを管理しなければならない場合があります。
gkectl を使用してクラスタを作成すると、デフォルトで GKE On-Prem API に登録されます。作成後にクラスタを登録して、GKE On-Prem API クライアントを使用できるようにすることもできます。
GKE On-Prem API クライアントに関する制限事項
gkectl ツールは、サポートされている機能のなかで最も完成度の高いものです。選択する場合は、GKE On-Prem API クライアントの機能を確認することをおすすめします。次の機能は、GKE On-Prem API クライアントではサポートされていません。
- Secret の管理とローテーション
- 証明書のローテーション
- 認証
- 使用状況測定
- アプリケーション レベルのロギングとモニタリング
- 高度なネットワーキング
- Windows ノードプール
次のリストは、GKE On-Prem API クライアントのその他の制限事項を示したものです。
gcloud CLI は、管理クラスタのライフサイクル オペレーションではサポートされていません。管理クラスタは、
gkectl、コンソール、gcloud CLI、または Terraform を使用して作成できます。gkectlコマンドライン ツールは、管理クラスタのアップグレード、更新、削除に使用できる唯一のツールです。非公開レジストリの使用をサポートしているのは、
gkectlと Terraform のみです。管理クラスタとそのユーザー クラスタのロードバランサの種類は同じである必要があります。唯一の例外は、管理クラスタが Seesaw を使用している場合、ユーザー クラスタが MetalLB を使用できることです。管理クラスタとユーザー クラスタで異なる種類のロードバランサを使用する場合は、
gkectlを使用してクラスタを作成する必要があります。Google Cloud コンソールを使用してユーザー クラスタを作成すると、すべての
vCenter設定が管理クラスタから継承されます。ユーザー クラスタに管理クラスタとは異なるvCenter設定が必要な場合は、gcloud CLI、Terraform、またはgkectlを使用してユーザー クラスタを作成します。
高度なクラスタの制限事項
クラスタを作成するときに、Google Distributed Cloud がデフォルトで高度なクラスタを作成するか、高度なクラスタ以外のクラスタを作成するかは、バージョンによって異なります。
- バージョン 1.32 以前: デフォルトで高度なクラスタ以外のクラスタが作成されます。
- バージョン 1.33 以降: デフォルトで高度なクラスタが作成されます。
デフォルトの動作を変更できるのは、Terraform と gkectl コマンドライン ツールだけです。デフォルトの動作を変更するには、次の操作を行います。
gkectl: クラスタ構成ファイルにenableAdvancedClusterブール値フィールドを含めます。たとえば、バージョン 1.32 の高度なクラスタを作成するには、クラスタ構成ファイルでenableAdvancedCluster: trueを指定します。Terraform: 構成ファイル(通常は
main.tf)にenable_advanced_clusterブール値フィールドを含めます。たとえば、バージョン 1.32 の高度なクラスタを作成するには、main.tfにenable_advanced_cluster = trueを追加します。
次の場合、gkectl コマンドライン ツールのみがサポートされます。
- 高度なクラスタ以外のクラスタを高度なクラスタにアップグレードする場合。
- クラスタを 1.32 から 1.33 にアップグレードする場合。
詳細については、クラスタを更新または高度なクラスタにアップグレードするをご覧ください。
次の表に示すように、GKE On-Prem API クライアントには、作成、アップグレード、更新、削除のオペレーションに関する制限事項があります。管理クラスタの削除を除くすべてのオペレーションで、gkectl コマンドライン ツールのみがサポートされています。管理クラスタの削除は特殊なケースです。 Google Cloud リソース、ロードバランサ リソース、VM、vSphere データディスクの削除が含まれます。詳細については、管理クラスタの削除をご覧ください。
次のプルダウン メニューを使用して、クライアントとクラスタタイプで表をフィルタリングします。
次の表に、選択したクライアントでサポートされているクラスタ オペレーションを示します。
| クライアント | クラスタタイプ | オペレーション | サポートされている / バージョン |
|---|---|---|---|
Terraform |
高度なユーザー クラスタ以外のユーザー クラスタ |
作成 |
1.32 以前 |
Terraform |
高度なユーザー クラスタ以外のユーザー クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
1.32 以前 |
Terraform |
高度なユーザー クラスタ以外のユーザー クラスタ |
高度なクラスタにアップグレードする |
いいえ |
Terraform |
高度なユーザー クラスタ以外のユーザー クラスタ |
構成を更新する |
はい |
Terraform |
高度なユーザー クラスタ以外のユーザー クラスタ |
削除 |
はい |
Terraform |
高度なユーザー クラスタ |
作成 |
1.33.200 以上 |
Terraform |
高度なユーザー クラスタ |
アップグレード |
1.33.200 以上 |
Terraform |
高度なユーザー クラスタ |
構成を更新する |
はい |
Terraform |
高度なユーザー クラスタ |
削除 |
はい |
Terraform |
高度な管理クラスタ以外の管理クラスタ |
作成 |
1.32 以前 |
Terraform |
高度な管理クラスタ以外の管理クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
いいえ |
Terraform |
高度な管理クラスタ以外の管理クラスタ |
高度なクラスタにアップグレードする |
いいえ |
Terraform |
高度な管理クラスタ以外の管理クラスタ |
構成を更新する |
はい |
Terraform |
高度な管理クラスタ以外の管理クラスタ |
削除 |
いいえ |
Terraform |
高度な管理クラスタ |
作成 |
1.33.200 以上 |
Terraform |
高度な管理クラスタ |
アップグレード |
いいえ |
Terraform |
高度な管理クラスタ |
構成を更新する |
はい |
Terraform |
高度な管理クラスタ |
削除 |
いいえ |
コンソール |
高度なユーザー クラスタ以外のユーザー クラスタ |
作成 |
1.32 以前 |
コンソール |
高度なユーザー クラスタ以外のユーザー クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
1.32 以前 |
コンソール |
高度なユーザー クラスタ以外のユーザー クラスタ |
高度なクラスタにアップグレードする |
いいえ |
コンソール |
高度なユーザー クラスタ以外のユーザー クラスタ |
構成を更新する |
はい |
コンソール |
高度なユーザー クラスタ以外のユーザー クラスタ |
削除 |
はい |
コンソール |
高度なユーザー クラスタ |
作成 |
1.33.200 以上 |
コンソール |
高度なユーザー クラスタ |
アップグレード |
1.33.200 以上 |
コンソール |
高度なユーザー クラスタ |
構成を更新する |
はい |
コンソール |
高度なユーザー クラスタ |
削除 |
はい |
コンソール |
高度な管理クラスタ以外の管理クラスタ |
作成 |
1.32 以前 |
コンソール |
高度な管理クラスタ以外の管理クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
いいえ |
コンソール |
高度な管理クラスタ以外の管理クラスタ |
高度なクラスタにアップグレードする |
いいえ |
コンソール |
高度な管理クラスタ以外の管理クラスタ |
構成を更新する |
いいえ |
コンソール |
高度な管理クラスタ以外の管理クラスタ |
削除 |
いいえ |
コンソール |
高度な管理クラスタ |
作成 |
1.33.200 以上 |
コンソール |
高度な管理クラスタ |
アップグレード |
いいえ |
コンソール |
高度な管理クラスタ |
構成を更新する |
いいえ |
コンソール |
高度な管理クラスタ |
削除 |
いいえ |
gcloud CLI |
高度なユーザー クラスタ以外のユーザー クラスタ |
作成 |
1.32 以前 |
gcloud CLI |
高度なユーザー クラスタ以外のユーザー クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
1.32 以前 |
gcloud CLI |
高度なユーザー クラスタ以外のユーザー クラスタ |
高度なクラスタにアップグレードする |
いいえ |
gcloud CLI |
高度なユーザー クラスタ以外のユーザー クラスタ |
構成を更新する |
はい |
gcloud CLI |
高度なユーザー クラスタ以外のユーザー クラスタ |
削除 |
はい |
gcloud CLI |
高度なユーザー クラスタ |
作成 |
1.33.200 以上 |
gcloud CLI |
高度なユーザー クラスタ |
アップグレード |
1.33.200 以上 |
gcloud CLI |
高度なユーザー クラスタ |
構成を更新する |
はい |
gcloud CLI |
高度なユーザー クラスタ |
削除 |
はい |
gcloud CLI |
高度な管理クラスタ以外の管理クラスタ |
作成 |
いいえ |
gcloud CLI |
高度な管理クラスタ以外の管理クラスタ |
アップグレードして高度なクラスタ以外のクラスタの状態を維持する |
1.32 以前 |
gcloud CLI |
高度な管理クラスタ以外の管理クラスタ |
高度なクラスタにアップグレードする |
いいえ |
gcloud CLI |
高度な管理クラスタ以外の管理クラスタ |
構成を更新する |
いいえ |
gcloud CLI |
高度な管理クラスタ以外の管理クラスタ |
削除 |
いいえ |
gcloud CLI |
高度な管理クラスタ |
作成 |
いいえ |
gcloud CLI |
高度な管理クラスタ |
アップグレード |
1.33.200 以降 |
gcloud CLI |
高度な管理クラスタ |
構成を更新する |
いいえ |
gcloud CLI |
高度な管理クラスタ |
削除 |
いいえ |
GKE On-Prem API クライアントの進化に伴い、これらの制限事項を随時確認してください。