Un groupe de mise à l'échelle gère les instances partageant les mêmes exigences applicatives et types d'instance. Il vous permet d'étendre rapidement votre cluster et d'ajuster dynamiquement le nombre d'instances selon la demande métier, contribuant ainsi à réduire les coûts.
Pourquoi utiliser un groupe de mise à l'échelle
-
Mise à l'échelle rapide pour la haute disponibilité
Étendez rapidement votre cluster de services en ajoutant des instances pour augmenter la capacité et gérer le trafic.
-
Gérer les coûts
Le trafic n'étant pas toujours à son maximum, Auto Scaling aligne les ressources sur la demande réelle et supprime les instances inutiles, réduisant ainsi les coûts.
Solutions de mise à l'échelle
Solution 1 : Maintenir un nombre fixe d'instances
Cas d'utilisation : Maintenir la haute disponibilité d'un cluster ne nécessitant pas de mise à l'échelle dynamique.
-
Fonctionnement : Activez instance health check et configurez le Expected Number of Instances pour le groupe de mise à l'échelle.
Lorsque instance health check est activé, le groupe de mise à l'échelle supprime automatiquement les instances non saines. Si le nombre d'instances tombe en dessous du nombre attendu, Auto Scaling déclenche une mise à l'échelle horizontale pour maintenir un nombre fixe d'instances saines.
-
Exemple
Si vous souhaitez maintenir un cluster de 10 instances de service saines, définissez le Expected Number of Instances sur 10. Le groupe de mise à l'échelle déclenchera automatiquement des activités de mise à l'échelle pour maintenir ces 10 instances saines.
Solution 2 : Mise à l'échelle planifiée
Cas d'utilisation : Gérer les variations prévisibles et récurrentes des charges de travail métier.
-
Fonctionnement : Créez des Scheduled Tasks pour le groupe de mise à l'échelle afin d'automatiser les événements de mise à l'échelle horizontale (scale-out) et verticale (scale-in).
La tâche planifiée déclenche une mise à l'échelle horizontale lorsque la demande de ressources est élevée et une mise à l'échelle verticale lorsque la demande est faible. Pour un guide complet, consultez Mettre à l'échelle les instances ECS selon un planning.
-
Exemple
Par exemple, si le trafic augmente à 19 h 00 et diminue à 1 h 00 tous les jours, créez deux tâches planifiées.
Gérer les pics de trafic : Configurez une tâche de mise à l'échelle horizontale planifiée pour 19 h 00. Chaque jour à 19 h 00, la tâche ajoute des instances pour augmenter la capacité du cluster.
Gérer les creux de trafic : Configurez une tâche de mise à l'échelle verticale planifiée pour 1 h 00. Chaque jour à 1 h 00, la tâche supprime des instances pour améliorer l'utilisation des ressources et réduire les coûts.
Solution 3 : Mise à l'échelle basée sur des seuils (CPU, utilisation de la mémoire, etc.)
Cas d'utilisation : Répondre aux changements soudains et imprévisibles de la charge de travail en déclenchant la mise à l'échelle lorsqu'une métrique de ressource franchit un seuil défini.
-
Fonctionnement
Tâche déclenchée par un événement
Configurez des Event-triggered Tasks pour votre groupe de mise à l'échelle. Lorsqu'une métrique de ressource franchit un seuil spécifié, une alarme déclenche une activité de mise à l'échelle.
Règle avec suivi de cible
Créez une Target Tracking Scaling Rule pour maintenir une métrique de ressource de votre groupe de mise à l'échelle à une valeur cible ou à proximité de celle-ci.
Exemple
Pour un groupe de mise à l'échelle ECS, créez une règle de mise à l'échelle avec suivi de cible définissant la cible d'utilisation moyenne du CPU à 80 %. Auto Scaling ajoutera ou supprimera automatiquement des instances pour maintenir l'utilisation moyenne du CPU du groupe à 80 % ou à proximité de cette valeur.
-
Comparaison des deux méthodes
Les tâches déclenchées par un événement offrent une plus grande flexibilité et personnalisation. Vous contrôlez exactement le nombre d'instances à ajouter ou à supprimer lors du déclenchement d'une alarme et pouvez définir différentes réponses de mise à l'échelle pour divers paliers d'utilisation des ressources.
Les règles de mise à l'échelle avec suivi de cible sont plus simples à configurer. Il suffit de définir la valeur cible d'une métrique ; Auto Scaling gère le reste.
Solution 4 : Mise à l'échelle personnalisée (mise à l'échelle manuelle)
Si ces solutions ne répondent pas à vos besoins, créez une solution de mise à l'échelle personnalisée.
Déclenchez des activités de mise à l'échelle en exécutant manuellement une règle de mise à l'échelle ou en modifiant le nombre d'instances dans un groupe de mise à l'échelle. Pour un guide complet, consultez Mettre à l'échelle manuellement les instances ECS en un clic.
La mise à l'échelle manuelle prend en charge les appels API. Écrivez vos propres programmes pour appeler l'API et construire une solution de mise à l'échelle personnalisée adaptée à votre activité.
Solution 5 : Mise à l'échelle prédictive
Les groupes de mise à l'échelle peuvent prévoir la demande future de ressources et effectuer une mise à l'échelle automatique.
Configurez une règle de prédiction et exécutez-la en mode « prévision uniquement » pour évaluer sa précision. Si la prévision répond à vos besoins, activez l'option Predict and Scale. La règle de prédiction crée alors automatiquement des tâches planifiées basées sur la prévision pour mettre à l'échelle le groupe. Pour plus de détails, consultez Afficher l'effet d'une règle de mise à l'échelle prédictive.
Notes d'utilisation
Avant d'utiliser un groupe de mise à l'échelle, assurez-vous que votre application prend en charge la mise à l'échelle horizontale.
Vérifiez si l'ajout d'instances affecte les opérations métier de votre cluster.
-
Cohérence des données
Si des bases de données s'exécutent sur les instances mises à l'échelle, la mise à l'échelle horizontale peut entraîner des incohérences de données. Pour éviter cela, déployez votre base de données de manière indépendante afin que toutes les instances partagent une seule base de données, rendant ainsi vos services sans état.
-
Sécurité des données
Les instances d'un groupe de mise à l'échelle sont créées et libérées automatiquement. Sauvegardez toutes les données stockées sur ces instances pour garantir leur sécurité.