Installer Config Sync comme valeur par défaut pour le parc

Vous pouvez installer Config Sync en tant que parc par défaut afin que tous les nouveaux clusters ajoutés à votre parc soient automatiquement activés avec les paramètres de votre choix. En configurant des valeurs par défaut au niveau du parc, vous vous assurez que chaque nouveau cluster GKE sur Google Cloud enregistré dans le parc hérite d'une configuration Config Sync standard, y compris la version et les connexions à votre source de référence. Ce processus simplifie le provisionnement des clusters et permet de maintenir une base de référence uniforme pour la gestion de la configuration.

Cette page explique les points suivants :

  • Comment configurer ces paramètres par défaut au niveau du parc à l'aide de la console Google Cloud , de Google Cloud CLI ou de Terraform.
  • Appliquer les paramètres par défaut aux clusters existants
  • Découvrez comment désactiver la configuration par défaut du parc si nécessaire.

Pour obtenir des informations générales sur les configurations par défaut du parc, consultez Gérer les fonctionnalités au niveau du parc.

Avant de commencer

Avant d'installer Config Sync, préparez votre source de vérité et un cluster adapté.

Accorder à Config Sync l'accès à votre source de vérité

Pour synchroniser la configuration d'une source de vérité avec vos clusters, Config Sync a besoin d'un accès en lecture seule à votre dépôt. Pour autoriser Config Sync à lire vos configurations, procédez comme suit :

Examiner les exigences des clusters

Avant de créer un cluster, consultez les exigences relatives aux clusters.

Limites

  • La configuration de Helm en tant que type de source n'est pas acceptée comme valeur par défaut du parc.
  • La console Google Cloud ne permet pas de se connecter à une source de vérité en tant que paramètre par défaut. Vous devez plutôt utiliser la fonctionnalité Déployer des packages après avoir créé un cluster.

Configurer les valeurs par défaut au niveau du parc pour un dépôt Git

Pour configurer les valeurs par défaut au niveau du parc pour Config Sync, procédez comme suit :

gcloud

  1. Créez un fichier manifeste nommé apply-spec.yaml avec le contenu suivant. Si vous avez déjà créé un fichier manifeste, vous n'avez pas besoin d'en créer un autre.

    applySpecVersion: 1
    spec:
      configSync:
        enabled: true
        sourceType: git
        sourceFormat: unstructured
        syncRepo: REPO
        syncRev: REVISION
        secretType: SECRET_TYPE
        # only required if gcpserviceaccount is the secretType
        # gcpServiceAccountEmail: EMAIL
        metricsGcpServiceAccountEmail: METRICS_EMAIL
        preventDrift: false
    

    Remplacez les éléments suivants :

    • REPO : URL de votre dépôt Git, par exemple https://github.com/GoogleCloudPlatform/anthos-config-management-samples. Utilisez le format HTTPS pour l'URL ou le format SSH si ssh est la source.
    • REVISION : révision Git (tag ou hachage) ou nom de branche à partir desquels la synchronisation doit être effectuée. Lorsque vous utilisez un hachage, il doit s'agir d'un hachage complet et non d'une forme abrégée.
    • SECRET_TYPE : méthode d'authentification utilisée pour se connecter à votre dépôt Git. Pour les dépôts publics, utilisez none. Pour les dépôts privés, utilisez l'une des méthodes suivantes :

      • ssh : utilisez une paire de clés SSH.
      • cookiefile : utilisez un cookiefile.
      • token : utilisez un jeton.
      • gcpserviceaccount : utilisez un compte de service Google si la fédération d'identité de charge de travail pour GKE est activée. Secure Source Manager ou Cloud Source Repositories uniquement.
      • gcenode : utilisez un compte de service Google si la fédération d'identité de charge de travail pour GKE n'est pas activée. Secure Source Manager ou Cloud Source Repositories uniquement.
      • githubapp : utilisez une application GitHub pour vous authentifier auprès d'un dépôt GitHub.

      Pour en savoir plus sur la connexion de votre dépôt Git à Config Sync, consultez Accorder à Config Sync l'accès à Git.

    • EMAIL : si gcpserviceaccount est le secretType, décommentez ce champ et ajoutez l'adresse e-mail du compte de service Google, par exemple config-sync@PROJECT_ID.iam.gserviceaccount.com.

    • METRICS_EMAIL : adresse e-mail du compte de service Google Cloud utilisé pour exporter les métriques Config Sync vers Cloud Monitoring. Pour en savoir plus sur la configuration de l'exportation des métriques, consultez Surveiller Config Sync.

    Pour obtenir la liste complète des champs que vous pouvez ajouter au fichier manifeste apply-spec, consultez la section Champs spécifiques de la commande d'application de gcloud.

  2. Appliquez le fichier apply-spec avec vos paramètres de parc par défaut en exécutant la commande suivante :

    gcloud beta container fleet config-management enable \
        --fleet-default-member-config=apply-spec.yaml
    

