Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Verwenden Sie Chaos Engineering Tools, um die Produktionszuverlässigkeit zu überprüfen

Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Lassen Sie uns herausfinden, wie Sie Ihre Produktion mithilfe von Chaos Engineering-Tools zuverlässig halten können.

Chaos Engineering ist eine Disziplin, in der Sie an Ihrem System oder Ihrer Anwendung experimentieren, um dessen Schwächen und Kapazitätsausfälle aufzudecken. Dies ist etwas, von dem Sie nicht dachten, dass es beim Erstellen passieren könnte. Sie würden also absichtlich einige Fehler auf Ihrem System verursachen, um seine Schwachstellen aufzuzeigen, um die Korrekturen vorzunehmen und Ihr System und Ihre Anwendung widerstandsfähiger zu machen.

Viele beliebte Organisationen wie Netflix, LinkedIn und Facebook führen Chaos Engineering durch, um ihre besser zu verstehen Microservices Architektur und verteilte Systeme. Es hilft dabei, neue Probleme früher als echte Benutzerbeschwerden zu finden und die erforderlichen Maßnahmen zu ergreifen, um sie zu beheben. Auf diese Weise können diese Organisationen Millionen von Benutzern bedienen, ihre Produktivität steigern und Millionen von Dollar sparen 🤑.

Vorteile von Chaos Engineering:

  • Kontrollieren Sie Einnahmeverluste, indem Sie kritische Probleme finden
  • Reduzierung von System- oder Anwendungsfehlern
  • Bessere Benutzererfahrung bei weniger Störungen und hoher Serviceverfügbarkeit
  • Es hilft Ihnen, das System kennenzulernen und Vertrauen zu gewinnen.

Wie sicher sind Sie in Bezug auf Ihre Produktionszuverlässigkeit? Ist es wirklich katastrophensicher?

Lassen Sie uns dies mithilfe der folgenden beliebten Chaos-Test-Tools herausfinden.

Chaos Mesh

Chaos-Mesh ist eine Chaos Engineering Management-Lösung, die Fehler in jede Schicht von a injiziert Kubernetes System. Dazu gehören Pods, das Netzwerk, System-I/O und der Kernel. Chaos Mesh kann Kubernetes-Pods automatisch beenden und Latenzen simulieren. Es kann die Pod-zu-Pod-Kommunikation stören und Lese-/Schreibfehler simulieren. Es kann Regeln für die Experimente planen und deren Umfang definieren. Diese Experimente werden mithilfe von YAML-Dateien spezifiziert.

Chaos Mesh verfügt über ein Dashboard, um Analysen zu Experimenten anzuzeigen. Es läuft auf Kubernetes und unterstützt den Großteil der Cloud-Plattform. Es ist Open Source und wurde kürzlich als CNCF-Sandbox-Projekt akzeptiert. Mithilfe der Chaos-Engineering-Prinzipien können Sie Chaos Mesh zu Ihrem DevOps-Workflow hinzufügen, um robuste Anwendungen zu erstellen.

Chaos Mesh - Geekflare

Funktionen von Chaos Engineering:

  • Einfache Bereitstellung auf Kubernetes-Clustern ohne Änderung der Bereitstellungslogik
  • Für die Bereitstellung sind keine eindeutigen Abhängigkeiten erforderlich
  • Definiert Chaosobjekte mithilfe von CustomResourceDefinitions (CRD)
  • Bietet ein Dashboard zur Verfolgung aller Experimente

Chaos ToolKit

Chaos-Toolkit ist ein Open-Source- und einfaches Tool für Chaos Engineering Experiment Automation.

Chaostoolkit-Kli

Sie integrieren Chaos ToolKit mithilfe einer Reihe von Treibern oder Plugins, die AWS, Google Cloud, Slack, unterstützen, in Ihr System. Prometheus, usw.

Chaostoolkit

Funktionen des Chaos ToolKit:

  • Bietet eine deklarative Open API, um Chaos-Experimente unabhängig von einem Anbieter oder einer Technologie zu erstellen
  • Kann zur Automatisierung einfach in CICD-Pipelines eingebettet werden
  • Bietet kommerzielle und unternehmerische Unterstützung auch durch ChaosIQ

ChaosKube

Wie Sie am Namen erraten können, ist es für Kubernetes.

Chaoskube ist ein Open-Source-Chaos-Tool, das regelmäßig zufällige Pods im Kubernetes-Cluster tötet. Es hilft Ihnen zu verstehen, wie Ihr System reagiert, wenn der Pod ausfällt. Standardmäßig wird alle 10 Minuten ein Pod in einem beliebigen Namespace beendet. Sie können die Ziel-Pods in Chaoskube mithilfe von Namespaces, Beschriftungen, Anmerkungen usw. filtern. Sie können einfach mit Chaoskube installiert werden.

