このドキュメントでは、グローバル リソースとゾーンリソースの違いと、マルチゾーン ユニバースでの動作について説明します。Google Distributed Cloud(GDC)エアギャップは、リソースのデプロイ領域が異なるため、ワークロードとサービスの高可用性戦略を実装できます。高可用性アプリケーションを効果的に計画するには、マルチゾーン アーキテクチャと、リソースがゾーンにまたがる方法を理解する必要があります。
このドキュメントは、次のユーザーを対象としています。
- 障害復旧ワークフローの開発を担当する IT 管理者などのプラットフォーム管理者。
- GDC ユニバースでアプリケーションの開発と保守を担当するアプリケーション デベロッパーなどのアプリケーション オペレーター。
詳細については、 GDC エアギャップ ドキュメントの対象読者をご覧ください。
GDC のリソースタイプ
GDC エアギャップは、マルチゾーン ユニバースとして動作します。このオペレーティング モデルでは、次の 2 つのリソースタイプを使用します。
- ゾーンリソース: 1 つのゾーン内で独立して動作します。ゾーンリソースはゾーン外では機能しないため、ゾーンの停止がゾーンリソースに影響する可能性があります。ゾーンリソースは、ゾーン管理 API サーバー(管理 API サーバーとも呼ばれます)にデプロイします。
- グローバル リソース: フォールト トレランスのために複数のゾーンにまたがって冗長化され、どのゾーンのリソースからもアクセスできます。グローバル リソースは、グローバル管理 API サーバー(グローバル API サーバーとも呼ばれます)にデプロイします。
ゾーンリソースとグローバル リソースは、異なる管理 API サーバーを使用して GDC システムによって管理されます。API サーバーは、強力な整合性のあるストレージ バックエンドを使用して API リソースの作成、管理、削除を行うための単一のエンドポイントを提供します。 GDC には、ユニバース内のさまざまな API サーバーでリソースを効果的に管理できるインターフェースが用意されています。
ユニバースには常に 1 つのグローバル API サーバーのみが存在します。同様に、運用するゾーンごとにゾーン管理 API サーバーがあります。単一ゾーン環境で運用する場合でも、単一ゾーン用のグローバル API サーバーとゾーン管理 API サーバーが 1 つずつ存在します。

