Tous les produits
Search
Centre de documentation

Container Service for Kubernetes:Enable node auto scaling

Dernière mise à jour :Aug 11, 2026

Si votre cluster ne dispose pas d'une capacité suffisante pour planifier les Pods de vos applications, vous pouvez utiliser la mise à l'échelle automatique des nœuds pour ajouter ou supprimer automatiquement des nœuds. La mise à l'échelle automatique des nœuds est idéale pour les scénarios avec des besoins de mise à l'échelle limités, tels que moins de 20 pools de nœuds à mise à l'échelle automatique ou moins de 100 nœuds dans ces pools. Elle convient également aux charges de travail au trafic stable, dont la demande en ressources est prévisible et peut être satisfaite par une seule opération de mise à l'échelle, ou qui présentent des besoins périodiques ou anticipables en ressources.

Avant de commencer

Pour tirer pleinement parti de la mise à l'échelle automatique des nœuds, consultez la rubrique Mise à l'échelle des nœuds et familiarisez-vous avec les concepts suivants :

对 Fonctionnement et fonctionnalités de la mise à l'échelle automatique des nœuds

对 Cas d'utilisation où la mise à l'échelle automatique des nœuds répond à vos exigences métier

对 Points importants à considérer avant d'utiliser la mise à l'échelle automatique des nœuds

对 Lors d'une réduction de capacité (scale-in), les instances sous abonnement sont supprimées mais non libérées. Pour éviter des coûts supplémentaires, utilisez des instances au paiement à l'utilisation lorsque vous activez cette fonctionnalité.

Prérequis

  • Assurez-vous d'avoir activé Auto Scaling.

  • Consultez la section Notes d'utilisation pour comprendre les quotas et les limitations de la mise à l'échelle des nœuds.

  • La mise à l'échelle automatique des nœuds présente des limitations connues avec certaines politiques de planification, ce qui peut entraîner des résultats de mise à l'échelle inattendus. Si vos charges de travail ou vos composants utilisent une politique de planification non prise en charge, envisagez l'une des solutions suivantes :

    • Solution 1 : Basculez vers la mise à l'échelle instantanée des nœuds.

    • Solution 2 : Déployez les charges de travail ou les composants concernés dans un pool de nœuds pour lequel la mise à l'échelle des nœuds n'est pas activée.

      Par exemple, pour déployer le composant ack-node-local-dns-admission-controller, placez-le dans un pool de nœuds sans mise à l'échelle des nœuds activée et déclarez l'exigence d'affinité de nœud suivante dans la configuration du composant :

      nodeAffinity:
        requiredDuringSchedulingIgnoredDuringExecution:
          nodeSelectorTerms:
          - matchExpressions:
            - key: "k8s.aliyun.com"
              operator: "NotIn"
              values: ["true"]
  • Le composant cluster-autoscaler nécessite des ressources de nœud pour les mises à jour ou les déploiements. Des ressources insuffisantes peuvent entraîner l'échec de ces opérations et provoquer des problèmes de mise à l'échelle. Assurez-vous que vos nœuds disposent de ressources suffisantes.

Cette fonctionnalité implique les étapes suivantes :

  1. Étape 1 : Activer la mise à l'échelle automatique des nœuds pour le cluster : Vous devez d'abord activer la mise à l'échelle automatique des nœuds au niveau du cluster avant que les politiques de mise à l'échelle de vos pools de nœuds ne puissent prendre effet.

  2. Étape 2 : Configurer un pool de nœuds pour la mise à l'échelle automatique : La fonctionnalité de mise à l'échelle automatique des nœuds affecte uniquement les pools de nœuds configurés pour la mise à l'échelle automatique. Par conséquent, vous devez définir le mode de mise à l'échelle des pools de nœuds cibles sur Automatique.

