Champs ConfigManagement

Cette page décrit les différents champs que vous pouvez définir dans votre objet ConfigManagement. Vous pouvez utiliser cet objet lorsque vous configurez Config Sync à l'aide de commandes kubectl.

Configuration des fonctionnalités Config Sync

Clé Description
spec.enableMultiRepo Si la valeur est true, active les API RootSync et RepoSync. Ces API vous fournissent des fonctionnalités Config Sync supplémentaires, telles que la synchronisation à partir de plusieurs dépôts et la synchronisation des configurations Kustomize et Helm. La valeur par défaut est false.
spec.preventDrift Si la valeur est true, active le webhook d'admission Config Sync pour éviter les écarts en empêchant le transfert des modifications incompatibles vers les clusters opérationnels. La valeur par défaut est false. Config Sync corrige toujours les dérives, quelle que soit la valeur de ce champ.
spec.enableLegacyFields (Shutdown in 1.19.0) Si la valeur est true, permet d'utiliser les champs spec.git obsolètes dans ConfigManagement tout en utilisant le mode multi-dépôt. La définition de ce champ génère automatiquement une ressource RootSync sur le cluster.

Configuration pour le comportement de l'objet ConfigManagement

Clé Description
spec.clusterName Nom défini par l'utilisateur pour le cluster, utilisé par l'objet ClusterSelectors pour regrouper les clusters. Unique dans une installation Config Sync. Vous ne pouvez pas configurer ce champ dans la console Google Cloud .

Exemple d'objet ConfigManagement

apiVersion: configmanagement.gke.io/v1
kind: ConfigManagement
metadata:
  name: config-management
spec:
  clusterName: my-cluster
  enableMultiRepo: true

Configuration des dépôts Git (obsolète)

Clé Description
spec.git.gcpServiceAccountEmail Compte de service Google Cloud utilisé pour annoter le compte de service Kubernetes du contrôleur RootSync ou RepoSync. Ce champ n'est utilisé que lorsque spec.git.secretType est défini sur gcpserviceaccount.
spec.git.syncRepo URL du dépôt Git à utiliser comme source fiable. Obligatoire.
spec.git.syncBranch Branche du dépôt à partir de laquelle la synchronisation doit être effectuée. Valeur par défaut : master
spec.git.policyDir Chemin d'accès du dépôt Git vers le répertoire racine contenant la configuration que vous souhaitez synchroniser. La valeur par défaut correspond au répertoire racine du dépôt.
spec.git.syncWait Durée entre deux synchronisations consécutives. Valeur par défaut : 15s.
spec.git.syncRev Révision Git (tag ou hachage) à récupérer. La valeur par défaut est HEAD.
spec.git.secretType Type de secret configuré pour l'accès au dépôt Git. Spécifiez l'un des types suivants : ssh, cookiefile, token, gcenode, gcpserviceaccount ou none. Obligatoire.
spec.sourceFormat Format de votre dépôt Git. Il peut s'agit de unstructured ou de hierarchy. Valeur par défaut : hierarchy.

Configuration du proxy pour le dépôt Git

Si les règles de sécurité de votre organisation vous obligent à acheminer le trafic via un proxy HTTP(S), vous pouvez utiliser l'URI du proxy pour configurer Config Sync de manière à communiquer avec votre hôte Git. Le proxy n'est compatible qu'avec les types d'autorisation cookiefile, none ou token.

Clé Description
spec.git.proxy.httpProxy Définit une variable d'environnement HTTP_PROXY permettant d'accéder au dépôt Git.
spec.git.proxy.httpsProxy Définit une variable d'environnement HTTPS_PROXY permettant d'accéder au dépôt Git.

Si les champs httpProxy et httpsProxy sont spécifiés, httpProxy est ignoré.