リソース
Config Connector には、カスタム リソース定義(CRD)のコレクションが含まれています。各 CRD で、Kubernetes から Google Cloud リソースを構成できます。Config Connector を使用すると、Kubernetes のさまざまな機能を活用して、Google Cloud リソースを管理することもできます。
このページでは、Config Connector が Kubernetes オブジェクトとそのメタデータを使用する方法について説明します。
Kubernetes オブジェクトと Config Connector のリソース
たとえば、kind: SQLInstance
の Kubernetes オブジェクトを作成すると、Config Connector は Cloud SQL インスタンスを作成します。このセクションでは、Config Connector がオブジェクト タイプを拡張する方法について説明します。
Spec と Status
各 Config Connector リソースは、Spec
と Status
を持つ Kubernetes オブジェクトです。
- Spec
spec
フィールドには、Labels
を除いて、オブジェクトの目的とする状態を定義するすべてのフィールドが含まれています。spec
のサブフィールドは、関連付けられた Google Cloud リソースを参照します。サブフィールドを変更すると、Google Cloud リソースの値は、意図した値と結果整合性があります。- 書き込み可能なフィールドの例は、SQLInstance リソースの
databaseVersion
です。 - Status
-
status
フィールドは読み取り専用で、オブジェクトの現在の状態が含まれています。Config Connector は、Google Cloud リソースの情報を定期的に読み取り、status
を更新します。Status.Condition
で、リソースのエラー メッセージや readiness を確認できます。 - 読み取り専用の
status
フィールドの例は、SQLInstance リソースのconnectionName
です。
オブジェクトのメタデータ
各 Config Connector リソースには、メタデータ フィールドが含まれています。このセクションでは、Config Connector がメタデータ内のサブフィールドを使用する方法について説明します。
- 名前
- Config Connector リソースの名前。Kubernetes オブジェクト名の命名規則に従う必要があります。デフォルトでは、対応する Google Cloud リソースの名前として使用されます。Config Connector リソースで
resourceID
フィールドがサポートされている場合は、Google Cloud リソースの命名規則に従って、spec.resourceID
フィールドの対応する Google Cloud リソースに別の名前を指定できます。詳細については、resourceID
フィールドを使用したリソースの管理をご覧ください。 - 名前空間
- Config Connector リソースを作成する Namespace によって、Google Cloud リソースを含むプロジェクトが決まります。Namespace の詳細については、Kubernetes Namespace と Google Cloud プロジェクトをご覧ください。
- ラベル
- Config Connector リソースのメタデータ フィールドのラベルも、関連する Google Cloud リソースに追加されます。
- さらに、Config Connector は、値が
true
のmanaged-by-cnrm
という名前のシステムラベルを Google Cloud リソースに追加します。 - アノテーション
- Config Connector は、
spec
で定義されていないリソースに対して追加のアクションを実行できます。これらのアクションはmetadata.annotations
のサブフィールドで定義されます。アノテーション値は文字列であることが必須です。Config Connector がサポートするアノテーションの種類については、アノテーションをご覧ください。
フォルダと階層リソース
Config Connector は、Google Cloud プロダクトでのリソースの管理に加えて、Google Cloud のフォルダと組織内でのリソースの作成と管理をサポートしています。詳細については、Namespace とプロジェクトをご覧ください。
RBAC をアクセス制御に使用する
Kubernetes のロールベースのアクセス制御(RBAC)によって、リソースが保護されます。RBAC 権限を割り当てることで、Google Cloud リソースの作成を制御できます。詳細については、リソースへのアクセスの保護をご覧ください。
ステータスの状態
Config Connector は、status.condition
の準備完了状態を次の 2 つの目的で使用します。
- リソースの準備が整うタイミングを示しています。リソースの調整と準備が完了すると、
status.condition.status
はTrue
に設定されます。リソースの準備が完了するタイミングを確認するには、リソースの準備を待機するをご覧ください。 - 追加のエラーまたは情報を表示しています。準備完了条件には、リソースのステータスに関する追加情報を示す
Message
フィールドとReason
フィールドがあります。
イベント
Config Connector リソースの重要なステータス変更は、Kubernetes イベントとして表示されます。詳細については、イベントの表示をご覧ください。
宣言型構成と結果整合性
調整をご覧ください。
次のステップ
- Config Connector を使ってみる
- Config Connector が構成するリソースについて学習する。