Attribuez un poids à chaque type d'instance en fonction d'une métrique de performance, telle que le nombre de vCPU. Ce poids définit la capacité qu'une seule instance de ce type apporte au groupe de mise à l'échelle. Ainsi, la capacité du groupe est mesurée en unités de performance plutôt qu'en nombre d'instances.
Informations générales
Par défaut, Auto Scaling mesure la capacité d'un groupe de mise à l'échelle par le nombre d'instances. Cette approche fonctionne bien lorsqu'une configuration de mise à l'échelle spécifie un seul type d'instance, car le nombre d'instances est directement proportionnel aux performances globales. Toutefois, lorsque la configuration inclut un mélange de types d'instances, le nombre d'instances ne reflète plus la puissance de calcul totale. Par exemple, 10 instances ecs.c5.large (2 vCPU, 4 GiB) offrent la moitié des performances de 10 instances ecs.c5.xlarge (4 vCPU, 8 GiB).
Pour résoudre ce problème, attribuez un poids à chaque type d'instance. Cela vous permet de mesurer avec précision les performances du groupe de mise à l'échelle, même s'il contient différents types d'instances. Par exemple, si vous définissez chaque poids selon le nombre de vCPU du type d'instance, la capacité totale représente le nombre total de vCPU sur l'ensemble des instances.
Concepts clés
| Concept | Paramètre API | Description |
| weight | WeightedCapacity | La capacité qu'un type d'instance apporte au groupe de mise à l'échelle, basée sur une métrique de performance telle que son nombre de vCPU. |
| total capacity | TotalCapacity | La somme des unités de capacité de toutes les instances du groupe de mise à l'échelle. |
| maximum capacity | MaxSize | La valeur maximale de la capacité totale du groupe de mise à l'échelle. Remarque Après un événement de scale-out, la capacité totale peut légèrement dépasser la capacité maximale si celle-ci n'est pas divisible exactement par le poids de l'instance. Le dépassement sera inférieur au poids le plus élevé du groupe. |
| minimum capacity | MinSize | La valeur minimale de la capacité totale du groupe de mise à l'échelle. |
| desired capacity | DesiredCapacity | La valeur cible pour la capacité totale du groupe de mise à l'échelle. Auto Scaling veille à ce que la capacité totale ne descende pas en dessous de cette valeur. Remarque Après un événement de scale-out, la capacité totale peut légèrement dépasser la capacité souhaitée si celle-ci n'est pas divisible exactement par le poids de l'instance. Le dépassement sera inférieur au poids le plus élevé du groupe. |
Règles de mise à l'échelle
Un événement de scale-out est déclenché lorsque la capacité totale est inférieure à la capacité souhaitée ou à la capacité minimale.
Un événement de scale-in est déclenché lorsque la capacité totale est supérieure ou égale à la somme de la capacité souhaitée et du poids le plus élevé.
Auto Scaling priorise les activités de mise à l'échelle en fonction de la politique de mise à l'échelle du groupe. Par exemple, si vous sélectionnez la politique Cost Optimization Policy, le système lance des instances à partir des types ayant le prix unitaire pondéré le plus bas et arrête les instances des types ayant le prix unitaire pondéré le plus élevé. Pour savoir comment le prix unitaire pondéré est calculé, consultez
Calcul du prix unitaire pondéré
.
Notes d'utilisation
Définissez un poids pour chaque type d'instance dans le groupe de mise à l'échelle.
Si vous supprimez un type d'instance de la configuration de mise à l'échelle, le poids des instances existantes de ce type au sein du groupe de mise à l'échelle reste inchangé.
Lorsque vous modifiez le poids d'un type d'instance comportant des instances existantes, Auto Scaling recalcule immédiatement la capacité actuelle du groupe.Cela peut déclencher une nouvelle activité de mise à l'échelle.
Procédure
Suivez cette procédure pour définir les poids des types d'instances lorsque la source de configuration du groupe de mise à l'échelle est une configuration de mise à l'échelle.
Vous pouvez également utiliser un modèle de lancement comme source de configuration. Pour définir les poids de chaque type d'instance, appelez l'opération API CreateScalingGroup et spécifiez les paramètres LaunchTemplateOverride.N.InstanceType et LaunchTemplateOverride.N.WeightedCapacity. Pour plus d'informations, consultez
.
-
Créez un groupe de mise à l'échelle.
Cette étape se concentre sur les options liées à la politique de mise à l'échelle multi-zones. Pour les autres options de groupe de mise à l'échelle, consultez
Configurer un groupe de mise à l'échelle
.
-
Définissez VPC sur VPC, puis sélectionnez plusieurs vSwitch au sein de ce VPC.
Chaque vSwitch appartient à une seule zone. La sélection de plusieurs vSwitch vous permet de créer des instances ECS dans différentes zones afin de mieux exploiter les ressources disponibles.
Définissez la politique Cost Optimization Policy sur Cost Optimized.
Configurez les autres options du groupe de mise à l'échelle selon vos besoins.
-
-
Créez une configuration de mise à l'échelle.
Cette étape se concentre sur la définition du poids du type d'instance en fonction du nombre de vCPU. Pour les autres options de configuration de mise à l'échelle, consultez
Créer une configuration de mise à l'échelle pour les instances ECS
.
Définissez l'option Pay-as-you-go sur pay-as-you-go.
Sélectionnez plusieurs types d'instances, jusqu'à un maximum de 10.
-
Sélectionnez Set vCPU Capacity. Le système définit automatiquement un poids pour chaque type d'instance sélectionné en fonction de son nombre de vCPU.
Par exemple, pour les types d'instances sélectionnés
ecs.c5.large
(2 vCPU, 4 GiB),
ecs.c5.xlarge
(4 vCPU, 8 GiB) et
ecs.c5,2xlarge
(8 vCPU, 16 GiB), les poids sont automatiquement définis sur 2, 4 et 8 respectivement.
Vous pouvez également personnaliser les poids. Lorsque vous personnalisez les poids, suivez ces recommandations :
Utilisez une métrique de performance pertinente pour votre charge de travail, telle que le nombre de vCPU ou la quantité de mémoire en GiB. Vous pouvez utiliser un seul vCPU, 1 GiB de mémoire ou votre type d'instance le moins puissant comme unité de capacité. La capacité du groupe de mise à l'échelle est ensuite calculée par rapport à cette unité.
Définissez des valeurs de poids appropriées. Assurez-vous que la capacité actuelle du groupe de mise à l'échelle est deux à trois fois supérieure au poids le plus élevé défini pour un type d'instance.
Évitez de définir des poids très différents pour différents types d'instances. Par exemple, ne définissez pas le poids d'un petit type d'instance sur 1 et celui d'un grand type d'instance sur 200. Un écart important entre les poids peut nuire à la rentabilité du groupe de mise à l'échelle.
Pour plus d'informations sur la priorité des différents types d'instances lors de la création d'instances, consultez Calcul du prix unitaire pondéré.
Configurez les autres options de configuration de mise à l'échelle selon vos besoins.
Activez le groupe de mise à l'échelle.
-
Créez une règle de mise à l'échelle.
Cette étape décrit les options requises pour un test de validation simple. Pour les autres options de règle de mise à l'échelle, consultez
Configurer des règles de mise à l'échelle
.
Définissez la règle Simple Scaling Rule sur Simple Scaling Rule.
Définissez l'Action sur Add 10 capacity units.
Configurez les autres options de la règle de mise à l'échelle selon vos besoins.
-
Exécutez la règle de mise à l'échelle.
Dans cet exemple, le type d'instance
ecs.c5,2xlarge
présente le prix unitaire pondéré le plus bas. Par conséquent, le groupe de mise à l'échelle lance deux instances
ecs.c5,2xlarge
, ajoutant 16 unités de capacité au groupe de mise à l'échelle.
Calcul du prix unitaire pondéré
Si votre groupe de mise à l'échelle utilise la politique Cost Optimization Policy et que vous avez défini des poids d'instance, Auto Scaling lance les types d'instances présentant le prix unitaire pondéré le plus bas lors d'un scale-out. Pour plus d'informations, consultez Réduire les coûts en utilisant une politique de mise à l'échelle et plusieurs types d'instances .
Le tableau suivant montre comment le prix unitaire pondéré est calculé pour différents types d'instances.
Les prix du marché indiqués dans ce tableau sont fournis à titre indicatif uniquement. Pour connaître les derniers tarifs, consultez la page
.
.
| Type d'instance | vCPU | Prix du marché | Poids | Prix unitaire pondéré |
| ecs.c5.large | 2 | 0,18 USD/heure | 2 | 0 090 USD/heure |
| ecs.c5.xlarge | 4 | 0,34 USD/heure | 4 | 0 085 USD/heure |
| ecs.c5,2xlarge | 8 | 0,64 USD/heure | 8 | 0 080 USD/heure |