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

このドキュメントでは、グローバル リソースとゾーンリソースの違いと、マルチゾーン ユニバースでの動作について説明します。Google Distributed Cloud(GDC)エアギャップは、リソースに異なるデプロイ領域を提供するため、ワークロードとサービスに高可用性戦略を実装できます。高可用性アプリケーションを効果的に計画するには、マルチゾーン アーキテクチャと、リソースがそれらのゾーンにどのように分散されるかを理解する必要があります。

このドキュメントは、次のオーディエンス グループを対象としています。

  • 障害復旧ワークフローの開発を担当する IT 管理者などのプラットフォーム管理者。
  • アプリケーション オペレーター(アプリケーション デベロッパーなど)。GDC ユニバースでのアプリケーションの開発とメンテナンスを担当します。

詳細については、GDC エアギャップ ドキュメントの対象読者をご覧ください。

GDC のリソースタイプ

GDC エアギャップは、マルチゾーン ユニバースとして動作します。このオペレーティング モデルでは、次の 2 つのリソースタイプを使用します。

  • ゾーンリソース: 単一のゾーン内で独立して動作します。ゾーンリソースはゾーン外では機能しないため、ゾーンの停止はゾーンリソースに影響する可能性があります。ゾーンリソースをゾーン管理 API サーバー(管理 API サーバー)にデプロイします。
  • グローバル リソース: 耐障害性を確保するために複数のゾーンにまたがる冗長性で動作し、任意のゾーンの任意のリソースからアクセスできます。グローバル リソースは、グローバル Management API サーバー(グローバル API サーバーとも呼ばれます)にデプロイします。

ゾーンリソースとグローバル リソースは、個別の Management API サーバーを使用して、GDC システムによって異なる方法で管理されます。API サーバーは、強整合性のあるストレージ バックエンドを使用して API リソースを作成、管理、削除するための単一のエンドポイントを提供します。GDC には、ユニバース内のさまざまな API サーバーでリソースを効果的に管理できるように、インターフェースが用意されています。

ユニバースには常に 1 つのグローバル API サーバーしかありません。同様に、運用するゾーンごとにゾーン管理 API サーバーがあります。単一ゾーン環境で運用している場合でも、1 つのグローバル API サーバーと、単一ゾーン用のゾーン管理 API サーバーがあります。

ユニバースは、すべてのゾーンにまたがるグローバル 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 サーバーを操作してリソースを管理する次の方法が用意されています。

  • ゾーンまたはグローバル コンソールの URL を構成する: CLI を使用して、ゾーンまたはグローバル コンソールの URL にログインします。
  • ゾーンコマンド フラグを定義する: 特定のゾーンアクションにゾーン CLI フラグを使用します。

グローバル URL は、gdcloud CLI の初期化時にデフォルトで構成される URL です。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 Provider プラグインを使用して、業界標準の Terraform ライフサイクル管理を使用して、使用可能なゾーン管理 API とグローバル管理 API を呼び出します。

詳細については、Terraform の概要をご覧ください。

次のステップ