Étape 1 : Activer la mise à l'échelle automatique des nœuds

  1. Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, sélectionnez Nodes > Node Pools.

  3. Sur la page Node Pools, cliquez sur Enable en regard de Node Scaling.

  4. Si vous utilisez la mise à l'échelle automatique des nœuds pour la première fois, suivez les instructions à l'écran pour activer le service Auto Scaling et accorder les autorisations requises. Vous pouvez ignorer cette étape si cela a déjà été fait.

    • Cluster géré ACK : autorisez le rôle AliyunCSManagedAutoScalerRole.

    • Cluster dédié ACK : autorisez le rôle KubernetesWorkerRole et associez la stratégie AliyunCSManagedAutoScalerRolePolicy.

      Dans la boîte de dialogue Node Scaling Configuration, une fois la vérification préalable réussie, cliquez sur le lien du rôle RAM (par exemple KubernetesWorkerRole-xxxx) pour finaliser l'autorisation dans la console RAM.

  5. Dans la boîte de dialogue Node Scaling Configuration, définissez le paramètre Node Scaling Plan sur Auto Scaling, configurez les paramètres de mise à l'échelle, puis cliquez sur OK.

    Vous pouvez modifier la méthode de mise à l'échelle des nœuds après la configuration initiale. Pour ce faire, modifiez la sélection ici pour opter pour la mise à l'échelle instantanée des nœuds. Lisez attentivement et suivez les instructions à l'écran pour terminer le processus.

    Paramètre

    Description

    Node Pool Scale-out Policy

    • Random Policy : Si plusieurs pools de nœuds sont disponibles pour l'extension, l'un d'eux est choisi au hasard.

    • Default Policy : Si plusieurs pools de nœuds sont disponibles pour l'extension, celui qui entraîne le moins de gaspillage de ressources est choisi.

    • Priority-based Policy : Si plusieurs pools de nœuds sont disponibles pour l'extension, celui ayant la priorité la plus élevée est choisi.

      La priorité du pool de nœuds est définie par le paramètre Node Pool Scale-out Priority.

    Node Pool Scale-out Priority

    Définit la priorité d'extension pour les pools de nœuds. Ce paramètre ne prend effet que lorsque le paramètre Node Pool Scale-out Policy est défini sur Priority-based Policy.

    La valeur peut être un entier compris entre 1 et 100. Une valeur plus élevée indique une priorité plus grande.

    Cliquez sur Add à côté du paramètre, sélectionnez un pool de nœuds avec la mise à l'échelle automatique activée et définissez sa priorité.

    Si aucun pool de nœuds avec la mise à l'échelle automatique activée n'est disponible, vous pouvez ignorer ce paramètre pour le moment et le configurer après avoir terminé l'Étape 2 : Configurer un pool de nœuds pour la mise à l'échelle automatique.

    Scaling Sensitivity

    L'intervalle auquel le système vérifie les conditions de mise à l'échelle. La valeur par défaut est de 60 s.

    Lors de la mise à l'échelle automatique, le composant de mise à l'échelle déclenche automatiquement l'extension en fonction des conditions de planification.

    Important
    • Nœuds ECS : Une réduction du nombre de nœuds ne peut se produire que lorsque les trois conditions suivantes sont remplies : Scale-in Threshold, Scale-in Trigger Delay et Cooldown Period.

    • Nœuds GPU : Une réduction du nombre de nœuds GPU ne peut se produire que lorsque les trois conditions suivantes sont remplies : GPU Scale-in Threshold, Scale-in Trigger Delay et Cooldown Period.

    Allow Scale-in

    Indique s'il faut autoriser les opérations de réduction du nombre de nœuds. Si cette option est désactivée, les paramètres de réduction ne prennent pas effet. Utilisez ce paramètre avec prudence.

    Scale-in Threshold

    Le ratio entre la demande totale de ressources et la capacité totale d'un seul nœud dans un pool de nœuds où la mise à l'échelle automatique des nœuds est activée.

    Un nœud est considéré pour une réduction uniquement lorsque ce ratio est inférieur au seuil configuré, ce qui signifie que son utilisation du processeur et de la mémoire est inférieure au Scale-in Threshold.

    GPU Scale-in Threshold

    Le seuil de réduction pour les instances GPU.

    Un nœud GPU est considéré pour une réduction uniquement lorsque son utilisation du processeur, de la mémoire et du GPU est inférieure au GPU Scale-in Threshold.

    Scale-in Trigger Delay

    Le temps d'attente entre la détection d'une condition de réduction et l'exécution effective de l'opération de réduction. Unité : minutes. Valeur par défaut : 10 minutes.

    Important

    Le composant de mise à l'échelle effectue une réduction du nombre de nœuds uniquement après que le Scale-in Threshold a été atteint et que la période de Scale-in Trigger Delay s'est écoulée.

    Cooldown Period

    La période suivant un événement d'extension pendant laquelle le composant de mise à l'échelle n'effectuera pas de réduction.

    Pendant la période de refroidissement, le mécanisme de mise à l'échelle n'effectue pas de réductions, mais continue d'évaluer les nœuds par rapport aux conditions de réduction. À la fin de la période de refroidissement, si un nœud a satisfait au seuil de réduction pendant plus longtemps que le délai de réduction, le mécanisme le supprime. Par exemple, si la période de refroidissement est de 10 minutes et que le délai de réduction est de 5 minutes, le mécanisme ne réduira aucun nœud pendant 10 minutes après la dernière extension. Cependant, pendant ces 10 minutes, il vérifie toujours les nœuds éligibles à la réduction. Une fois la période de refroidissement de 10 minutes terminée, si un nœud a satisfait au seuil de réduction pendant plus de 5 minutes (le délai), il est réduit.

    Afficher les paramètres avancés

    Paramètre

    Description

    Pod Termination Timeout

    Temps d'attente maximal pour la terminaison du pod lors d'une réduction. Unité : secondes.

    Si un pod n'est pas expulsé avant l'expiration du délai, le nœud n'est pas libéré.

    Minimum Pod Replicas

    Seuil de protection contre la réduction. Les nœuds contenant des pods ReplicationController ou ReplicaSet ne sont pas réduits si le nombre de réplicas tombe en dessous de cette valeur.

    S'applique uniquement aux pods ReplicationController et ReplicaSet, et non aux pods StatefulSet ou DaemonSet.

    Enable DaemonSet Pod Eviction

    Lorsque cette option est activée, les pods DaemonSet sont expulsés lorsque leur nœud est réduit.

    Ignorer les nœuds avec des pods dans l'espace de noms kube-system

    Lorsque cette option est activée, les nœuds contenant des pods de l'espace de noms kube-system sont exclus de la réduction.

    Remarque

    Cela ne s'applique pas aux pods DaemonSet ni aux pods miroirs.

