Configuración de un recurso de Google Cloud usando Anthos Config Management

De la misma manera que puede mantener sus clústeres inscritos sincronizados con un repositorio de Git como fuente de verdad, puede sincronizar configuraciones para recursos de Google Cloud.

Requisitos

Antes de continuar, instale Anthos Config Management y Config Connector.

Crea una configuración

Mientras que las configuraciones para los objetos de Kubernetes persisten en clústeres de Kubernetes, las configuraciones para los recursos de Google Cloud persisten en los proyectos de Google Cloud. Por esta razón, cada Google Cloud está representado por un directorio de espacio de nombres dentro de namespaces/. El directorio del espacio de nombres debe coincidir exactamente con el nombre del ID de proyecto de Google Cloud. Estos directorios de espacio de nombres pueden heredarse de espacios de nombres abstractos.

Las configuraciones se almacenan en YAML o JSON. Cada tipo de recurso tiene diferentes campos obligatorios y opcionales. Para obtener detalles sobre cada tipo de recurso, como un PubSubTopic de Pub/Sub, consulte Recursos de Config Connector.

Por ejemplo, suponga que esta configuración está almacenada en namespaces/myProject. Cuando Anthos Config Management se sincroniza con el repositorio, Config Connector crea un PubSubTopic llamado pubsubtopic-example en el proyecto myProject de Google Cloud.

apiVersion: pubsub.cnrm.cloud.google.com/v1alpha2
kind: PubSubTopic
metadata:
  labels:
    label-one: "value-one"
  name: pubsubtopic-sample

Para obtener más ejemplos, consulte Recursos de Config Connector.

Eliminar o abandonar un recurso

Para eliminar un recurso, elimine del repositorio la configuración de dicho recurso. El recurso se elimina del proyecto de Google Cloud en la próxima sincronización.

Para abandonar un recurso (para dejar de sincronizar un recurso pero dejarlo intacto en el proyecto de Google Cloud), crea dos confirmaciones separadas para el repositorio:

  • En la primera confirmación, agrega la anotación cnrm.cloud.google.com/deletion-policy: abandon al recurso.
  • Después de sincronizar ese cambio, eliminas la configuración del repositorio.

Por ejemplo, para dejar de administrar un recurso SpannerInstance:

  1. Edite su configuración y agregue una línea como la línea en negrita a continuación:

    apiVersion: spanner.cnrm.cloud.google.com/v1alpha2
    kind: SpannerInstance
    metadata:
     labels:
       label-one: "value-one"
     annotations:
       cnrm.cloud.google.com/deletion-policy: abandon
     name: spannerinstance-sample
    spec:
     config: regional-us-central1
     displayName: Spanner Two
     numNodes: 1
    

    Confirme y envíe el cambio.

  2. En una segunda confirmación, elimine la configuración. Confirme y envíe el cambio.

SpannerInstance se conserva en el proyecto de Google Cloud. Sin embargo, su objeto personalizado ya no existe en el clúster de Anthos Config Management y su configuración ya no se sincroniza mediante Config Connector o Anthos Config Management.

¿Qué sigue?