Chaos Monkey

Chaos-Affe ist ein Tool, mit dem die Ausfallsicherheit der Cloud-Systeme überprüft werden kann, indem absichtlich Fehler verursacht werden, damit diese Systeme ihre Reaktion verstehen. Netflix hat es erstellt, um die Ausfallsicherheit und Wiederherstellbarkeit der AWS-Infrastruktur zu testen. Es wurde Chaos Monkey genannt, weil es Zerstörung erzeugt wie ein wilder und bewaffneter Affe, um die Fehler zu testen.

Es war auch Chaos Monkey, der die neue Ingenieurpraxis Chaos Engineering hervorbrachte. Es wurde nach dem Prinzip erstellt, dass es besser ist, wiederholt zu versagen, um einen signifikanten Ausfall plötzlich zu vermeiden.

Chaosaffe

Chaos Monkey Eigenschaften:

  • Es hilft Ihnen, sich auf zufällige Instanzfehler vorzubereiten.
  • Fördert die Redundanz bei unerwarteten Fehlern
  • Verwendet Spinnaker, um die Cloud-übergreifende Kompatibilität zu aktivieren
  • Bietet einen konfigurierbaren Zeitplan zur Simulation von Fehlern
  • Integriert mit Gouverneur um neue Abhängigkeiten zu Chaos Monkey hinzuzufügen
Chaos Affe Spinnaker

Simmy

Simmy ist ein Fault-Injection-Chaos-Tool, das in das Polly-Resilience-Projekt für .NET integriert ist. Es ermöglicht Ihnen, Chaos-Injection-Richtlinien über Polly zu erstellen, wo Sie Ihre Codes ausführen. Es bietet verschiedene Richtlinien wie Ausnahmerichtlinien zum Einfügen von Ausnahmen in das System, Verhaltensrichtlinien zum Einfügen von neuem Verhalten usw. Diese Richtlinien sind so konzipiert, dass sie das Verhalten zufällig einfügen.

simmy

Simmy Eigenschaften:

  • Bietet Affenrichtlinien oder Chaosrichtlinien, um Chaos zu verursachen
  • Einfach, um Abhängigkeitsfehler zu testen
  • Es hilft, schnell zum Arbeitsmodell zurückzukehren und den Explosionsradius zu steuern.
  • Es ist serienreif.
  • Es kann Fehler auch basierend auf externen Faktoren definieren (z. B. Fehler aufgrund globaler Konfiguration).

Pystol

Pystole ist ein Tool, mit dem fehlerhafte Injektionen in Cloud-native Umgebungen injiziert werden können. Es überwacht Ereignisse in der ETCD über Kubernetes-Betreiber. Wenn eine Fehlerinjektionsaktion ausgeführt wird, erstellen die Bediener die Pods und führen einige Ansible-Sammlungen aus. Entwickler müssen also keine eigenen Aktionen schreiben, um sie auszuführen.

Pystol bietet vorgefertigte Aktionen zum Testen des Systems. Wenn ein Entwickler eine neue Aktion erstellen möchte, kann dies mithilfe von erfolgen GoLang und Python.

Es bietet ein Dashboard für die kontinuierliche Integration, um eine zusammenfassende Ansicht aller Jobvorgänge zu erhalten. Sie können Pystol lokal ausführen oder mithilfe des Docker-Images in einem Container bereitstellen. Pystol bietet zwei Schnittstellen, eine für die Web-Benutzeroberfläche und eine für die CLI. Offensichtlich ist die Web-Benutzeroberfläche eine bessere Option.

Pystol

Muxy

Muffig ist ein Proxy zum Testen Ihrer Resilienz- und Fehlertoleranzmuster für Ausfälle verteilter Systeme in der realen Welt. Es kann die Transportebene (Schicht 4), die TCP-Sitzungsebene (Schicht 5) und die HTTP-Protokollebene (Schicht 7) manipulieren.

schlammig

Muxy-Funktionen:

  • Modulare Architektur und leicht erweiterbar
  • Hat offiziellen Docker Container
  • Einfach zu installieren, keine Abhängigkeiten erforderlich.
  • Ideal für die kontinuierliche Prüfung der Belastbarkeit
  • Simuliert Netzwerkkonnektivitätsprobleme für verteilte Systeme und mobile Geräte

Pumba

Pumba ist ein Befehlszeilentool, das Chaostests für Docker-Container durchführt. Mit Pumba lassen Sie die Docker-Container der Anwendung absichtlich abstürzen, um zu sehen, wie das System reagiert. Sie können auch Stresstests für die Containerressourcen wie CPU, Speicher, Dateisystem, Ein-/Ausgabe usw. durchführen.