Étape 2 : Configurer un pool de nœuds

Vous pouvez soit configurer un pool de nœuds existant en modifiant son Scaling Mode pour le passer à Auto, soit créer un nouveau pool de nœuds avec la mise à l'échelle automatique activée.

Pour plus d'informations, consultez la rubrique Créer et gérer des pools de nœuds. Les paramètres clés sont décrits ci-dessous :

Parameter

Description

Scaling Mode

  • Manual : ACK ajuste le nombre de nœuds dans le pool selon le Expected Number of Nodes configuré, afin de maintenir en permanence le nombre de nœuds au niveau du Expected Number of Nodes. Pour plus d'informations, consultez la rubrique Mettre à l'échelle manuellement un pool de nœuds.

  • Auto : Lorsque la planification de la capacité du cluster ne peut pas répondre aux besoins de planification des pods d'application, ACK met automatiquement à l'échelle les ressources de nœud en fonction du nombre minimal et maximal d'instances configuré. Pour les clusters en version 1.24 ou ultérieure, la mise à l'échelle instantanée des nœuds est activée par défaut. Pour les clusters antérieurs à la version 1.24, la mise à l'échelle automatique des nœuds est activée par défaut. Pour plus d'informations, consultez la rubrique Mise à l'échelle des nœuds.

