グローバル リソース、リージョン リソース、ゾーンリソース

このページでは、Compute Engine のグローバル リソース、リージョン リソース、ゾーンリソースについて説明します。

Google Cloud Platform(GCP)は、世界中の複数のロケーションでホストされています。これらのロケーションは、リージョンと、そのリージョン内のゾーンで構成されています。リージョン内の異なるゾーンにリソースを置くことで、インフラストラクチャ、ハードウェア、ソフトウェアにさまざまな種類の障害が発生した場合に、その障害を切り離すことができます。複数のリージョンにリソースを置くと、障害からの独立性を高めることができます。これによって、複数のドメインにリソースを分散させた堅牢なシステムを設計できます。

Compute Engine のすべてのリソースは、グローバル、リージョン、ゾーンに分類されます。たとえば、イメージはグローバル リソースですが、永続ディスクはリージョン リソースまたはゾーンリソースのいずれかです。リソースのスコープにより、アクセス可能なリソースが決まります。たとえば、グローバル リソースには任意のリージョンまたはゾーンのリソースからアクセスできます。つまり、別のゾーンの VM インスタンスでも同じグローバル イメージを使用できます。リージョン リソースにアクセスできるのは、同じリージョン内のリソースだけです。たとえば、リージョンの静的外部 IP アドレスにアクセスできるのは、同じリージョンのリソースだけです。特定の静的外部 IP を使用する VM インスタンスは、このアドレスと同じリージョンのゾーンに配置する必要があります。

リソースのスコープは、アクセス可能なリソースの範囲を表します。ただし、グローバル、ゾーン、リージョンに関係なく、どのリソースもプロジェクト内で一意でなければなりません。つまり、Compute Engine 内のリソースにはプロジェクト全体で一意の名前を付ける必要があります。たとえば、us-central1-a で VM インスタンスに example-instance という名前を付けた場合、同じプロジェクトの他の VM に同じ名前を使用することはできません。

グローバル リソース

グローバル リソースは、同じプロジェクトに属するすべてのゾーンのすべてのリソースからアクセスできます。グローバル リソースを作成するときは、スコープを指定する必要はありません。グローバル リソースには以下があります。

イメージ
イメージは、同じプロジェクトのすべてのインスタンスまたはディスク リソースで使用できます。Google では、インスタンスの起動に使用できる事前構成済みのイメージを用意しています。これらのイメージをカスタマイズしたり、独自のイメージをビルドしたりできます。必要に応じて、プロジェクト間でイメージを共有することもできます。
スナップショット
永続ディスクのスナップショットは、同じプロジェクトのすべてのディスクで使用できます。
インスタンス テンプレート
インスタンス テンプレートを使用して、VM インスタンスとマネージド インスタンス グループを作成できます。これはグローバル リソースです。ただし、一部のゾーンリソースを指定したインスタンス テンプレートの使用は、そのリソースのあるゾーンに限定されます。
VPC ネットワーク
VPC ネットワークはグローバル リソースですが、個々のサブネットはリージョン リソースです。
ファイアウォール
ファイアウォールは 1 つの VPC ネットワークに適用されますが、他のネットワークからパケットが到達するため、グローバル リソースとみなされます。
ルート
ルートを使用することで、ルーターがローカルエリア ネットワーク内でトラフィックを転送するように、特定の IP 範囲に送信されたトラフィックのルーティング方法を管理できます。これにより、複雑なネットワーキング シナリオを作成できます。ルートは、GCP プロジェクト内の VPC ネットワークに適用されます。これはグローバル リソースとみなされます。
グローバル オペレーション

オペレーションは、ゾーンリソース、リージョン リソース、およびグローバル リソースを対象に実行されます。グローバル リソースを対象にオペレーションを実行する場合、このオペレーションはグローバル オペレーションとみなされます。たとえば、イメージの挿入は、イメージがグローバル リソースであるため、グローバル オペレーションとみなされます。

リージョン リソース

リージョン リソースには、同じリージョン内のすべてのリソースからアクセスできます。たとえば、特定のリージョンで静的外部 IP アドレスを予約した場合、その静的外部 IP アドレスは同じリージョン内のインスタンスにのみ割り当てることができます。各リージョンには、1 つまたは複数のゾーンがあります。有効なリージョンとゾーンのリストについては、リージョンとゾーンのページをご覧ください。

リージョン リソースには以下があります。

