グローバル リソースとゾーンリソース

このドキュメントでは、グローバル リソースとゾーンリソースの違いと、マルチゾーン ユニバースでの動作について説明します。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 つずつ存在します。

ユニバースは、すべてのゾーンにまたがるグローバル API サーバーと、各ゾーン専用のゾーン API サーバーを管理します。

この図は、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 の概要をご覧ください。

次のステップ