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.
Comprendre les compromis et les risques
Les architectures résilientes doivent utiliser une poignée de mécanismes simples, fiables et éprouvés pour répondre aux défaillances. Pour atteindre les niveaux de résilience les plus élevés, les charges de travail doivent automatiquement détecter et récupérer après autant de modes de défaillance que possible. Cela nécessite un investissement important dans la réalisation d'analyses de résilience. Cela signifie que pour atteindre des niveaux de résilience plus élevés, il faut faire des compromis. Cependant, au fur et à mesure que vous faites des compromis, vous atteignez un point où les rendements diminuent par rapport à vos objectifs de résilience. Voici les compromis les plus courants :
-
Coût — Des composants redondants, une meilleure observabilité, des outils supplémentaires ou une utilisation accrue des ressources entraîneront une augmentation des coûts.
-
Complexité du système — La détection et la réponse aux modes de défaillance, y compris les solutions d'atténuation, ainsi que le fait de ne pas utiliser de services gérés accroissent la complexité du système.
-
Effort d'ingénierie — Des heures de développement supplémentaires sont nécessaires pour créer des solutions permettant de détecter les modes de défaillance et d'y répondre.
-
Frais opérationnels — La surveillance et l'exploitation d'un système qui gère un plus grand nombre de modes de défaillance peuvent entraîner une surcharge opérationnelle, en particulier lorsque vous ne pouvez pas utiliser les services gérés pour atténuer des modes de défaillance spécifiques.
-
Latence et cohérence — La création de systèmes distribués qui favorisent la disponibilité nécessite des compromis en termes de cohérence et de latence, comme décrit dans le théorème PACELC
.
Lorsque vous examinez les mesures d'atténuation pour les modes de défaillance identifiés dans l'histoire de l'utilisateur, réfléchissez aux compromis que vous devez faire. Comme pour la sécurité, la résilience est un problème d'optimisation. Vous devez décider d'éviter, d'atténuer, de transférer ou d'accepter les risques posés par la défaillance identifiée. Il existe peut-être certains modes de défaillance que vous pouvez éviter, un ensemble que vous acceptez et d'autres que vous pouvez transférer. Vous pouvez choisir d'atténuer la plupart des modes de défaillance que vous avez identifiés. Pour déterminer l'approche à adopter, effectuez une évaluation en vous posant deux questions : Quelle est la probabilité que la défaillance se produise ? Quel est l'impact sur la charge de travail si elle se produit ?
La probabilité correspond à la probabilité qu'un événement se produise. Par exemple, si l'histoire utilisateur contient un composant qui fonctionne sur une seule instance Amazon Elastic Compute Cloud (Amazon EC2), le composant peut être perturbé à un moment donné pendant le fonctionnement du système, peut-être en raison de procédures de correction ou d'erreurs du système d'exploitation. Par ailleurs, une base de données gérée par Amazon Relational Database Service (Amazon RDS) qui synchronise les données entre ses instances principales et secondaires a peu de chances de devenir totalement indisponible.
L'impact est une estimation des dommages qu'un événement peut causer. Elle doit être évaluée à la fois du point de vue financier et du point de vue de la réputation, et elle est relative à la valeur des histoires d'utilisateurs qu'elle a un impact. Par exemple, une base de données surchargée peut avoir un impact significatif sur la capacité d'un système de commerce électronique à accepter de nouvelles commandes. Cependant, la perte d'une seule instance sur un parc de 20 instances derrière un équilibreur de charge n'aurait probablement que très peu d'impact.
Vous pouvez comparer les réponses à ces questions au coût des compromis que vous devez faire pour atténuer les risques. Lorsque vous considérez ces informations au regard de votre seuil de risque et de vos objectifs de résilience, elles éclairent votre décision quant aux modes de défaillance que vous prévoyez d'atténuer activement.