Consignes concernant l'évolutivité de Config Controller

Cette page fournit des recommandations pour vous aider à planifier votre architecture de gestion de configuration sur des instances Config Controller et à maintenir la création et la gestion de vos ressources Google Cloud dans les objectifs de niveau de service (SLO).

Cibles d'évolutivité

Les cibles d'évolutivité de Config Controller sont des groupes de ressources testés par Google et à l'aide de Config Sync GitOps. Vous pouvez utiliser ces cibles pour vous aider à planifier votre architecture de gestion de configuration.

Ces cibles ne sont pas des limites strictes. L'extension d'un genre de ressource ne rend pas nécessairement l'instance Config Controller indisponible, mais peut réduire la quantité totale d'autres types de ressources que vous pouvez déployer dans la même instance Config Controller.

Les tableaux de cette page sont fournis à titre de référence et ne sont pas exhaustifs.

Espace de noms unique

L'exemple suivant montre une instance Config Controller avec un espace de noms Config Connector dans le cluster. Config Connector peut créer et gérer le nombre suivant de ressources dans cet espace de noms :

Type de ressource

Limite suggérée

SQLInstance

450

SQLDatabase

2 250

SQLUser

2,500

StorageBucket

5 000

ContainerCluster

50

ContainerNodepool

200

IAMServiceAccount

2,500

IAMPartialPolicy

7 500

Espaces de noms multiples

L'exemple suivant montre une instance Config Controller avec 50 espaces de noms Config Connector dans un cluster. Config Connector peut créer et gérer le nombre suivant de ressources dans chaque espace de noms :

Type de ressource

Limite suggérée

SQLInstance

9

SQLDatabase 45
SQLUser 45
StorageBucket 100
ContainerCluster 1
ContainerNodepool 4
IAMServiceAccount 50
IAMPartialPolicy 150

Espaces de noms de Config Connector

Config Controller utilise par défaut le mode espace de noms de Config Connector. Les tableaux suivants montrent le nombre d'espaces de noms Config Connector dont vous pouvez disposer dans une seule instance Config Connector.

--cluster-ipv4-cidr-block

Nombre de nœuds

Nombre d'espaces de noms Config Connector

/18

64

600

/19

32

300

/20 (par défaut et recommandé)

16

120

/21

8

60

Vérifier les cibles d'évolutivité

Vous pouvez utiliser les ressources suivantes pour vous aider à déterminer si vous avez atteint les cibles d'évolutivité.

Quotas d'API Google Cloud

Vous pouvez afficher vos quotas d'API Google Cloud dans la console Google Cloud. Lorsque certains quotas sont proches de leurs limites, envisagez de segmenter le quota d'API par projets Google Cloud. Pour en savoir plus sur la surveillance des métriques de quota et les alertes associées, consultez la page Surveillance des métriques de quota et alertes associées.

Utilisation de la mémoire Config Connector

Vous pouvez afficher l'utilisation de votre mémoire Config Connector dans le tableau de bord de surveillance GKE. Lorsque l'utilisation de la mémoire de Config Connector est proche de sa limite, envisagez de segmenter par espace de noms.

Effectuer un scaling à la hausse de Config Controller

Si vous avez atteint les cibles d'évolutivité, vous devriez envisager d'effectuer un scaling à la hausse de vos instances Config Controller. Cette section décrit différentes méthodes que vous pouvez utiliser pour effectuer un scaling à la hausse de vos instances Config Controller.

Segmentation par espace de noms

Si vous atteignez une cible d'évolutivité avec un seul espace de noms Config Connector, vous pouvez configurer Config Connector pour gérer les ressources dans vos espaces de noms.

Chaque espace de noms utilise ses propres comptes de service et charges de travail d'opérateur, ce qui permet à Config Connector de gérer vos ressources à grande échelle. Si vous utilisez une instance Config Connector pour gérer plusieurs projets Google Cloud, vous pouvez utiliser un espace de noms Config Connector pour gérer chaque projet Google Cloud.

Segmentation des quotas d'API par projets Google Cloud

Si vous atteignez une cible d'évolutivité après avoir atteint les quotas d'API Google Cloud, vous pouvez lier différents comptes de service IAM appartenant à différents projets Google Cloud à différents espaces de noms, où Config Connector est installée en mode espace de noms. Vous pouvez ensuite segmenter vos ressources en plusieurs projets.

Segmentation par instances Config Connector

Si vous atteignez une cible d'évolutivité avec plusieurs espaces de noms Config Connector, vous pouvez créer et utiliser plusieurs instances Config Controller. Avec plusieurs instances Config Controller, vous pouvez segmenter la gestion de configuration de vos ressources, par exemple selon différents environnements de développement, équipes d'applications ou répertoires GitOps dans votre organisation.

Autres exigences concernant l'évolutivité

Quotas d'API Google Cloud

Si vous avez rencontré des erreurs indiquant que vous avez dépassé le plafond d'utilisation des API, vous avez peut-être créé trop de ressources Config Connector du même genre dans le même projet. Ces ressources peuvent générer trop de requêtes API vers le même point de terminaison de l'API en raison de la stratégie de rapprochement dans Config Connector.

Pour résoudre ce problème, vous pouvez segmenter les quotas d'API par projet Google Cloud ou demander une augmentation de la limite des quotas.

Limites de GKE

Étant donné que Config Controller est basé sur GKE, vous devez tenir compte de certaines limites liées à GKE. Les sections suivantes traitent des considérations spécifiques liées à Config Controller. Pour en savoir plus sur les limites générales et les bonnes pratiques pour les clusters GKE volumineux, consultez la page Planifier des clusters GKE volumineux.

Limite du compte de service Kubernetes

Le nombre de comptes de service Kubernetes (KSA) créés dans un cluster GKE ne doit pas dépasser 3 000, car vous risquez de rencontrer un problème de plantage du pod gke-metadata-server.

Chaque fois que vous ajoutez un espace de noms Config Connector, il crée également un compte de service Kubernetes.

Problèmes de performances du plan de contrôle GKE

Le plan de contrôle du cluster GKE peut rencontrer des problèmes de performances si une instance Config Controller comporte trop d'espaces de noms Config Connector. Vous devez limiter le nombre d'espaces de noms Config Connector à moins de 500 par cluster.

Chaque fois que vous ajoutez un espace de noms Config Connector, il crée également un pod contrôleur.

Étapes suivantes