このドキュメントでは、Google Distributed Cloud(GDC)エアギャップ環境でのプロジェクトの仕組みの概要について説明します。プロジェクトは、リソースの集まりです。 プロジェクトは、組織内のリソースを分割し、リソースのライフサイクルを管理してポリシーを適用するための境界を提供します。プロジェクトが削除されると、そのプロジェクト内のすべてのリソースも削除されます。プロジェクトに適用されるポリシーは、プロジェクト内のすべてのリソースにも適用されます。プロジェクトを使用して、リソースをグループとして整理して管理できます。詳細については、 リソース階層をご覧ください。
このドキュメントは、組織内のリソースの管理を担当するプラットフォーム管理者グループ内の IT 管理者、セキュリティ エンジニア、ネットワーク管理者などのユーザーを対象としています。詳細については、 GDC エアギャップ環境のドキュメントの対象読者をご覧ください。
プロジェクト ID
プロジェクトには 2 つの ID があります。
プロジェクト名: 人が読めるプロジェクト名。プロジェクト名は GDC API では使用されません。プロジェクト名は、プロジェクトの作成中や作成後にいつでも編集できます。プロジェクト名は一意である必要はありません。
プロジェクト ID: グローバルに一意のプロジェクト ID。プロジェクト ID は、GDC でプロジェクトを区別するために使用する一意の文字列です。プロジェクト ID は、プロジェクトの作成時にシステムによって生成されます。プロジェクトが使用可能になった後に変更することはできません。プロジェクトによって伝播される Namespace は、プロジェクト ID と同じです。
プロジェクト名、プロジェクト ID、他のリソース名には機密情報を含めないでください。プロジェクト ID は他の多くの GDC リソースの名前で使用され、プロジェクトや関連するリソースを参照すると、プロジェクト ID とリソース名が公開されます。
プロジェクト Namespace
プロジェクトの Namespace には、次のような複数のリソースと構成がホストされます。
- プロジェクト スコープのサービス API または Kubernetes カスタム リソース定義。
- ロールやロール バインディングなどのプロジェクト レベルのポリシー構成。
プロジェクトは、組織内の複数の共有 Kubernetes クラスタにまたがる Kubernetes Namespace とみなされます。共有クラスタは複数のプロジェクトに接続できる Kubernetes クラスタですが、標準クラスタは単一のプロジェクト Namespace 内で動作する Kubernetes クラスタです。GDC の Kubernetes クラスタの詳細については、 Kubernetes クラスタの構成をご覧ください。
Kubernetes は各共有クラスタを個別のエンティティとして扱い、各共有クラスタには独立したプロジェクト Namespace があります。ただし、GDC 組織内のすべての共有クラスタについて、GDC は同じ名前のすべての Namespace を同じ Namespace とみなします。これは Namespace の同一性と呼ばれます。 単一の Namespace には、共有クラスタのセット全体で一貫したオーナーがいます。サービス プロバイダは、Namespace にコントロール プレーン コンポーネントとデータプレーン コンポーネントを作成することで、プロジェクト スコープのサービスを作成します。

この図は、3 つの共有クラスタにまたがる名前空間の同一性を示しています。各クラスタは、組織の開発ライフサイクルに対応するコンテナ ワークロード用です。クラスタにまたがる Namespace を提供するプロジェクト Namespace backend と frontend があります。プロジェクト Namespace は複数の共有クラスタにレプリケートされますが、一貫した権限と特性を持つ単一の Namespace として認識されます。