Vous pouvez déployer l'autoscaler de cluster pour ajuster automatiquement le nombre de nœuds worker dans un cluster de services TKG en fonction des demandes de vos charges de travail.

À propos de la mise à l'échelle automatique de cluster

L'autoscaler de cluster de services TKG est une implémentation de l'autoscaler de cluster Kubernetes. Pour plus d'informations, reportez-vous à la documentation de l'autoscaler de cluster.

L'autoscaler de cluster prend en charge la montée en charge et la réduction de charge des nœuds de cluster. Si vous exécutez le cluster sur un Superviseur à zones multiples, l'autoscaler peut dimensionner des pools de nœuds attribués à une zone de disponibilité spécifique.

L'autoscaler de cluster est fourni sous la forme d'un module standard que vous installez sur le cluster à l'aide de Kubectl ou de la CLI Tanzu. L'autoscaler de cluster s'exécute en tant que déploiement sur le cluster TKG à l'aide des informations d'identification du compte de service.

Il existe une relation un-à-un entre la version mineure du module d'autoscaler et la version mineure de TKr. Par exemple, si vous utilisez TKr 1.27.11, vous devez installer la version 1.27.2 de l'autoscaler. Toute incompatibilité de version entraînera l'échec du rapprochement de modules.

Bien que l'autoscaler du cluster prenne en charge la montée en charge et la mise à l'échelle des nœuds worker, dans certains cas, l'autoscaler du cluster ne fait pas baisser en charge les nœuds, car certains types d'applications empêchent la baisse de charge des nœuds. Reportez-vous à la section « Quels types d'espaces peuvent empêcher l'autorité de certification de supprimer un nœud ? » dans la documentation de l'autoscaler de cluster.

Conditions requises pour la version

L'autoscaler de cluster requiert la configuration de version suivante.
  • La version de vSphere minimale est vSphere 8 U3
  • La version minimale de TKr est TKr 1.27.x pour vSphere 8
  • La version mineure de TKr et la version mineure du module d'autoscaler de cluster doivent correspondre

Conditions requises pour les modules

L'autoscaler de cluster est fourni en tant que module standard. La version mineure du module doit correspondre à la version mineure de TKr utilisée. Par exemple, si vous utilisez TKr 1.27.11, vous devez installer la version 1.27.2 de l'autoscaler. Toute incompatibilité de version entraînera l'échec du rapprochement de modules.

Vous devrez peut-être localiser le module cible dans une version de référentiel ultérieure. Par exemple, la version 1.27.2 de l'autoscaler se trouve dans la version v2024.4.12 du référentiel de modules standard. Les versions ultérieures du module d'autoscaler, telles que 1.28.x, 1.29.x, 1.30.x, etc., se trouvent dans les versions de référentiel suivantes. Tous les référentiels de modules standard sont disponibles en exécutant la commande suivante :
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/repo

Workflow

Le workflow de haut niveau pour l'activation de la mise à l'échelle automatique du cluster est le suivant :
  1. Créez un cluster TKG, ou mettez à jour un cluster TKG existant, avec des annotations d'autoscaler et supprimez le champ de réplicas dans spec.topology.workers.machinedeployments.
  2. Installez le référentiel de modules sur le cluster TKG que vous avez créé ou mis à jour.
  3. Installez le module d'autoscaler sur le cluster TKG que vous avez créé ou mis à jour.

    L'autoscaler est installé sur le cluster TKG en tant que déploiement dans l'espace de noms kube-system.

Pour obtenir des instructions détaillées, reportez-vous aux rubriques suivantes :