Une règle de mise à l'échelle par suivi de cible intègre Auto Scaling à CloudMonitor pour ajuster automatiquement le nombre d'instances (scale-in ou scale-out) en fonction d'une valeur cible de métrique spécifiée, garantissant ainsi la stabilité de votre système face aux variations de charge.
Introduction
La règle de mise à l'échelle par suivi de cible est un type avancé basé sur les règles de mise à l'échelle simples. Vous sélectionnez une métrique CloudMonitor et spécifiez une valeur cible. Auto Scaling calcule automatiquement le nombre d'instances à ajouter ou à supprimer pour maintenir la métrique à cette valeur cible ou à proximité.
Auto Scaling prend en charge quatre types de règles de mise à l'échelle : les règles de mise à l'échelle par paliers, les règles de mise à l'échelle prédictive, les règles de mise à l'échelle simples et les règles de mise à l'échelle par suivi de cible. Présentation des règles de mise à l'échelle.
Métriques et fonctionnalités
Métriques
La métrique que vous choisissez doit refléter la charge globale des instances du groupe de mise à l'échelle et varier proportionnellement au nombre d'instances.
Les métriques CloudMonitor prises en charge varient selon le type de groupe de mise à l'échelle :
-
Groupes de mise à l'échelle ECS
Métrique API
Métrique Console
CpuUtilization
(ECS) Utilisation moyenne du CPU
IntranetRx
(ECS) Trafic interne entrant moyen
IntranetTx
(ECS) Trafic interne sortant moyen
ClassicInternetRx/VpcInternetRx
(ECS) Trafic public entrant moyen
Remarque-
Si le groupe de mise à l'échelle utilise le Classic Network, cette métrique fait référence au trafic public entrant moyen sur le réseau classique.
-
Si le groupe de mise à l'échelle utilise un VPC, cette métrique fait référence au trafic public entrant moyen sur le VPC.
ClassicInternetTx/VpcInternetTx
(ECS) Trafic public sortant moyen
Remarque-
Si le groupe de mise à l'échelle utilise le Classic Network, cette métrique fait référence au trafic public sortant moyen sur le réseau classique.
-
Si le groupe de mise à l'échelle utilise un VPC, cette métrique fait référence au trafic public sortant moyen sur le VPC.
MemoryUtilization
(Agent) mémoire
Utilisation de la mémoire collectée par l'agent CloudMonitor.
LoadBalancerRealServerAverageQps
(ALB) QPS per Backend Server
RemarqueSi vous sélectionnez cette métrique, vous devez également spécifier le groupe de serveurs ALB correspondant.
-
-
Groupes de mise à l'échelle ECI
Métrique API
Métrique Console
EciPodCpuUtilization
CPU Utilization
EciPodMemoryUtilization
Memory
LoadBalancerRealServerAverageQps
(ALB) QPS per Backend Server
RemarqueSi vous sélectionnez cette métrique, vous devez également spécifier le groupe de serveurs ALB correspondant.
Fonctionnalités
-
Disable Scale-in : Empêche la règle de supprimer automatiquement des instances. Activez la fonctionnalité Disable Scale-in pour n'utiliser que l'augmentation (scale-out).
Pour activer Disable Scale-in, sur la page Create Scaling Rule, activez l'interrupteur
pour Disable Scale-in. Vous pouvez également appeler CreateScalingRule et définir DisableScaleIn sur true.Lorsque Disable Scale-in est activé, la règle crée uniquement une tâche déclenchée par événement pour l'augmentation (scale-out). Vous gérez la réduction (scale-in) séparément, par exemple en utilisant une autre tâche déclenchée par événement qui surveille une métrique différente et déclenche une règle de mise à l'échelle simple.
Lorsque Disable Scale-in est désactivé, la règle gère les tâches déclenchées par événement pour l'augmentation (scale-out) et la réduction (scale-in).
-
Instance Warmup Time : Temps nécessaire à une instance nouvellement ajoutée pour s'initialiser avant de contribuer aux métriques du groupe de mise à l'échelle.
Une nouvelle instance doit terminer le déploiement du service, les contrôles d'intégrité de l'équilibreur de charge et la collecte des données avant de rapporter des métriques stables. Définissez un Instance Warmup Time approprié pour la règle de mise à l'échelle. Le groupe de mise à l'échelle rejette les exécutions de règles de mise à l'échelle pendant cette période.
Effets de la période de préchauffage :
Pendant le préchauffage, l'instance ne rapporte pas de données à CloudMonitor. CloudMonitor exclut les instances en préchauffage de l'agrégation des métriques.
Après le préchauffage, l'instance rapporte des données et est comptabilisée dans la capacité du groupe de mise à l'échelle.
-
Les instances en préchauffage sont exclues de la capacité de base lors du calcul de la prochaine augmentation (scale-out).
Exemple : Un groupe de mise à l'échelle compte 2 instances. Une augmentation ajoute 5 instances avec un préchauffage de 300 secondes. Si une autre augmentation se déclenche pendant le préchauffage, le calcul utilise toujours 2 comme base.
Lors d'une réduction (scale-in), Auto Scaling définit un temps de refroidissement par défaut basé sur l'activité historique pour empêcher la suppression d'instances en préchauffage en raison d'activités de réduction continues causées par la latence des données.
Comparaison avec les règles de mise à l'échelle simples
Le tableau suivant compare les règles de mise à l'échelle par suivi de cible aux règles de mise à l'échelle simples :
|
Élément |
Règle de mise à l'échelle simple |
Règle de mise à l'échelle par suivi de cible |
|
Implication de l'utilisateur |
Élevée. Vous personnalisez les activités de mise à l'échelle pour une utilisation des ressources à la demande, mais vous devez surveiller les activités et gérer les seuils manuellement. |
Faible. La mise à l'échelle est entièrement gérée. Vous spécifiez uniquement la valeur cible de la métrique. |
|
Granularité de l'ajustement |
Fixe. Vous configurez un nombre fixe d'instances à ajouter ou à supprimer en fonction de votre expérience. La règle ne peut pas réagir aux changements de métriques en temps réel. |
Précise. La règle calcule le nombre d'instances à partir des métriques historiques et de la valeur cible, effectuant de petits ajustements dynamiques pour rester proche de la cible. |
|
Processus d'ajustement |
Manque de contrôle fin :
|
Offre un contrôle flexible :
|
Créer une règle de mise à l'échelle par suivi de cible
Remarques
Avant de créer une règle de mise à l'échelle par suivi de cible, tenez compte des points suivants :
Une seule règle de mise à l'échelle par suivi de cible par type de métrique est autorisée au sein d'un groupe de mise à l'échelle.
-
La création d'une règle de mise à l'échelle par suivi de cible génère automatiquement deux tâches déclenchées par événement CloudMonitor.
Vous ne pouvez ni modifier ni supprimer ces tâches. Vous pouvez uniquement les consulter, les activer ou les désactiver. Pour supprimer les tâches, supprimez la règle de mise à l'échelle par suivi de cible correspondante.
-
La tâche d'augmentation (scale-out) utilise une politique agressive ; la tâche de réduction (scale-in) utilise une politique conservatrice.
Exemple : Avec un intervalle d'échantillonnage de 60 secondes, l'augmentation se déclenche après 3 minutes consécutives dépassant le seuil ; la réduction se déclenche après 15 minutes consécutives en dessous du seuil.
-
Lors du déclenchement, Auto Scaling calcule le nombre d'instances en fonction des métriques historiques. L'augmentation arrondit à l'entier supérieur ; la réduction arrondit à l'entier inférieur.
Exemple : Si le calcul indique qu'il faut ajouter 1,5 instance, 2 instances sont ajoutées. Si 1,5 instance doivent être supprimées, 1 instance est supprimée.
Si les données de métriques sont insuffisantes, aucune activité de mise à l'échelle n'est déclenchée.
-
Avec un petit nombre d'instances, la valeur de la métrique peut s'écarter considérablement de la cible car chaque instance a un impact important sur la métrique agrégée.
Exemple : Lors d'une réduction (scale-in), une tâche déclenchée par événement peut rester dans l'état Alarme sans déclencher d'activité si le nombre de suppressions calculé est inférieur à 1.
Procédure
Créez une règle de mise à l'échelle par suivi de cible en utilisant la console Auto Scaling ou une opération API :
Console : Sélectionnez le groupe de mise à l'échelle et configurez la règle. Configurer les règles de mise à l'échelle.
API : Appelez CreateScalingRule pour créer une règle de mise à l'échelle par suivi de cible.