Important
  • Si vous activez la réduction de capacité (scale-in), le système supprimera automatiquement des nœuds en fonction de l'utilisation des ressources, ce qui risque d'interrompre vos activités. Nous vous recommandons de configurer correctement la politique de mise à l'échelle et de mettre en place un arrêt gracieux pour vos conteneurs d'application.

  • Lors d'une réduction automatique de la capacité, les données locales stockées sur le nœud seront détruites avec celui-ci. N'utilisez pas de méthodes telles que HostPath pour écrire des données métier dans le répertoire hôte.

Instances

Plage de mise à l'échelle des nœuds dans le pool, définie par les paramètres Min. Instances et Max. Instances. Cela n'inclut pas vos instances existantes.

Remarque
  • Si Min. Instances est supérieur à 0, le nombre correspondant d'instances ECS est créé automatiquement après l'activation du groupe de mise à l'échelle.

  • Nous vous recommandons de définir Max. Instances sur une valeur au moins égale au nombre actuel de nœuds dans le pool. Sinon, une réduction de capacité sera déclenchée immédiatement après l'activation de la fonctionnalité de mise à l'échelle automatique.

Configurations liées aux instances

Lorsqu'un pool de nœuds augmente sa capacité (scale-out), il alloue des instances issues de la famille d'instances ECS configurée. Pour améliorer le taux de réussite des augmentations de capacité, sélectionnez plusieurs types d'instances sur plusieurs zones afin d'éviter les indisponibilités ou les ruptures de stock. Le type d'instance spécifique utilisé pour l'augmentation de capacité est déterminé par la Scaling Policy configurée.

Afin de garantir la stabilité de votre activité et une planification précise des ressources, ne mélangez pas les types d'instances GPU et non GPU au sein d'un même pool de nœuds.

Vous pouvez configurer les types d'instances utilisés pour l'augmentation de capacité de deux manières :

  • Types spécifiques : spécifiez les types d'instances en fonction de critères tels que les vCPU, la mémoire, la famille d'instances et l'architecture CPU (l'architecture CPU de l'instance doit être cohérente avec l'architecture de l'image du système d'exploitation).

    Lors de l'utilisation de Terway, vous pouvez consulter le nombre maximal de pods par nœud pour le type d'instance cible dans la liste des types d'instances.
  • Configuration de généralisation : sélectionnez une liste de types d'instances à utiliser ou à exclure en fonction d'attributs (tels que les vCPU et la mémoire) afin d'améliorer encore le taux de réussite de l'augmentation de capacité.

Vous pouvez vous référer aux recommandations de force d'élasticité dans la console ou consulter la force d'élasticité du pool de nœuds après la création du pool.

Pour obtenir des informations sur les types d'instances non pris en charge et des recommandations de configuration des nœuds, consultez la rubrique Recommandations de configuration des types d'instances ECS.

Ressources cloud et facturation : imageInstance ECS, imageInstance accélérée par GPU

Operating System

Lorsque la mise à l'échelle automatique est activée, vous pouvez sélectionner des images Alibaba Cloud Linux, Windows ou Windows Core.

Lorsque l'image sélectionnée est une image Windows ou Windows Core, le système configure automatiquement la taint suivante : { effect: 'NoSchedule', key: 'os', value: 'windows' }.

Node Labels

Les libellés de nœuds ajoutés dans le cluster sont automatiquement appliqués aux nœuds créés par la mise à l'échelle automatique.

Important

La mise à l'échelle automatique ne peut reconnaître les libellés et les taints des nœuds qu'après leur mappage avec les tags du pool de nœuds. Un pool de nœuds a une limite quant au nombre de tags qu'il peut contenir. Par conséquent, le nombre total de tags ECS, de taints et de libellés de nœuds pour un pool de nœuds avec mise à l'échelle automatique activée doit être inférieur ou égal à 12.

scaling policy

