Configurer une ressource Google Cloud à l'aide d'Anthos Config Management

De la même manière que vous pouvez synchroniser vos clusters enregistrés avec un dépôt Git en tant que source fiable, vous pouvez synchroniser les configurations pour les ressources Google Cloud.

Prérequis

Avant de continuer, installez Anthos Config Management et Config Connector.

Créer une ressource Configuration

Tandis que les configurations pour les objets Kubernetes persistent dans les clusters Kubernetes, les configurations pour les ressources Google Cloud persistent dans les projets Google Cloud. Pour cette raison, chaque Google Cloud est représenté par un répertoire d'espace de noms dans namespaces/. Le répertoire d'espace de noms doit correspondre exactement au nom de l'ID de projet Google Cloud. Ces répertoires d'espace de noms peuvent hériter des espaces de noms abstraits.

Les configurations sont stockées au format YAML ou JSON. Chaque type de ressource possède différents champs obligatoires et facultatifs. Pour plus de détails sur chaque type de ressource, tel qu'un sujet Pub/Sub (PubSubTopic), consultez la section Ressources Config Connector.

Supposons par exemple que cette configuration soit stockée dans namespaces/myProject. Lorsque Anthos Config Management se synchronise avec le dépôt, Config Connector crée un PubSubTopic appelé pubsubtopic-example dans le projet Google Cloud myProject.

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

Pour voir d'autres exemples, consultez la section Ressources Config Connector.

Supprimer ou abandonner une ressource

Pour supprimer une ressource, supprimez sa configuration du dépôt. La ressource est supprimée du projet Google Cloud lors de la prochaine synchronisation.

Pour abandonner une ressource (pour arrêter la synchronisation d'une ressource mais la laisser intacte dans le projet Google Cloud), vous créez deux commits distincts pour le dépôt :

  • Dans le premier commit, vous ajoutez l'annotation cnrm.cloud.google.com/deletion-policy: abandon à la ressource.
  • Une fois cette modification synchronisée, vous supprimez la configuration du dépôt.

Par exemple, pour arrêter la gestion d'une ressource SpannerInstance :

  1. Modifiez sa configuration et ajoutez une ligne semblable à la ligne en gras ci-dessous :

    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
    

    Procédez au commit et au transfert de la modification.

  2. Dans un deuxième commit, supprimez la configuration. Procédez au commit et au transfert de la modification.

La ressource SpannerInstance est conservée dans le projet Google Cloud. Cependant, son objet personnalisé n'existe plus dans le cluster Anthos Config Management et sa configuration n'est plus synchronisée à l'aide de Config Connector ou d'Anthos Config Management.

Et ensuite ?