リソースの編成
概要
Config Connector は、プロジェクト レベル、フォルダー レベル、または組織レベルのスコープで Google Cloud リソースを作成、管理できます。Config Connector では、次のことを決める必要があります。
- プロジェクト レベル、フォルダレベル、組織レベルのどのレベルでリソースを作成するか。
- どのプロジェクト、フォルダ、組織を使用するか。
その結果、Config Connector は、まずリソース仕様のスコープ定義フィールドを確認し、見つからない場合は、スコープ定義アノテーションを確認します。ほとんどの Google Cloud リソースは、プロジェクト レベルでのみ作成できます。
リソースが正常に作成されると、スコープの設定方法に関係なく、フィールドまたはアノテーションが不変になります。リソースのスコープを変更するには、現在のリソースを削除して、別のプロジェクト、フォルダ、または組織スコープに新しいリソースを作成する必要があります。
スコープを定義するフィールド
スコープを定義するリソースの仕様フィールドは、リソースの仕様の一部であり、リソースの構成内でのみ設定できます。また、SCOPERef. の命名規則に従います。リソースタイプに応じて、仕様のスキーマには、次のフィールドのうち少なくとも 1 つを含めることができます。
projectRef
folderRef
organizationRef
スコープを定義するアノテーション
スコープを定義するアノテーションは、リソースの構成や、リソースを含む Kubernetes 名前空間で定義できます。スコープを定義するアノテーションは、リソースタイプに応じて 3 種類あります。
cnrm.cloud.google.com/project-id
cnrm.cloud.google.com/folder-id
cnrm.cloud.google.com/organization-id
ほとんどの Config Connector リソースは、スコープを定義するフィールドをサポートしています。スコープを定義するアノテーションよりもフィールド スコープを使用することをおすすめします。スコープ定義フィールドを使用すると、リソース仕様が自己完結型になり、1 ステップでスコープとそれに含まれるリソースを作成できるようになります。スコープを定義するフィールドをサポートしていないリソースの場合は、構成でスコープを定義するアノテーションを指定するか、名前空間にアノテーションを付けることで特定の名前空間内のすべてのリソースのアノテーションをデフォルトに設定できます。スコープを定義するアノテーションを、リソースが構成内に直接含んでいる場合、名前空間アノテーションは無視されます。
例外
スコープのコンセプトが Config Connector リソースに適用されない場合、プロジェクト、フォルダ、または組織のスコープを指定する必要はありません。具体的には、リソースのリファレンス ページに記載されているリソースにスコープを定義するフィールドやスコープを定義するアノテーションがない場合、スコープを追加する必要はありません。
BillingBudgetsBudget などの一部のリソースは、Google Cloud 請求先アカウントにバインドされているため、代わりに請求先アカウント情報を指定する必要があります。
IAMPolicy、IAMPartialPolicy、IAMPolicyMember、IAMAuditConfig などの IAM リソースは、スコープを指定する必要がありません。代わりに、これらのリソースは、spec.resourceRef
フィールドを介して別の Google Cloud リソースに接続されます。この Google Cloud リソースは、PubSubTopic
、SpannerInstance
、あるいはプロジェクト、フォルダ、組織などの「スコープ」で、それ自体が Google Cloud リソースとしてモデル化されます。
次のステップ
次のタイプのスコープを適用する方法をご覧ください。