PERF02-BP05 Utiliser l'élasticité des ressources disponible
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. En prenant en compte les métriques liées au calcul, vous pouvez faire en sorte qu'une charge de travail réagisse automatiquement à ces fluctuations et utilise les ressources optimales pour atteindre son objectif.
L'équilibre optimal de l'offre et de la demande donne lieu aux coûts les plus bas pour une charge de travail, mais vous devez également planifier une offre suffisante pour compenser les délais de mise en service et les panne de ressources individuelles. La demande peut être fixe ou variable, et nécessiter des métriques et des automatisations afin de s'assurer que la gestion ne devient pas un coût important et disproportionné.
Dans AWS, vous pouvez utiliser plusieurs approches pour adapter l'offre à la demande. Le livre blanc Pilier Optimisation des coûts décrit comment utiliser les approches suivantes en matière de coût :
-
Approche basée sur la demande
-
Approche basée sur la mise en attente
-
Approche basée sur le temps
Vous devez vous assurer que les déploiements de charge de travail peuvent gérer les événements de mise à l'échelle ascendante et descendante. Créez des scénarios de test pour les événements de diminution de charge de travail afin de vous assurer que cette dernière se comporte comme prévu.
Anti-modèles courants :
-
Vous réagissez aux alertes en augmentant manuellement la capacité.
-
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 réaliser des économies, de gérer des points de référence des performances et d'améliorer la fiabilité à mesure que le trafic change. La plupart des instances non liées à la production devraient être arrêtées lorsqu'elles ne sont pas utilisées. Quoique possible, l'arrêt manuel des instances inutilisées n'est pas pratique à des échelles plus importantes. Vous pouvez également tirer parti de l'élasticité basée sur le volume, qui vous permet d'optimiser les performances et les coûts en augmentant automatiquement le nombre d'instances de calcul pendant les pics de demande et en réduisant la capacité lorsque la demande diminue.
Niveau de risque exposé si cette bonne pratique n'est pas respectée : Moyenne entreprise
Directives d'implémentation
Tirer parti de l'élasticité : l'élasticité fait référence aux ressources disponibles par rapport à la demande pour ces ressources. Les instances, les conteneurs et les fonctions fournissent les mécanismes pour l'élasticité soit en combinaison avec la mise à l'échelle automatique, soit en tant que fonction du service. Utilisez l'élasticité dans votre architecture afin de vous assurer que vous disposez d'une capacité suffisante pour répondre aux exigences de performances à toutes les échelles d'utilisation. Assurez-vous que les métriques de l'augmentation ou de la diminution des ressources Elastic sont validées par rapport au type de charge de travail déployée. Si vous déployez une application de transcodage vidéo, une utilisation de 100 % du processeur est attendue. N'en faites pas votre métrique principale. Une alternative consiste à mesurer la longueur de la file d'attente des tâches de transcodage en attente pour mettre à l'échelle vos types d'instances. Assurez-vous que les déploiements de charges de travail peuvent gérer à la fois les événements d'augmentation ou de diminution des charges de travail. Il est aussi essentiel de diminuer les composants de charges de travail en toute sécurité que d'augmenter les ressources lorsque la demande l'exige. Créez des scénarios de test pour les événements de diminution de charge de travail afin de vous assurer que cette dernière se comporte comme prévu.
Ressources
Documents connexes :
Vidéos connexes :
Exemples connexes :