Console

  1. Dans la console Google Cloud , accédez à la page Gestionnaire de fonctionnalités.

    Accéder au gestionnaire de fonctionnalités

  2. Dans le volet Config Sync, cliquez sur Configurer.

  3. Vérifiez vos paramètres au niveau du parc. Tous les nouveaux clusters que vous créez dans le parc héritent de ces paramètres.

  4. Facultatif : Pour modifier les paramètres par défaut, cliquez sur Personnaliser les paramètres du parc. Dans la boîte de dialogue qui apparaît, procédez comme suit :

    1. Sélectionnez la version de Config Sync que vous souhaitez utiliser.
    2. Cliquez sur Enregistrer les modifications.
  5. Cliquez sur Configurer.

  6. Dans la boîte de dialogue de confirmation Configurer les paramètres du parc, cliquez sur Confirmer. Si vous n'avez pas encore activé Config Sync, cliquez sur Confirmer pour activer également l'API anthosconfigmanagement.googleapis.com.

Bien que vous ne puissiez pas configurer les paramètres de votre source de référence comme paramètre par défaut du parc à partir de la console Google Cloud , vous pouvez sélectionner plusieurs clusters lorsque vous utilisez la fonctionnalité Déployer un package.

Terraform

Pour activer Config Sync comme valeur par défaut du parc, consultez l'exemple suivant :

resource "google_gke_hub_feature" "default" {
  name     = "configmanagement"
  location = "global"

  fleet_default_member_config {
    configmanagement {
      config_sync {
        # The field `enabled` was introduced in Terraform version 5.41.0, and
        # needs to be set to `true` explicitly to install Config Sync.
        enabled = true
        git {
          sync_repo   = "REPO"
          sync_branch = "BRANCH"
          policy_dir  = "DIRECTORY"
          secret_type = "SECRET"
        }
      }
    }
  }
}

Remplacez les éléments suivants :

  • REPO : URL du dépôt Git contenant vos fichiers de configuration.
  • BRANCH : branche du dépôt, par exemple main.
  • DIRECTORY : chemin d'accès dans le dépôt Git qui représente le niveau supérieur du dépôt que vous souhaitez synchroniser.
  • SECRET : type d'authentification du secret.

Pour en savoir plus sur l'utilisation de Terraform, consultez Provisionner des ressources Config Sync avec Terraform.

Configurer les valeurs par défaut au niveau du parc pour une image OCI

Pour configurer les valeurs par défaut au niveau du parc pour Config Sync, procédez comme suit :

gcloud

  1. Créez un fichier manifeste nommé apply-spec.yaml avec le contenu suivant. Si vous avez déjà créé un fichier manifeste, vous n'avez pas besoin d'en créer un autre.

    applySpecVersion: 1
    spec:
      configSync:
        enabled: true
        sourceType: oci
        sourceFormat: unstructured
        syncRepo: REPO
        secretType: SECRET_TYPE
        # only required if gcpserviceaccount is the secretType
        # gcpServiceAccountEmail: EMAIL
        metricsGcpServiceAccountEmail: METRICS_EMAIL
        preventDrift: false
    

    Remplacez les éléments suivants :

    • REPO : URL de votre image OCI au format LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME. Par défaut, l'image est extraite du tag latest, mais vous pouvez récupérer les images par TAG ou DIGEST à la place. Spécifiez TAG ou DIGEST dans PACKAGE_NAME :

      • Pour extraire par TAG : LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME:TAG
      • Pour extraire par DIGEST : LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME@sha256:DIGEST
    • SECRET_TYPE : méthode d'authentification utilisée pour se connecter à votre image OCI. Pour les images publiques, utilisez none comme valeur. Pour les images privées, utilisez l'une des options suivantes :

      • gcpserviceaccount : Secure Source Manager ou Cloud Source Repositories uniquement. Utilisez un compte de service Google si Workload Identity Federation for GKE est activé.
      • gcenode : Secure Source Manager ou Cloud Source Repositories uniquement. Utilisez un compte de service Google si Workload Identity Federation for GKE n'est pas activé.

      Pour en savoir plus sur la connexion de votre image OCI à Config Sync, consultez Accorder à Config Sync l'accès à OCI ou Helm.

    • EMAIL : si gcpserviceaccount est le secretType, décommentez ce champ et ajoutez l'adresse e-mail du compte de service Google, par exemple config-sync@PROJECT_ID.iam.gserviceaccount.com.

    • METRICS_EMAIL : adresse e-mail du compte de service Google Cloud utilisé pour exporter les métriques Config Sync vers Cloud Monitoring. Pour en savoir plus sur la configuration de l'exportation des métriques, consultez Surveiller Config Sync.

    Pour obtenir la liste complète des champs que vous pouvez ajouter au fichier manifeste apply-spec, consultez la section Champs spécifiques de la commande d'application de gcloud.

  2. Appliquez le fichier apply-spec avec vos paramètres de parc par défaut en exécutant la commande suivante :

    gcloud beta container fleet config-management enable \
        --fleet-default-member-config=apply-spec.yaml
    

