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.
Conclusion
Nous avons établi 12 règles de haute disponibilité dans ce document.
-
Règle 1 — Des pannes moins fréquentes (MTBF plus long), des temps de détection des pannes plus courts (MTTD plus court) et des temps de réparation plus courts (MTTR plus court) sont les trois facteurs utilisés pour améliorer la disponibilité dans les systèmes distribués.
-
Règle 2 — La disponibilité du logiciel dans votre charge de travail est un facteur important de la disponibilité globale de votre charge de travail et doit bénéficier de la même attention que les autres composants.
-
Règle 3 — La réduction des dépendances peut avoir un impact positif sur la disponibilité.
-
Règle 4 — En général, sélectionnez les dépendances dont les objectifs de disponibilité sont égaux ou supérieurs aux objectifs de votre charge de travail.
-
Règle 5 — Utilisez la modération pour augmenter la disponibilité des dépendances dans une charge de travail.
-
Règle 6 — Il existe une limite supérieure à la rentabilité de l'épargne. Utilisez le moins de pièces de rechange nécessaires pour atteindre la disponibilité requise.
-
Règle 7 — Ne vous fiez pas aux plans de contrôle de votre plan de données, en particulier lors de la restauration.
-
Règle 8 — Associez les dépendances de manière souple afin que votre charge de travail puisse fonctionner correctement malgré la déficience de la dépendance, dans la mesure du possible.
-
Règle 9 — L'observabilité et l'instrumentation sont essentielles pour réduire le MTTD et le MTTR.
-
Règle 10 — Concentrez-vous sur l'atténuation des impacts, pas sur la résolution des problèmes. Prenez le chemin le plus rapide pour revenir à un fonctionnement normal.
-
Règle 11 — L'isolation des pannes réduit l'ampleur de l'impact et augmente le MTBF de la charge de travail en réduisant le taux de défaillance global.
-
Règle 12 — Permettez aux opérateurs de faire facilement ce qu'il faut.
L'amélioration de la disponibilité de la charge de travail passe par la réduction du MTTD et du MTTR et par l'augmentation du MTBF. En résumé, nous avons discuté des moyens suivants d'améliorer la disponibilité qui couvrent la technologie, les personnes et les processus.
-
MTTD
-
Réduisez le MTTD grâce à une surveillance proactive de vos indicateurs d'expérience client.
-
Profitez de contrôles de santé granulaires pour un basculement rapide.
-
-
MTTR
-
Surveillez l'étendue de l'impact et les indicateurs de santé opérationnelle.
-
Réduisez le MTTR en suivant 1/Redémarrer, 2/Redémarrer, 3/Réimage/Redéployer et 4/Remplacer.
-
Contournez la défaillance en comprenant l'ampleur de l'impact.
-
Utilisez des services dont les temps de redémarrage sont plus courts, tels que les conteneurs et les fonctions sans serveur sur des machines virtuelles ou des hôtes physiques.
-
Annulez automatiquement les déploiements ayant échoué lorsque cela est possible.
-
Établissez des runbooks et des outils opérationnels pour les opérations de diagnostic et les procédures de redémarrage.
-
-
MTBF
-
Éliminez les bogues et les défauts des logiciels grâce à des tests rigoureux avant leur mise en production.
-
Mettez en œuvre l'ingénierie du chaos et l'injection de défauts.
-
Utilisez le bon niveau d'économie dans les dépendances pour tolérer les pannes.
-
Minimisez l'ampleur de l'impact en cas de défaillance grâce à des conteneurs de défauts.
-
Mettez en œuvre des normes pour les déploiements et les modifications.
-
Concevez des interfaces opérateurs simples, intuitives, cohérentes et bien documentées.
-
Fixez-vous des objectifs d'excellence opérationnelle.
-
Privilégiez la stabilité par rapport à la publication de nouvelles fonctionnalités lorsque la disponibilité est une dimension critique de votre charge de travail.
-
Implémentez des quotas d'utilisation avec limitation ou délestage, ou les deux, pour éviter les surcharges.
-
N'oubliez pas que nous ne parviendrons jamais complètement à empêcher l'échec. Concentrez-vous sur des conceptions logicielles offrant la meilleure isolation possible contre les pannes afin de limiter la portée et l'ampleur de l'impact, en maintenant idéalement cet impact en dessous des seuils de « temps d'arrêt » ET investissez dans une détection et une atténuation très rapides et très fiables. Les systèmes distribués modernes doivent encore considérer les défaillances comme une fatalité et être conçus à tous les niveaux pour garantir une haute disponibilité.