Recursos en el ámbito de carpetas
Config Connector puede gestionar tus recursos a nivel de proyecto, carpeta u organización. Para que Config Connector determine dónde crear tus recursos, primero busca un campo que defina el ámbito en la especificación del recurso. Si no lo encuentra, busca una anotación que defina el ámbito.
Especificar el campo folderRef
La mayoría de los recursos de Config Connector con ámbito de carpeta admiten un campo llamado folderRef
en su especificación de CRD. Usa este campo para especificar la Google Cloud carpeta en la que quieras crear el recurso.
Si la carpeta Google Cloud también se gestiona en el mismo clúster mediante el CRD Folder, puedes especificarla como referencia de recurso de Kubernetes:
...
spec:
folderRef:
name: FOLDER_RESOURCE_NAME
namespace: FOLDER_RESOURCE_NAMESPACE
...
Este enfoque permite usar Config Connector y crear una Google Cloud carpeta con sus recursos secundarios en una sola operación de aplicación. El campo namespace es opcional si el recurso Folder de Config Connector está en el mismo espacio de nombres de Kubernetes que el recurso con ámbito de carpeta.
Si la Google Cloud carpeta no se gestiona como un recurso de Kubernetes
en el mismo clúster, puedes usar el campo external
para especificar directamente el ID de la carpeta. El formato exacto del valor puede variar en función del tipo de recurso. Los dos formatos más habituales son "FOLDER_ID" y "folders/FOLDER_ID". A continuación, se muestra un ejemplo de "FOLDER_ID":
...
spec:
folderRef:
external: "FOLDER_ID"
...
Anotar la configuración de recursos
Si el recurso de Config Connector tiene el ámbito de una carpeta, pero no admite el campo folderRef
, puedes definir el ID de la carpeta en la configuración del recurso mediante la anotación folder-id
:
...
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
...
A continuación, se muestra un ejemplo de cómo sería el archivo YAML de un recurso con esta anotación:
apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: foobarname
Anotar la configuración del espacio de nombres
Para definir un ID de carpeta predeterminado para los recursos recién creados, anota tu espacio de nombres de Kubernetes. Si alguno de los recursos del espacio de nombres tiene esta anotación definida explícitamente en su propia configuración, la anotación a nivel de recurso sobrescribe la anotación a nivel de espacio de nombres.
Para anotar el espacio de nombres mediante la línea de comandos, ejecuta el siguiente comando:
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/folder-id=FOLDER_ID
Haz los cambios siguientes:
NAMESPACE_NAME
: el nombre del espacio de nombresFOLDER_ID
: tu ID de Google Cloud carpeta
También puedes aplicar un manifiesto YAML que contenga la anotación. Copia el siguiente código YAML en un archivo:
apiVersion: v1
kind: Namespace
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: NAMESPACE_NAME
Haz los cambios siguientes:
FOLDER_ID
: tu ID de Google Cloud carpetaNAMESPACE_NAME
: el nombre del espacio de nombres
Una vez que haya creado el archivo, aplíquelo a su clúster.