SUS02-BP01 Faire évoluer l'infrastructure de charge de travail de manière dynamique - AWS Framework Well-Architected

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

SUS02-BP01 Faire évoluer l'infrastructure de charge de travail de manière dynamique

Utilisez l’élasticité du cloud et mettez à l’échelle votre infrastructure de façon dynamique afin de rapprocher l’offre de ressources cloud de la demande et d’éviter de sur provisionner une capacité dans votre charge de travail.

Anti-modèles courants :

  • Vous ne mettez pas à l’échelle votre infrastructure avec la charge de l’utilisateur.

  • Vous mettez à l’échelle manuellement votre infrastructure en permanence.

  • Vous conservez une capacité accrue après un événement de mise à l’échelle au lieu de la réduire.

Avantages liés au respect de cette bonne pratique : la configuration et le test de l’élasticité de la charge de travail permettent de faire correspondre efficacement l’offre de ressources cloud à la demande et d’éviter le sur provisionnement de capacité. Vous pouvez profiter de l’élasticité du cloud pour mettre à l’échelle automatiquement la capacité pendant et après les pics de demande, afin d’utiliser uniquement le bon nombre de ressources nécessaires pour répondre aux exigences de votre entreprise.

Niveau de risque encouru si cette bonne pratique n’est pas respectée : moyen

Directives d’implémentation

Le cloud vous apporte la flexibilité dont vous avez besoin pour développer ou réduire vos ressources de manière dynamique via une grande variété de mécanismes afin de répondre aux fluctuations de la demande. Rapprocher de façon optimale l’offre de la demande a le plus faible impact environnemental pour une charge de travail.

La demande peut être fixe ou variable, ce qui nécessite des métriques et une automatisation pour que la gestion ne devienne pas contraignante. Les applications peuvent se mettre à l’échelle de façon verticale (dans les deux sens) en modifiant la taille de l’instance, de façon horizontale (dans les deux sens) en modifiant le nombre d’instances, ou une combinaison des deux.

Vous pouvez utiliser plusieurs approches pour rapprocher l’offre de ressources de la demande.

  • Approche de suivi des objectifs : surveillez votre métrique de capacité de mise à l’échelle et augmentez ou réduisez automatiquement votre capacité selon vos besoins.

  • Mise à l’échelle prédictive : mettez à l’échelle en prévision des tendances quotidiennes et hebdomadaires.

  • Approche basée sur le calendrier : définissez votre propre calendrier de mise à l’échelle en fonction de changements de charge prévisibles.

  • Mise à l’échelle des services : choisissez des services (tels que les services sans serveur) qui sont évolutifs de manière native dès leur conception ou qui proposent une mise à l’échelle automatique en tant que fonctionnalité.

Identifiez les périodes d’utilisation faible ou nulle, et mettez vos ressources à l’échelle afin de supprimer toute capacité excédentaire et améliorer l’efficacité.

Étapes d’implémentation

  • L’élasticité correspond à l’offre de ressources dont vous disposez et à la demande pour ces ressources. Les instances, les conteneurs et les fonctions fournissent des mécanismes d'élasticité, soit en combinaison avec le dimensionnement automatique, soit en tant que fonctionnalité du service. AWS fournit une gamme de mécanismes de mise à l'échelle automatique pour garantir que les charges de travail peuvent être réduites rapidement et facilement pendant les périodes de faible charge utilisateur. Voici des exemples de mécanismes de mise à l’échelle automatique :

    Mécanisme de mise à l’échelle automatique Où utiliser

    Amazon EC2 Auto Scaling

    À utiliser pour vérifier que vous disposez du nombre correct d'EC2instances Amazon disponibles pour gérer la charge utilisateur de votre application.

    Application Autoscaling

    À utiliser pour dimensionner automatiquement les ressources pour des AWS services individuels autres qu'AmazonEC2, tels que les fonctions Lambda ou les services Amazon Elastic Container Service ECS (Amazon).

    Outil Cluster Autoscaler de Kubernetes

    À utiliser pour dimensionner automatiquement les clusters Kubernetes. AWS

  • La mise à l'échelle est souvent abordée en relation avec les services de calcul tels que EC2 les instances ou AWS Lambda les fonctions Amazon. Envisagez la configuration de services non informatiques tels que les unités de capacité de lecture et d’écriture Amazon DynamoDB ou les partitions Amazon Kinesis Data Streams pour répondre à la demande.

  • Vérifiez que les métriques de l’augmentation ou de la diminution sont validées par rapport au type de charge de travail déployée. Si vous déployez une application de transcodage vidéo, un taux d'CPUutilisation de 100 % est attendu et ne doit pas être votre indicateur principal. Le cas échéant, vous pouvez utiliser une métrique personnalisée (telle que l’utilisation de la mémoire) pour votre politique de mise à l’échelle. Pour choisir les bons indicateurs, prenez en compte les conseils suivants pour Amazon EC2 :

    • La métrique doit être une métrique d’utilisation valide et décrire à quel point l’instance est occupée.

    • La valeur de métrique doit augmenter ou diminuer en proportion du nombre d’instances présentes dans le groupe Auto Scaling.

  • Utilisez une mise à l’échelle dynamique plutôt qu’une mise à l’échelle manuelle pour votre groupe Auto Scaling. Nous vous recommandons également d’utiliser des politiques de dimensionnement pour le suivi des cibles dans votre dimensionnement dynamique.

  • Vérifiez que les déploiements de charges de travail peuvent gérer à la fois les événements d’augmentation et de diminution des charges de travail. Créez des scénarios de test pour les événements de diminution afin de vérifier que la charge de travail se comporte comme prévu et n’a aucun impact sur l’expérience utilisateur (comme la perte de sessions permanentes). Vous pouvez utiliser l’historique des activités pour vérifier une activité de mise à l’échelle dans un groupe Auto Scaling.

  • Évaluez votre charge de travail pour les modèles prédictifs et mettez-la à l’échelle de manière proactive pour anticiper les changements prévisibles et prévus de la demande. Avec la mise à l’échelle prédictive, vous pouvez supprimer le besoin de surprovisionner de la capacité. Pour plus de détails, consultez Predictive Scaling with Amazon EC2 Auto Scaling.

Ressources

Documents connexes :

Vidéos connexes :

Exemples connexes :