Risorse relative alle cartelle
Config Connector può gestire le risorse a livello di progetto, cartella o organizzazione. Affinché Config Connector possa determinare dove creare le risorse, controlla innanzitutto la presenza di un campo che definisce l'ambito nella specifica della risorsa. Se non lo trova, controlla la presenza di un'annotazione che definisce l'ambito.
Specificare il campo folderRef
La maggior parte delle risorse di Config Connector con ambito cartella supporta un campo denominato folderRef
nella relativa specifica CRD. Utilizza questo campo per specificare la Google Cloud cartella in cui
vuoi creare la risorsa.
Se la Google Cloud cartella viene gestita nello stesso cluster tramite la CRD della cartella, puoi specificare la cartella come riferimento alla risorsa Kubernetes:
...
spec:
folderRef:
name: FOLDER_RESOURCE_NAME
namespace: FOLDER_RESOURCE_NAMESPACE
...
Questo approccio consente di utilizzare Config Connector e creare una Google Cloud cartella con le relative risorse secondarie in un'unica operazione di applicazione. Il campo dello spazio dei nomi è facoltativo se la risorsa della cartella di Config Connector si trova nello stesso spazio dei nomi Kubernetes della risorsa con ambito cartella.
Se la Google Cloud cartella non viene gestita come risorsa Kubernetes
nello stesso cluster, puoi utilizzare il campo external per specificare direttamente l'
ID cartella. Il formato esatto del valore può variare a seconda del tipo di risorsa. I due formati più comuni sono "FOLDER_ID" e
"folders/FOLDER_ID". Di seguito è riportato un esempio di "FOLDER_ID" di seguito:
...
spec:
folderRef:
external: "FOLDER_ID"
...
Annotare la configurazione delle risorse
Se la risorsa di Config Connector ha ambito cartella, ma non supporta il campo folderRef, puoi impostare l'ID cartella nella configurazione della risorsa utilizzando l'annotazione folder-id:
...
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
...
L'esempio seguente mostra l'aspetto della configurazione YAML di una risorsa con questa annotazione:
apiVersion: SERVICE_NAME.cnrm.cloud.google.com/v1beta1
kind: RESOURCE_KIND
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: RESOURCE_NAME
Sostituisci quanto segue:
SERVICE_NAME: il Google Cloud nome del servizio per la risorsaRESOURCE_KIND: il tipo di risorsa di Config ConnectorFOLDER_ID: l' Google Cloud ID cartellaRESOURCE_NAME: il nome della risorsa
Annotare la configurazione dello spazio dei nomi
Puoi impostare un ID cartella 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 il comando seguente:
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/folder-id=FOLDER_ID
Sostituisci quanto segue:
NAMESPACE_NAME: il nome dello spazio dei nomiFOLDER_ID: l' Google Cloud ID cartella
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/folder-id: FOLDER_ID
name: NAMESPACE_NAME
Sostituisci quanto segue:
FOLDER_ID: l' Google Cloud ID cartellaNAMESPACE_NAME: il nome dello spazio dei nomi
Dopo aver creato il file, applicalo al cluster.