この図は、3 つのゾーンで構成される GDC ユニバースを示しています。各ゾーンには独立したゾーン管理 API サーバーがあり、そのゾーンのスコープ内にあるゾーンリソースを管理します。ユニバースには、すべてのゾーンにまたがるプロジェクトなどのグローバル リソースを管理するグローバル API サーバーもあります。
高可用性のためにリソースを適切に デプロイするには、GDC のグローバル リソース 管理アーキテクチャを理解する必要があります。 一部のリソースはグローバルにデプロイすることも、単一のゾーンで独立して動作することもできますが、グローバルまたはゾーンのみのリソースもあります。詳細については、リソースタイプの適切なドキュメントをご覧ください。
リソース管理のインターフェース
GDC には、ゾーンリソースまたはグローバル リソースを指定された API サーバーに適切にデプロイするメカニズムを提供する複数のサーフェスがあります。
- GDC コンソール: ユニバース全体のリソースにアクセスできるコンソール インターフェース。
- gdcloud CLI: GDC エアギャップ専用の CLI ツール。すべてのリソースタイプを管理するためのゾーン構成とグローバル構成、フラグを提供します。
- Management API: リソースタイプをゾーン単位とグローバル単位で細かく調整できる 管理プレーン API。
- **Terraform**: クラウド インフラストラクチャをゾーン単位とグローバル単位でプロビジョニングして管理できる Infrastructure as Code(IaC)ツール。
ニーズと好みに応じて、リソースを管理するサーフェスを選択できます。各サーフェスを使用してマルチゾーン ユニバースのリソースを管理する方法については、 ツールでゾーンにアクセスする をご覧ください。
GDC コンソール
特定の組織の GDC コンソールには、同じユニバース内のすべてのゾーンからアクセスできます。そのため、GDC コンソールを使用して、組織内のすべてのグローバル リソースとゾーンリソースを管理できます。
GDC コンソールには、デプロイ ロケーションに基づいてリソースを表示して管理する方法がいくつかあります。
- 完全修飾ドメイン名(FQDN)を使用して移動する: グローバル FQDN を使用して、最適なゾーン コンソール エンドポイントに自動的に解決します。中断時にグローバル FQDN を解決できない場合は、ゾーン FQDN を使用して、ターゲット ゾーンの特定のコンソール エンドポイントに移動できます。
- ゾーンリソースの作成を管理する: 特定のリソース作成ページでゾーン選択ツールを使用して、ゾーンリソースを作成する場所を決定します。グローバル リソースを作成する場合、ゾーン選択ツールは表示されません。
- ゾーン全体で既存のリソースを表示する: GDC コンソールでゾーンごとにゾーンリソースを表示します。ゾーン選択ツールを使用して、リソースのリストを表示するゾーンを選択できます。
- ゾーンの接続ステータスを把握する: GDC コンソールで通知を確認して、ゾーンの接続ステータスをモニタリングします。 通知により、そのゾーンのリソースの変更をブロックする可能性のあるゾーンの停止を警告できます。
GDC コンソールを使用してリソースを作成して管理する方法については、対応するリソースのドキュメントをご覧ください。
gdcloud CLI
gdcloud CLI には、ゾーン API サーバーまたはグローバル API サーバーとやり取りしてリソースを管理する方法が用意されています。
- ゾーン コンソール URL またはグローバル コンソール URL を構成する: CLI を使用して、ゾーン コンソール URL またはグローバル コンソール URL にログインします。
- ゾーンコマンド フラグを定義する: 特定のゾーン アクションにゾーン CLI フラグを使用します。
グローバル URL は、gdcloud CLI の初期化時にデフォルトで構成されます。gdcloud CLI の構成を更新して ゾーン URL を設定し、ログインしてゾーン固有のタスクを完了できます。
同様に、gdcloud CLI には、コマンドグループ全体で多くのリソース管理タスクに設定できる --zone フラグが用意されています。グローバル URL 構成にログインすると、グローバル リソースに対する CLI アクションは、スコープ内のすべてのゾーンに適用されます。
gdcloud CLI の詳細については、 gdcloud CLI の概要をご覧ください。
Management API
GDC エアギャップには、グローバル リソースとゾーンリソースの両方を作成して管理するための 2 つのレベルの管理プレーン API(グローバル API とゾーン API)が用意されています。
グローバル API とゾーン API はどちらも、異なるエンドポイントで提供される Kubernetes 宣言型 API であり、GDC リソースは API サーバーで Kubernetes カスタム リソースとして表されます。すべての組織で、ゾーン管理 API サーバーは管理者とデベロッパーがゾーンリソースを管理するためのゾーン API を提供し、グローバル管理 API サーバーはグローバル リソースを管理するためのグローバル API を提供します。
GDC の API の詳細については、 API の概要をご覧ください。
Terraform
GDC エアギャップでは、 Terraform を使用してすべてのリソースタイプをシームレスにデプロイして 管理できます。 Kubernetes プロバイダ プラグインを使用して、業界 標準の Terraform ライフサイクル管理を使用して、使用可能なゾーン管理 API とグローバル管理 API を呼び出します。
詳細については、 Terraform の概要をご覧ください。
次のステップ
- GDC ユニバースの構成について詳しくは、 GDC エアギャップのゾーン をご覧ください。
- アプリケーションがローカル ゾーンの障害に対して復元力があることを確認するには、 高可用性ガイド をご覧ください。
- 使用可能な gdcloud CLI コマンドの一覧については、 gdcloud CLI リファレンス ドキュメント をご覧ください。
- 使用可能なゾーン API とグローバル API の一覧については、API リファレンス ドキュメント をご覧ください。
- Terraform を構成するには、 Terraform のドキュメントをご覧ください。