Sie können Pumba auch in einem Kubernetes-Cluster ausführen. Sie müssen DaemonSets verwenden, um Pumba auf Kubernetes-Knoten bereitzustellen. Sie können mehrere Pumba-Container verwenden, um mehrere Pumba-Befehle in demselben DaemonSet auszuführen.

pumba

ChaosBlade

ChaosKlinge ist ein Open-Source-Tool, um Experimente in die Systeme von Alibaba einzufügen. Es testet alle Fehler, mit denen Alibaba in den letzten zehn Jahren konfrontiert war, und wendet Best Practices an, um sie zu vermeiden. Es folgt Chaos-Engineering-Prinzipien, um die Fehlertoleranz verteilter Systeme zu überprüfen.

Chaosklinge

ChaosBlade-Funktionen:

  • Bietet experimentelle Szenarien für mehrere Ressourcen wie CPU, Netzwerk, Speicher, Festplatte usw.
  • Stellt experimentelle Szenarien für Knoten, Netzwerke und Pods auf der Kubernetes-Plattform bereit
  • Bietet benutzerfreundliche CLI-Befehle zum Ausführen von Experimenten

Litmus

Lackmus folgt den Cloud-nativen Chaos-Engineering-Prinzipien. Die Mission des Lackmus-Tools ist es, ein vollständiges Framework zum Auffinden von Schwachstellen in Ihren Kubernetes-Systemen und Ihren laufenden Anwendungen auf Kubernetes bereitzustellen.

Es hat einen Chaos-Operator und die CRDs (CustomResourceDefinitions), die Plug-and-Play-Funktionen ermöglichen. Es geht darum, Ihre Chaoslogik in ein Docker-Image zu integrieren, es in ein Lackmus-Framework zu werfen und sie mithilfe der CRDs zu orchestrieren.

YouTube-Video

Lackmus-Funktionen:

  • Hilft Site Reliability-Ingenieuren und -Entwicklern, Schwachstellen im Kubernetes-System zu finden
  • Bietet gebrauchsfertige generische Experimente
  • Bietet Chaos-API für das Chaos-Workflow-Management
  • Das Litmus SDK unterstützt Go, Python und Ansible, um eigene Experimente zu erstellen.

Gremlin

Gremlin hilft Ingenieuren, widerstandsfähigere Software zu entwickeln. Es bietet eine Plattform, um Chaos-Engineering-Experimente sicher und unkompliziert durchzuführen.

YouTube-Video

Sie können Hosts oder Containern mit Gremlin nachdenklich Fehler zufügen, unabhängig davon, wo sie sich befinden, ob es sich um die öffentliche Cloud oder Ihr eigenes Rechenzentrum handelt.

Gremlin

Gremlin-Funktionen:

  • Installiert Lightweight Agent auf Ihren Hosts oder Containern, um Fehler zu injizieren
  • Bietet mehr als 10 verschiedene Angriffsmodi für die Infrastruktur
  • Mit State Gremlins können Sie die Systemzeit manipulieren, Hosts herunterfahren oder neu starten und Prozessoren beenden.
  • Netzwerk-Gremlins können Latenzzeiten verursachen, um Paketverluste einzuführen oder den Datenverkehr zu verringern.
  • Die Alfi-Bibliotheksangriffe von Gremlin können über die Web-App konfiguriert, gestartet und gestoppt werden. API oder CLI
  • Ermöglicht es Ihnen, den Explosionsradius, den Sie angreifen möchten, genau anzuvisieren
  • Ermöglicht es Ihnen, alle Angriffe zu stoppen und das System in einen stabilen Zustand zurückzusetzen

Steadybit

Steadybit zielt darauf ab, Ausfallzeiten proaktiv zu reduzieren und bietet Einblick in Systemprobleme. Sie können dieses Tool lokal in Ihrer Infrastruktur oder Cloud as a Service (SaaS) ausführen.

Steadybit

Um Steadybit zu verwenden, definieren Sie die Situation, simulieren die Experimente, führen die simulierten Experimente in der Produktion aus und automatisieren alle Experimente. Es führt intelligente Agenten auf Ihrem System aus, um potenzielle Probleme und Schwachstellen zu erkennen. Es lässt sich problemlos in mehrere Systeme integrieren.

Fazit

Seien Sie mutig genug, die Prinzipien des Chaos Engineering anzuwenden und testen Sie Ihre Produktion mit den oben genannten Tools. Diese Tools helfen Ihnen, mehrere zu finden nicht identifizierte Schwächen in Ihrem System, und es wird Ihnen helfen, Ihr System widerstandsfähiger zu machen.

Danke an unsere Sponsoren
Weitere großartige Lektüren zum Thema Cloud Computing
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder