Risorse relative alle organizzazioni
Config Connector può gestire le risorse a livello di progetto, cartella o organizzazione. Affinché Config Connector possa determinare dove creare le risorse, controlla prima un campo che definisce l'ambito nella specifica della risorsa. Se non lo trova, controlla un'annotazione che definisce l'ambito.
Specifica il campo organizationRef
La maggior parte delle risorse Config Connector con ambito organizzazione supporta un campo denominato organizationRef
nella specifica CRD. Utilizza questo campo per specificare l'organizzazione Google Cloud in cui
vuoi creare la risorsa.
Puoi utilizzare il campo external
per specificare l'ID organizzazione. Il formato esatto
del valore può variare a seconda del tipo di risorsa. I due formati più comuni sono "ORGANIZATION_ID" e "organizations/ORGANIZATION_ID".
Di seguito è riportato un esempio di "ORGANIZATION_ID":
...
spec:
organizationRef:
external: "ORGANIZATION_ID"
...
Annota configurazione delle risorse
Se la risorsa Config Connector è limitata all'organizzazione, ma non supporta
il campo organizationRef
, puoi impostare l'ID organizzazione nella configurazione della risorsa
utilizzando l'annotazione organization-id
:
...
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
...
Ecco un esempio di come apparirà il file YAML di una risorsa con questa annotazione:
apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
name: foobarname
Annotare la configurazione dello spazio dei nomi
Puoi impostare un ID organizzazione predefinito per le risorse appena create annotando lo spazio dei nomi Kubernetes. Se una delle risorse nello spazio dei nomi ha questa annotazione impostata esplicitamente nella propria configurazione, l'annotazione a livello di risorsa sovrascrive l'annotazione a livello di spazio dei nomi.
Per annotare lo spazio dei nomi utilizzando la riga di comando, esegui questo comando:
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/organization-id=ORGANIZATION_ID
Sostituisci quanto segue:
NAMESPACE_NAME
: il nome dello spazio dei nomiORGANIZATION_ID
: l'ID della tua organizzazione Google Cloud
In alternativa, puoi applicare un manifest YAML contenente l'annotazione. Copia il codice YAML riportato di seguito in un file:
apiVersion: v1
kind: Namespace
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
name: NAMESPACE_NAME
Sostituisci quanto segue:
ORGANIZATION_ID
: l'ID della tua organizzazione Google CloudNAMESPACE_NAME
: il nome dello spazio dei nomi
Dopo aver creato il file, applicalo al cluster.