Console

  1. Dans la console Google Cloud , accédez à la page Gestionnaire de fonctionnalités.

    Accéder au gestionnaire de fonctionnalités

  2. Dans le volet Config Sync, cliquez sur Configurer.

  3. Vérifiez vos paramètres au niveau du parc. Tous les nouveaux clusters que vous créez dans le parc héritent de ces paramètres.

  4. Facultatif : Pour modifier les paramètres par défaut, cliquez sur Personnaliser les paramètres du parc. Dans la boîte de dialogue qui apparaît, procédez comme suit :

    1. Sélectionnez la version de Config Sync que vous souhaitez utiliser.
    2. Cliquez sur Enregistrer les modifications.
  5. Cliquez sur Configurer.

  6. Dans la boîte de dialogue de confirmation Configurer les paramètres du parc, cliquez sur Confirmer. Si vous n'avez pas encore activé Config Sync, cliquez sur Confirmer pour activer également l'API anthosconfigmanagement.googleapis.com.

Bien que vous ne puissiez pas configurer les paramètres de votre source de référence comme paramètre par défaut du parc à partir de la console Google Cloud , vous pouvez sélectionner plusieurs clusters lorsque vous utilisez la fonctionnalité Déployer un package.

Terraform

Pour activer Config Sync comme valeur par défaut du parc, consultez l'exemple suivant :

resource "google_gke_hub_feature" "configmanagement_feature_member" {
  name     = "configmanagement"
  location = "global"

  fleet_default_member_config {
    configmanagement {
      config_sync {
        # The field `enabled` was introduced in Terraform version 5.41.0, and
        # needs to be set to `true` explicitly to install Config Sync.
        enabled = true
        oci {
          sync_repo   = "REPO"
          policy_dir  = "DIRECTORY"
          secret_type = "SECRET"
        }
      }
    }
  }
}

Remplacez les éléments suivants :

  • REPO : URL du dépôt d'images OCI contenant vos fichiers de configuration.
  • DIRECTORY : chemin absolu du répertoire contenant les ressources que vous souhaitez synchroniser. Pour utiliser le répertoire racine, laissez ce champ vide.
  • SECRET : type d'authentification du secret.

Pour en savoir plus sur l'utilisation de Terraform, consultez Provisionner des ressources Config Sync avec Terraform.

Mettre à jour les clusters existants pour hériter des valeurs par défaut du parc

Pour mettre à jour des clusters existants afin qu'ils utilisent vos paramètres Config Sync par défaut, vous pouvez utiliser la console Google Cloud ou gcloud CLI pour synchroniser les clusters de parc sélectionnés avec les valeurs par défaut de votre parc. Vous pouvez également configurer manuellement chaque cluster avec les mêmes paramètres à l'aide de Terraform et en suivant les instructions d'installation de Config Sync de la section précédente. Si vous avez déjà utilisé Terraform pour spécifier les valeurs par défaut du parc, utilisez le même bloc configmanagement et config_sync que celui utilisé pour définir les valeurs par défaut afin de configurer les clusters de votre choix.

Pour synchroniser les paramètres Config Sync par défaut dans votre parc, procédez comme suit :

gcloud

  1. Synchronisez une appartenance existante avec la configuration par défaut du parc :

    gcloud beta container fleet config-management apply \
        --origin=FLEET \
        --membership=MEMBERSHIP_NAME
    

    Remplacez MEMBERSHIP_NAME par le nom d'appartenance au parc du cluster que vous souhaitez synchroniser avec la configuration par défaut du parc.

  2. Vérifiez que vos configurations d'appartenance sont synchronisées avec la configuration par défaut du parc :

    gcloud beta container fleet config-management status
    

    Le résultat de cette commande doit afficher Yes pour l'état Synced_to_Fleet_Default de l'abonnement que vous avez synchronisé.

Console

  1. Accéder au gestionnaire de fonctionnalités

    Accéder au gestionnaire de fonctionnalités : Config Sync

  2. Dans le tableau des clusters, sélectionnez ceux que vous souhaitez synchroniser avec les paramètres du parc.

  3. Cliquez sur Synchroniser avec les paramètres du parc.

Désactiver les paramètres par défaut du parc

Pour désactiver les paramètres Config Sync par défaut dans votre parc, procédez comme suit :

  1. Pour désactiver la configuration par défaut du parc, exécutez la commande suivante :

    gcloud beta container fleet config-management disable --fleet-default-member-config
    
  2. Vérifiez que la configuration par défaut du parc est désactivée :

    gcloud beta container fleet config-management status
    

Étapes suivantes