Configurez la manière dont le pool de nœuds sélectionne les instances lors de la mise à l'échelle.

  • Priority-based Policy : La mise à l'échelle s'effectue en fonction de la priorité des vSwitch configurés pour le cluster (la priorité des vSwitch décroît de haut en bas). Si une instance ne peut pas être créée dans la zone d'un vSwitch prioritaire, le vSwitch suivant dans l'ordre de priorité est automatiquement utilisé.

  • Cost Optimization : La mise à l'échelle s'effectue en fonction du prix unitaire par vCPU, du plus bas au plus élevé.

    Si le pool de nœuds utilise des Preemptible Instance, les instances spot sont prioritaires. Vous pouvez également configurer le Percentage of On-Demand Instances (%). Si les types d'instances spot ne peuvent pas être créés en raison de problèmes de stock ou autres, des instances à la demande sont automatiquement utilisées en complément.

  • Distribution Balancing : Répartit les instances ECS de manière équilibrée sur plusieurs zones, mais uniquement dans les scénarios multi-zones. Si la répartition devient déséquilibrée en raison d'un stock insuffisant ou d'autres raisons, vous pouvez effectuer une opération de rééquilibrage.

Use Pay-as-you-go Instances When Spot Instances Are Insufficient

Cela nécessite que la méthode de facturation soit définie sur Spot Instance.

Lorsque cette option est activée, si un nombre suffisant d'instances spot ne peut pas être créé en raison du prix, du stock ou d'autres raisons, ACK tentera automatiquement de créer des instances à la demande en complément.

Ressources cloud et facturation : imageInstance ECS

Enable Supplemental Spot Instance

Cela nécessite que la méthode de facturation soit définie sur Spot Instance.

Lorsque cette option est activée, dès réception d'un message système indiquant qu'une instance spot est sur le point d'être récupérée (5 minutes avant la récupération), ACK tentera de mettre à l'échelle une nouvelle instance en compensation.

  • Compensation réussie : ACK vide (drain) l'ancien nœud et le supprime du cluster.

  • Échec de la compensation : ACK ne vide pas l'ancien nœud. L'instance sera tout de même récupérée et libérée après 5 minutes. Lorsque le stock sera rétabli ou que les conditions de prix seront remplies, ACK achètera automatiquement une instance pour maintenir le nombre souhaité de nœuds. Pour plus d'informations, consultez la rubrique Meilleures pratiques pour les pools de nœuds avec instances spot.

La libération proactive des instances spot peut provoquer des interruptions d'activité. Pour améliorer le taux de réussite de la compensation, nous vous recommandons également d'activer l'option Use Pay-as-you-go Instances When Spot Instances Are Insufficient.

Ressources cloud et facturation : imageInstance ECS

Scaling Mode

Cela nécessite que l'Auto Scaling du pool de nœuds soit activé et que le Scaling Mode soit défini sur Auto.
  • Standard : La mise à l'échelle s'effectue en créant et en libérant des instances ECS.

  • Swift : La mise à l'échelle s'effectue en créant, en arrêtant, puis en redémarrant des instances ECS. Cela permet une mise à l'échelle plus rapide en redémarrant les instances arrêtées lorsque cela est nécessaire.

    Vous n'êtes pas facturé pour les ressources de calcul lorsqu'une instance ECS est arrêtée, uniquement pour les frais de stockage (sauf pour les familles d'instances disposant de capacités de stockage local, telles que les types Big Data et SSD local). Pour les détails de facturation et les notes relatives au mode d'arrêt des instances ECS, consultez la rubrique Mode économique.

Taints

Après avoir ajouté une taint à un nœud, le cluster ne planifie plus de Pods dessus.

Étape 3 : (Facultatif) Vérification des résultats

Une fois les étapes terminées, la fonctionnalité node auto scaling est active. L'état du pool de nœuds indique que la mise à l'échelle automatique a débuté et le composant cluster-autoscaler component est installé automatiquement.

Pool de nœuds avec mise à l'échelle automatique activée

Sur la page Node Pools, la liste affiche les pools de nœuds pour lesquels la mise à l'échelle automatique est activée.

**Composant cluster-autoscaler component installé**

  1. Dans le volet de navigation de gauche de la page de gestion du cluster, choisissez Workload > Deployments.

  2. Sélectionnez le namespace kube-system. Le composant cluster-autoscaler component s'affiche.

FAQ