Recursos al nivel de la organización


Config Connector puede administrar los recursos a nivel de proyecto, carpeta u organización. Para que Config Connector determine dónde crear los recursos, primero busca un campo que defina el alcance en la especificación de recursos. Si no lo encuentra, busca una anotación que defina el alcance.

Especifica el campo organizationRef

La mayoría de los recursos de Config Connector con alcance de organización admiten un campo llamado organizationRef en su especificación de CRD. Usa este campo para especificar la organización de Google Cloud que quieres crear el recurso.

Puedes usar el campo external para especificar el ID de la organización. El nombre exacto del valor puede ser diferente según el tipo de recurso. Los dos formatos más comunes son “ORGANIZATION_ID” y “organizations/ORGANIZATION_ID”. Consulta el siguiente ejemplo de "ORGANIZATION_ID":

...
spec:
  organizationRef:
    external: "ORGANIZATION_ID"
...

Anota la configuración de recursos

Si el recurso de Config Connector tiene alcance de organización, pero no es compatible organizationRef, puedes establecer el ID de la organización en la configuración del recurso con la anotación organization-id:

...
metadata:
  annotations:
    cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
...

Este es un ejemplo de cómo se verá el archivo YAML de un recurso con esta anotación incluye:

apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
  annotations:
    cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
  name: foobarname

Anota la configuración de espacio de nombres

Para establecer un ID de organización predeterminado para los recursos recién creados, anota el espacio de nombres de Kubernetes. Si alguno de los recursos del espacio de nombres tiene esta anotación establecida explícitamente en su propia configuración, la anotación a nivel del recurso reemplaza la anotación a nivel del espacio de nombres.

Para anotar el espacio de nombres con la línea de comandos, ejecuta el siguiente comando:

kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/organization-id=ORGANIZATION_ID

Reemplaza lo siguiente:

  • NAMESPACE_NAME: Es el nombre del espacio de nombres
  • ORGANIZATION_ID: Es el ID de la organización de Google Cloud.

Como alternativa, puedes aplicar un manifiesto YAML que contenga la anotación. Copia el YAML a continuación en un archivo:

apiVersion: v1
kind: Namespace
metadata:
  annotations:
    cnrm.cloud.google.com/organization-id: ORGANIZATION_ID
  name: NAMESPACE_NAME

Reemplaza lo siguiente:

  • ORGANIZATION_ID: Es el ID de tu organización de Google Cloud.
  • NAMESPACE_NAME: Es el nombre del espacio de nombres

Después de crear el archivo, aplícalo a tu clúster.