アドレス
アドレスのコレクションには、プロジェクト用に予約したすべての静的外部 IP アドレスが含まれています。プロジェクト用に予約した静的外部 IP アドレスは、明示的に IP アドレスを解放しない限り予約されたままとなります。静的外部 IP アドレスはリージョン リソースで、そのアドレスと同じリージョンに属するインスタンスだけが使用できます。
サブネット
サブネットは、ネットワーク IP 空間をリージョン別にサブネット(接頭辞)に分割し、どのサブネットからインスタンスの内部 IP アドレスを割り当てるかを制御します。
リージョン マネージド インスタンス グループ
リージョン マネージド インスタンス グループは、複数のゾーンにまたがる同種のインスタンスの集合です。これを使用すると、アプリケーションの負荷を複数のゾーンに分散できるため、アプリケーションが単一のゾーンに制限されることも、異なるゾーンで複数のインスタンス グループを管理する必要もなくなります。
リージョン永続ディスク
リージョン永続ディスクでは、同じリージョン内の 2 つのゾーン間で耐久性の高いデータ ストレージとデータ レプリケーションが実現されます。フェイルオーバーの場合、リージョン永続ディスクを同じリージョン内の別のインスタンスに強制接続できます。
リージョン オペレーション

オペレーションは、ゾーンリソース、リージョン リソース、およびグローバル リソースを対象に実行されます。1 つのリージョン内にのみ存在するリソースを対象にオペレーションを実行する場合、このオペレーションはリージョン オペレーションとみなされます。たとえば、アドレスの予約は、リージョン固有のリソースであるアドレスでオペレーションが実行されるため、リージョン オペレーションとみなされます。

ゾーンリソース

ゾーンでホストされるリソースをゾーンリソースと呼びます。ゾーン固有のリソース(ゾーンリソース)は、そのゾーンに固有のものであり、同じゾーンの他のリソースでのみ使用することができます。たとえば、インスタンスはゾーンリソースです。インスタンスを作成するときは、そのインスタンスが所属するゾーンを指定する必要があります。インスタンスは、同じゾーン内の他のリソース、およびグローバル リソースにアクセスできますが、別のゾーンにある他のゾーンリソース(ディスク リソースなど)にはアクセスできません。

有効なゾーンのリストについては、リージョンとゾーンのページをご覧ください。

ゾーンリソースには以下があります。

インスタンス
仮想マシン インスタンスはゾーン内に存在する必要があり、グローバル リソースまたは同じゾーン内のリソースにアクセスできます。
永続ディスク
永続ディスクは、同じゾーン内の他のインスタンスによってアクセスされます。ディスクは、同じゾーンのインスタンスにのみ接続できます。別のゾーンのインスタンスにディスクを接続することはできません。
マシンタイプ
マシンタイプはゾーンリソースです。インスタンスとディスクは、同じゾーン内のマシンタイプのみを使用できます。
ゾーン マネージド インスタンス グループ
ゾーン マネージド インスタンス グループは、インスタンス テンプレートを使用して、単一のゾーン内に同一インスタンスのグループを作成します。マネージド インスタンス グループの一部である VM は単一のエンティティとして管理し、個々のインスタンスを管理する必要はありません。
ゾーン オペレーション

オペレーションは、ゾーンリソース、リージョン リソース、およびグローバル リソースを対象に実行されます。1 つのゾーンにのみ存在するリソースのオペレーションを実行する場合、このオペレーションはゾーン オペレーションとみなされます。たとえば、インスタンスの挿入は、ゾーン固有のリソースであるインスタンスでオペレーションが実行されるため、ゾーン オペレーションとみなされます。

集約リスト

デフォルトでは、リソースのコレクションのリストをリクエストすると、特定のコントロール プレーンが返されます。たとえば、API にインスタンスのリストのクエリを発行するときは、インスタンスをリストするゾーンを指定する必要があります。すべてのゾーンまたはリージョンのリソースをリストするには、集約リストのクエリを実行します。リージョン リソースおよびゾーンリソースごとに集約リストの URI があり、このクエリを実行することで、そのタイプの全リソースをリストできます。たとえば、すべてのゾーンの全インスタンスをリストするには、次の URI にリクエストを発行します。

https://www.googleapis.com/compute/v1/project/<project-id>/aggregated/instances

同様に、すべてのリージョンの全アドレスをリストするには、次の URI にリクエストを発行します。

https://www.googleapis.com/compute/v1/project/<project-id>/aggregated/addresses

詳しくは、該当するリソースの aggregateList メソッドをご覧ください。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Compute Engine ドキュメント