Ressources au niveau de l'organisation
Config Connector peut gérer vos ressources au niveau du projet, du dossier ou de l'organisation. Pour que Config Connector puisse déterminer où créer vos ressources, il vérifie d'abord s'il existe un champ qui définit le champ d'application dans la spécification de votre ressource, si elle est introuvable, il recherche une annotation de définition du champ d'application.
Spécifier le champ organizationRef
La plupart des ressources Config Connector à l'échelle de l'organisation acceptent un champ nommé organizationRef
dans sa spécification CRD. Ce champ permet de spécifier l'organisation Google Cloud à laquelle
dans lequel créer la ressource.
Vous pouvez utiliser le champ external
pour spécifier l'ID de l'organisation. Le mot clé exact
le format de la valeur peut varier en fonction du type de ressource. Les deux formats les plus courants sont "ORGANIZATION_ID" et "organizations/ORGANIZATION_ID".
Vous trouverez ci-dessous un exemple de ORGANIZATION_ID :
...
spec:
organizationRef:
external: "ORGANIZATION_ID"
...
Annoter la configuration des ressources
Si la ressource Config Connector est à l'échelle de l'organisation, mais n'est pas compatible
organizationRef
, vous pouvez définir l'ID de l'organisation sur la configuration de la ressource
à l'aide de l'annotation organization-id
:
...
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
...
Voici un exemple de ce à quoi ressemblera le fichier YAML d'une ressource avec cette annotation dedans:
apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
name: foobarname
Annoter la configuration de l'espace de noms
Vous pouvez définir un ID d'organisation par défaut pour les nouvelles ressources en annotant votre espace de noms Kubernetes. Si l'une des ressources de l'espace de noms a cette annotation explicitement définie dans sa propre configuration, l'annotation au niveau de la ressource écrase l'annotation au niveau de l'espace de noms.
Pour annoter l'espace de noms à l'aide de la ligne de commande, exécutez la commande suivante :
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/organization-id=ORGANIZATION_ID
Remplacez les éléments suivants :
NAMESPACE_NAME
: nom de votre espace de nomsORGANIZATION_ID
: ID de votre organisation Google Cloud
Vous pouvez également appliquer un fichier manifeste YAML contenant l'annotation. Copiez le manifeste YAML ci-dessous dans un fichier :
apiVersion: v1
kind: Namespace
metadata:
annotations:
cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
name: NAMESPACE_NAME
Remplacez les éléments suivants :
ORGANIZATION_ID
: ID de votre organisation Google CloudNAMESPACE_NAME
: nom de votre espace de noms
Après avoir créé le fichier, appliquez-le à votre cluster.