Ich hatte einen perfekten Server, er war so hübsch und absolut solide und so nannte ich ihn Petra. Es war in jeder Hinsicht perfekt, alles war genau richtig konfiguriert und abgestimmt, es hatte eine perfekte 100% -ige Serviceaufzeichnung und 753 Tage Betriebszeit. Ich habe viel Zeit und Mühe aufgewendet, um sicherzustellen, dass es so gut läuft. Kein anderer Server in der Firma war so gut gewesen. Aber letzte Nacht hat dieses böse Monster ohne Grund meinen Server zum Absturz gebracht.
Natürlich wurde ich um 2 Uhr morgens benachrichtigt und es dauerte bis zum nächsten Morgen, bis alles konfiguriert und eingestellt war, aber ich fürchte, es wird nicht mehr so gut wie zuvor. Es kann Wochen dauern, bis es wieder zu seinem früheren Glanz zurückkehrt. Jetzt ist meine Uptime vorbei, ich habe nicht einmal drei Neunen und wer weiß, was das für meinen Ruf bedeutet. Wer ist dieser Chaos-Affe und warum hat er das meinem Server angetan und warum versucht er mich zu ruinieren?
quelle
Antworten:
TL; DR : Chaos Monkey wurde 2010 bei Netflix entwickelt und 2012 als Teil der Simian Army in die Wildnis entlassen , die bei begeisterten Anhängern äußerst beliebt ist . Aufbauend auf den Prinzipien der Chaostechnik erhöht die Armee die Ausfallsicherheit, indem sie dem System ständigen Ausfall zufügt.
Konzept
Chaos Monkey wurde speziell für AWS entwickelt, bei dem Instanzen innerhalb einer Auto Scaling Group zufällig getötet werden. Es soll während der Geschäftszeiten ausgeführt werden, wenn Ingenieure alarmiert sind, und schnell auf festgestellte Fehler reagieren können.
Simian Armee
Angehörige der Armee würden das Chaos auf andere Weise säen :
Latency Monkey führt zu zufälligen Verzögerungen bei Diensten.
Chaos Gorilla (Kong) simuliert den Ausfall der gesamten Verfügbarkeitszone.
Andere Affen sind hilfreich und entfernen die schwachen Mitglieder der Herde:
Conformity Monkey fährt Instanzen herunter, die nicht den Best Practices entsprechen.
Security Monkey sucht nach bekannten Sicherheitslücken in Konfiguration und Diensten.
Doctor Monkey fährt ungesunde Instanzen herunter, die bestimmten Metriken nicht entsprechen.
Hausmeister Monkey sucht nach ungenutzten Ressourcen, die zurückgefordert werden können.
Misserfolg ist unvermeidlich
Ein Ausfall des Systems ist unvermeidlich, es wird immer etwas schief gehen . Möglicherweise können Sie nicht auswählen, was, aber Sie können versuchen, wann auszuwählen. Indem Sie den ganzen Tag über kleine Fehler einführen, stellen Sie sicher, dass Ihre Ingenieure anwesend sind. Indem Sie nicht konforme Dienste schnell beenden, stellen Sie sicher, dass Fehler häufig vor der Bereitstellung auftreten. Indem Sie die Umgebung widersprüchlicher gestalten, stellen Sie sicher, dass es die Entwickler sind, die auf Probleme stoßen, lange bevor ein Service in die Produktion gelangt. In der Integrationsphase neuer Services mit den alten werden Fehler schnell sichtbar, aber das ist in Ordnung, da die alten Produktionsservices bereits ausfallsicher sind.
Vieh nicht Haustiere
In letzter Zeit wird Ihnen jeder sagen: Behandeln Sie Ihre Server nicht als Haustiere . Es gibt eine Macht in Zahlen und jede einzelne Fehlerstelle wird das System zum Erliegen bringen. Unabhängig davon, wie gut Sie Ihren Server optimieren und optimieren können, unabhängig davon, wie leistungsfähig die Hardware ist und wie viel sie bewältigt, wird sie niemals mit einer Herde kleiner skalierbarer Instanzen mithalten können. Chaos Monkey ermutigt dich, darüber nachzudenken, alle Fehlerquellen zu beseitigen, denn früher oder später wird der Affe kommen! Jeder scheitert und selbst das Amazon S3 hatte einen unvorhersehbaren Ausfall .
Anti-Fragile
Was ist die Theorie und warum funktioniert sie? Nassim Nicholas Taleb beschreibt in seinem Buch Antifragile ein Konzept, bei dem lebende selbstbewusste Systeme von einem geringen Grad an Zufälligkeit profitieren und angesichts von Widrigkeiten sogar besser werden. Dies ähnelt dem Tempern.
Er beschreibt auch einen evolutionären Weg, bei dem die Fragilität von Teilen in einem System in die Antifragilität des Ganzen übergeht . Die Übertragung erfolgt auf zwei Ebenen:
Durch eine kleine zufällige Variation - Entwickler, die Änderungen vornehmen - überleben und verbreiten die am besten für die Umgebung geeigneten - bestehen Sie Tests und werden bereitgestellt . Standard-Entwicklungslebenszyklus .
Durch das Versagen von Teilen, die einem größeren Grad an Zufälligkeit in der Umgebung nicht standhalten können, bilden die verbleibenden Teile, die dem Versagen standhalten konnten, ein System, das insgesamt besser in der Lage ist, mit sich ändernden Umgebungen umzugehen als zuvor. Dies ist im Wesentlichen Chaos Monkey .
Mit dem zweiten Ansatz kann größeren Zufälligkeiten widerstanden werden.
quelle
Einige Ergänzungen zu Ihrer eigenen Antwort auf diese Frage ...
Zusätzliche Affen
Der Artikel über " Wie Chaos die Leistung steigert " beschreibt einige weitere dieser Affen, dh:
Anmerkung: In demselben Artikel wird auch "Chaos Gorilla: Simuliert einen Ausfall einer Amazon-Verfügbarkeitszone" erwähnt, obwohl dies möglicherweise in "Chaos Kong: Simuliert einen Ausfall einer Amazon-Region" umbenannt wurde Chaos ! Bisher konnte ich dazu keine Bestätigung / Dokumentation finden, zumindest scheint es dafür kein Problem in der Problemwarteschlange zu geben . Eine undokumentierte Änderung könnte es bis zur Produktion auf Github geschafft haben ... Ggggggrrrrrreat!
Stelle deine eigenen Affen auf und benutze sie.
Gehen Sie zu Github, um Kontakt mit der Simian-Armee aufzunehmen (derselbe Link wie der allererste Link in Ihrer eigenen Antwort). Hier ist ein Zitat von dem, was Sie dort finden:
Sie können die Monkyes sogar so konfigurieren , dass sie Ihren geschäftlichen Anforderungen entsprechen.
Wenn Sie innerhalb dieser Github-Links (dh innerhalb des Support- Links) tief genug graben , finden Sie auch einen Link, um der SimianArmy Google-Gruppe beizutreten .
quelle
Sie, Sauron, haben diesen einen Server in der Dunkelheit des
Mount Doom inIhrem Rechenzentrum geschmiedet, in dem Wunsch, alle Anwendungen zu regieren.Hoffentlich hat sich die Fellowship of Devops zusammengeschlossen, um Ihnen Folgendes zu sagen:
Nach einem langen Kampf ist es
Frodothe Chaos Monkey gelungen, Ihren One Server zum Schmelzen zu bringen und Freiheit für alle Anwendungen zu schaffen, sodass Sie gleichzeitig zu reproduzierbaren Servern gelangen.Credits:
quelle