Auto Scaling ajuste les ressources de calcul selon vos politiques pour gérer les fluctuations du trafic et réduire les coûts. Pour les charges de travail imprévisibles, utilisez des tâches déclenchées par des événements afin de surveiller des métriques telles que l'utilisation du CPU et d'ajouter ou de supprimer automatiquement des instances ECS lorsque les seuils sont atteints.
Scénarios
Description du scénario
La demande de service fluctue de manière imprévisible, ce qui rend difficile la détermination à l'avance du nombre de serveurs requis.
Par exemple, un site d'actualités connaît un trafic imprévisible. Lorsqu'une actualité majeure survient, le trafic augmente brusquement. Une fois que l'actualité n'est plus d'actualité, le trafic diminue.
Solution
Utilisez des tâches déclenchées par des événements avec Cloud Monitor pour exécuter des règles de mise à l'échelle lorsque les métriques de surveillance répondent aux conditions spécifiées, permettant ainsi une mise à l'échelle automatique des serveurs en fonction de la charge de travail.
Avantages
-
Aucun coût pour les serveurs en attente
Auto Scaling crée et libère des instances ECS à la demande, éliminant ainsi les serveurs en attente. Vous ne maintenez que les ressources de calcul nécessaires au trafic quotidien.
-
Mise à l'échelle automatique
Cloud Monitor suit les changements de charge en temps réel, permettant une mise à l'échelle automatique qui répond aux besoins métier tout en réduisant les coûts liés aux ressources et à l'exploitation et à la maintenance.
Prérequis
La première fois que vous utilisez Auto Scaling, vous devez effectuer l'autorisation de l'utilisateur Resource Access Management (RAM).
Le rôle lié au service AliyunServiceRoleForAutoScaling est créé. Pour plus d'informations, consultez Rôles liés au service.
Si vous utilisez Auto Scaling en tant qu'utilisateur RAM, celui-ci doit disposer de la stratégie AliyunESSFullAccess. Pour plus d'informations, consultez Accorder des autorisations à un utilisateur RAM.
Étape 1 : Créer un groupe de mise à l'échelle
Un groupe de mise à l'échelle est un ensemble d'instances qui répondent à vos besoins métier et constitue l'unité centrale d'Auto Scaling. Auto Scaling ajuste le nombre d'instances dans les groupes de mise à l'échelle en les ajoutant ou en les supprimant selon les besoins.
-
Accédez à la page Scaling Groups.
Connectez-vous à la console Auto Scaling.
Dans le volet de navigation de gauche, cliquez sur Scaling Groups.
Dans la barre de navigation supérieure, sélectionnez la région où Auto Scaling est activé.
Dans le coin supérieur gauche de la page Scaling Groups, cliquez sur Create.
-
Sous l'onglet Create by Form, configurez le groupe de mise à l'échelle et cliquez sur Create.
Le tableau suivant décrit les paramètres utilisés dans cette rubrique. Les paramètres non couverts dans le tableau suivant conservent leurs valeurs par défaut. Pour savoir comment créer un groupe de mise à l'échelle, consultez Créer des groupes de mise à l'échelle.
Parameter
Example
Description
Scaling Group Name
test
Saisissez un nom pour le groupe de mise à l'échelle. Le nom doit respecter les exigences de format affichées dans l'interface utilisateur.
Type
ECS
Sélectionnez ECS, ce qui indique que le groupe de mise à l'échelle contient des instances ECS.
Instance Configuration Source
Create from Scratch
Ne spécifiez pas le modèle de création automatique des instances ECS à ce stade. Une fois le groupe de mise à l'échelle créé, vous pourrez procéder à la création d'une configuration de mise à l'échelle.
Minimum Number of Instances
1
Spécifiez le nombre minimal d'instances dans le groupe de mise à l'échelle. Si le nombre d'instances dans le groupe tombe en dessous de cette valeur, Auto Scaling ajoutera des instances ECS jusqu'à atteindre le minimum souhaité.
Maximum Number of Instances
5
Spécifiez le nombre maximal d'instances dans le groupe de mise à l'échelle. Si le nombre d'instances dépasse cette valeur, Auto Scaling supprimera des instances ECS jusqu'à ce que le nombre d'instances tombe en dessous de la limite spécifiée.
VPC
vpc-bp1jmxxau0lur929p****
Sélectionnez un VPC pour les instances ECS du groupe de mise à l'échelle.
vSwitch
vsw-2zeknnyw2ewufbs4z****
vsw-2zesy03h8eaf9fe0l****
Sélectionnez un ou plusieurs vSwitches pour les instances ECS du groupe de mise à l'échelle. Nous vous recommandons de sélectionner plusieurs vSwitches pour améliorer le taux de réussite des événements de mise à l'échelle horizontale.
Étape 2 : Créer une configuration de mise à l'échelle, puis activer la configuration et le groupe de mise à l'échelle
Une configuration de mise à l'échelle est un modèle utilisé pour créer des instances ECS lors d'événements de montée en puissance (scale-out). Elle inclut des informations telles que la méthode de facturation, le type d'instance, le stockage et les paramètres réseau. Après avoir créé une configuration de mise à l'échelle, vous pouvez l'activer, puis activer le groupe de mise à l'échelle.
-
Recherchez le groupe de mise à l'échelle que vous souhaitez gérer et ouvrez sa page de détails en suivant l'une des méthodes ci-dessous :
Dans la colonne Scaling Group Name/ID, cliquez sur l'ID du groupe de mise à l'échelle.
Dans la colonne Actions, cliquez sur Details.
En haut de la page, cliquez sur l'onglet Scaling Configurations.
Sous l'onglet Scaling Configurations, cliquez sur Create Scaling Configuration.
-
Sur la page Create Scaling Configuration, configurez les paramètres pour créer une configuration de mise à l'échelle, puis cliquez sur Create.
Le tableau suivant décrit les paramètres utilisés dans cette rubrique. Les paramètres non mentionnés conservent leurs valeurs par défaut. Pour plus d'informations sur la création d'une configuration de mise à l'échelle, consultez la rubrique Créer une configuration de mise à l'échelle (instance ECS).
Section
Parameter
Example
Description
Basic Information
Scaling Configuration Name
test
Saisissez un nom pour la configuration de mise à l'échelle. Le nom doit respecter le format indiqué dans l'interface utilisateur.
Billing Method
Définissez la valeur sur Pay-as-you-go.
Auto Scaling est gratuit. Toutefois, des frais s'appliquent aux instances ECS créées lors des événements de montée en puissance. Dans cet exemple, la méthode de facturation au paiement à l'utilisation est utilisée. Pour plus d'informations, consultez la rubrique Présentation de la facturation d'ECS.
Image and Instance
Instance Configuration Mode
Specify Instance Pattern
Sélectionnez Specify Instance Pattern pour choisir les spécifications des instances ECS.
Instance Attribute Combination
2 vCPUs, 4 GiB Memory, Enterprise Level
Sélectionnez le nombre approprié de vCPU et la taille de mémoire pour les instances ECS en fonction de vos besoins métier.
Select Image
Public Image: Alibaba Cloud Linux 3.2104 LTS 64-bit
Sélectionnez une image pour déployer les instances ECS. Cet exemple utilise une image publique. Dans des scénarios réels, vous pouvez choisir une image personnalisée spécifique à votre application.
Storage
System Disk
Enterprise SSD (ESSD), 40 GiB, PL0
Sélectionnez un disque système pour les instances ECS.
Network and Security Group
Public IP Address
Assign Public IPv4 Address, Pay-by-bandwidth, et bande passante de 1 Mbit/s
Spécifiez si des adresses IP publiques doivent être attribuées aux instances ECS. La bande passante sortante publique est facturée séparément et les frais sont inclus dans le coût de vos instances ECS.
Security Group
sg-bp18kz60mefsicfg****
Sélectionnez un groupe de sécurité existant. Pour savoir comment créer un groupe de sécurité, consultez la rubrique Créer un groupe de sécurité.
Management Settings
Logon Credentials
Set Later
Sélectionnez Set Later, ce qui vous oblige à configurer manuellement les mots de passe des instances ECS après leur création.
Dans la boîte de dialogue Preview Scaling Configuration, confirmez les informations et cliquez sur Create Order.
Dans le message The scaling configuration is created., cliquez sur Enable.
-
Dans la boîte de dialogue Apply Scaling Configuration, cliquez sur OK.
RemarqueVous devez activer une configuration de mise à l'échelle au sein d'un groupe de mise à l'échelle. Une fois activée, la configuration de mise à l'échelle passe à l'état Active.
-
Dans le message Enable Scaling Group, cliquez sur OK.
Le groupe de mise à l'échelle doit être activé pour permettre à Auto Scaling de mettre automatiquement les instances à l'échelle en fonction de vos besoins métier.
Dans cet exemple, le paramètre Minimum Number of Instances est défini sur 1. Lorsque vous activez le groupe de mise à l'échelle, Auto Scaling crée automatiquement une instance ECS à partir de la configuration de mise à l'échelle activée. Vous pouvez accéder à l'onglet Instances de la page de détails du groupe de mise à l'échelle et vérifier les informations de l'instance sous l'onglet Auto Created.
Étape 3 : Créer des règles de mise à l'échelle
Une règle de mise à l'échelle définit l'action spécifique à entreprendre lors d'un événement de mise à l'échelle, par exemple le nombre d'instances à ajouter ou à supprimer.
Sur la page des détails du groupe de mise à l'échelle, cliquez sur l'onglet Scaling Rules and Event-triggered Tasks. Ensuite, cliquez sur l'onglet Scaling Rules.
-
Cliquez sur Create Scaling Rule, configurez les paramètres pour créer la règle de mise à l'échelle, puis cliquez sur OK.
Dans cet exemple, nous créons des règles de mise à l'échelle simples. Pour plus d'informations sur la création d'une règle de mise à l'échelle, consultez la rubrique Configurer des règles de mise à l'échelle.
Parameter
Description
Rule Name
Saisissez un nom pour la règle de mise à l'échelle. Le nom doit respecter le format indiqué dans l'interface utilisateur.
Rule Type
Spécifiez le type de règle de mise à l'échelle. Dans cet exemple, sélectionnez Simple Scaling Rule. Pour plus d'informations sur les règles de mise à l'échelle, consultez la rubrique Règles de mise à l'échelle.
Operation
Spécifiez le nombre d'instances à ajouter ou à supprimer lors de l'exécution de la règle de mise à l'échelle. Le nombre d'instances ajoutées ou supprimées lors de chaque événement de mise à l'échelle ne doit pas dépasser 1 000.
Cooldown Time
Facultatif. Spécifiez la période de refroidissement pour la règle de mise à l'échelle. Unité : secondes. Si vous ne configurez pas ce paramètre, la période de refroidissement du groupe de mise à l'échelle s'applique. Pour plus d'informations, consultez la rubrique Période de refroidissement.
Répétez cette étape pour créer des règles de scale-out et de scale-in. Le tableau suivant décrit les configurations utilisées dans cet exemple.
Règle de mise à l'échelle
Exemple
Règle de scale-out
Rule Name : add
Rule Type : Simple Scaling Rule
Operation : Add 1 Instance
Règle de scale-in
Rule Name : remove
Rule Type : Simple Scaling Rule
Operation : Remove 1 Instance.
Étape 4 : Créer une tâche déclenchée par un événement
Une tâche déclenchée par un événement surveille les métriques en temps réel. Lorsque les statistiques répondent aux conditions spécifiées, une alerte se déclenche et une règle de mise à l'échelle s'exécute.
Sur la page des détails du groupe de mise à l'échelle, cliquez sur l'onglet Scaling Rules and Tasks.
-
Sous l'onglet Event-triggered Tasks (System), cliquez sur Create Event-Triggered Task, configurez la tâche, puis cliquez sur OK.
RemarqueCette rubrique utilise des métriques système. Vous pouvez également publier des métriques métier personnalisées pour créer des tâches déclenchées par un événement. Consultez la rubrique Présentation des tâches déclenchées par un événement.
Les configurations clés sont décrites ci-dessous. Conservez les paramètres par défaut pour les éléments non mentionnés. Consultez la rubrique Configurer une tâche déclenchée par un événement.
Configuration Item
Description
Name
Saisissez un nom de tâche. Les exigences de format sont indiquées dans la console.
Alert Condition
Sélectionnez une ou plusieurs métriques définies par le système comme conditions d'alerte. Pour ajouter des métriques, cliquez sur Add Metric.
Éléments de configuration :
Metric : une métrique de surveillance système. Par exemple, (ECS) CPU Utilization surveille l'utilisation du processeur des instances ECS dans le groupe de mise à l'échelle.
Statistical Method : détermine si la métrique dépasse le seuil en fonction de la valeur moyenne, maximale ou minimale. Par exemple, Average >= 70% déclenche une alerte lorsque l'utilisation moyenne du processeur dans le groupe de mise à l'échelle atteint 70 % ou plus.
Règle de réponse aux alertes
Sélectionnez la règle de mise à l'échelle à exécuter après le déclenchement d'une alerte.
Répétez cette étape pour créer des tâches déclenchées par un événement pour les règles de scale-out et de scale-in. Configurations d'exemple :
Tâche déclenchée par un événement
Configuration d'exemple
Scale-out déclenché par une alerte
Name : alarm-add
Alert Condition : (ECS) CPU Utilization > Average > 70 %
Règle à exécuter : add
Scale-in déclenché par une alerte
Name : alarm-remove
Alert Condition : (ECS) CPU Utilization > Average < 20 %
Action post-alerte : remove
Vérification de l'effet de la mise à l'échelle automatique
Une fois les tâches déclenchées par événement créées, le système surveille les métriques en temps réel et lance des activités de mise à l'échelle lorsque les conditions sont remplies.
Résultats attendus :
Lorsque l'utilisation du CPU des instances ECS dans le groupe de mise à l'échelle dépasse 70 %, une instance ECS est automatiquement ajoutée.
Lorsque l'utilisation du CPU des instances ECS dans le groupe de mise à l'échelle est inférieure à 20 %, une instance ECS est automatiquement supprimée.
Utilisez un outil de test de charge pour vérifier les résultats :
Pendant l'exécution d'une tâche déclenchée par événement, accédez à la page des détails du groupe de mise à l'échelle. Cliquez sur l'onglet Instances, puis sur l'onglet Auto Created pour observer les variations du nombre d'instances.
Une fois qu'une tâche déclenchée par événement est terminée, accédez à la page des détails du groupe de mise à l'échelle. Dans l'onglet Scaling Activities, vérifiez que l'activité de mise à l'échelle s'est déroulée comme prévu. Cliquez sur l'ID de l'activité pour afficher les détails.