PRINZIPIEN DES CHAOS ENGINEERINGS
Chaos Engineering führt Experimente auf einem System durch, um Vertrauen in das System aufzubauen auch unter widrigen Umständen in der Produktivumgebung zu bestehen.
Weitere Erläuterungen und genauere Definitionen (und das obrige Zitat) finden sich auf: principlesofchaos.org
Im Grunde geht es darum das zufällige Störungen während den Live-betriebes eines Systems um zu prüfen ob der Rest der Infrastruktur davon einen Schaden nimmt oder ob der Fehler abgefangen wird. Dann braucht man nicht mehr den Ausfall zur denkbar ungünstigsten Zeit fürchten. Dadurch baut man seine Systeme resistenter und ausfallsicherer und gewinnt parallel dazu mehr Vertrauen in die selbigen.
Laut Wikipedia ist Greg Orzell auf das Konzept gekommen. Daraus entstanden Tools, welche wahllos zufällige Services stören und Ausfälle provozieren.
Tools, Services und Links
Chaos Monkey
Das erste bekannte Chaos Engineering Tool, welches von Netflix entwickelt und für die AWS konzipiert wurde.
Github: chaosmonkey
Cthulhu
Cthulhu ist ein open source chaos engineering tool und soll Entwicklern beim cross-platform software failure testing unterstützen.
Github: cthulhu-chaos-testing
Gremlin
„Chaos as a Service“ ist hier das Motto dieses kommerziellen Unternehmens namens Gremlin, welches Chaos Monkey verwendet.
In der freien Variante kann man 3 Benutzer, 5 Hosts und 2 Angriffstypen (Shutdown und CPU) verwenden.
Chaos Toolkit
The Open Source Platform for Chaos Engineering - Supported commercially by ChaosIQ
Github: chaostoolkit