Installation von Chaos Mesh mit Helm
Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →
Dieses Dokument beschreibt die Installation von Chaos Mesh in einer Produktionsumgebung.
Voraussetzungen
Stellen Sie vor der Installation von Chaos Mesh sicher, dass Helm in Ihrer Umgebung installiert ist.
Führen Sie folgenden Befehl aus, um die Helm-Installation zu überprüfen:
helm version
Die erwartete Ausgabe sieht folgendermaßen aus:
version.BuildInfo{Version:"v3.5.4", GitCommit:"1b5edb69df3d3a08df77c9902dc17af864ff05d1", GitTreeState:"dirty", GoVersion: "go1.16.3"}
Wenn Ihre tatsächliche Ausgabe mit den Feldern Version, GitCommit, GitTreeState und GoVersion der erwarteten Ausgabe entspricht, ist Helm korrekt installiert.
In diesem Dokument werden Helm-v3-Befehle für Chaos Mesh-Operationen verwendet. Bei Helm v2 in Ihrer Umgebung lesen Sie bitte Migrating Helm v2 to v3 oder passen Sie die Befehle an das v2-Format an.
Installation von Chaos Mesh mit Helm
Schritt 1: Chaos Mesh-Repository hinzufügen
Fügen Sie das Chaos Mesh-Repository zu Ihren Helm-Repositories hinzu:
helm repo add chaos-mesh https://charts.chaos-mesh.org
Schritt 2: Installierbare Versionen anzeigen
Führen Sie folgenden Befehl aus, um verfügbare Charts zu sehen:
helm search repo chaos-mesh
Der obige Befehl zeigt nur die neueste Chart-Version an. Für ältere Versionen führen Sie diesen Befehl aus, um alle Releases anzuzeigen:
helm search repo chaos-mesh -l
Nach Abschluss dieses Schritts können Sie mit der Installation von Chaos Mesh beginnen.
Schritt 3: Installations-Namespace anlegen
Empfohlen wird die Installation im chaos-mesh-Namespace, Sie können aber jeden beliebigen Namespace verwenden:
kubectl create ns chaos-mesh
Schritt 4: Installation in verschiedenen Umgebungen
Bei der Installation von Chaos Mesh auf Kubernetes v1.15 (oder früheren Versionen) müssen Sie CRD manuell installieren. Weitere Informationen finden Sie unter FAQ.
Da Daemons verschiedener Container-Runtimes unterschiedliche Socket-Pfade verwenden, müssen Sie während der Installation entsprechende Werte setzen. Führen Sie je nach Umgebung folgende Befehle aus:
- Docker
- Containerd
- K3s
- MicroK8s
- CRI-O
Für eine bestimmte Chaos Mesh-Version fügen Sie --version x.y.z nach helm install hinzu, z.B. helm install chaos-mesh chaos-mesh/chaos-mesh -n=chaos-mesh --version 2.1.0.
Für Hochverfügbarkeit ist leader-election standardmäßig aktiviert. Deaktivieren Sie dies bei Bedarf mit --set controllerManager.leaderElection.enabled=false.
Bei Versionen
<2.6.1müssen Sie zusätzlich--set controllerManager.replicaCount=1setzen, um nur ein Controller Manager-Replica zu verwenden.
Installation überprüfen
Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →
Um den Betriebsstatus von Chaos Mesh zu prüfen, führen Sie folgenden Befehl aus:
kubectl get pods -n chaos-mesh -l app.kubernetes.io/instance=chaos-mesh
Die erwartete Ausgabe sieht folgendermaßen aus:
NAME READY STATUS RESTARTS AGE
chaos-controller-manager-7b8c86cc9-44dzf 1/1 Running 0 17m
chaos-controller-manager-7b8c86cc9-mxw99 1/1 Running 0 17m
chaos-controller-manager-7b8c86cc9-xmc5v 1/1 Running 0 17m
chaos-daemon-sg2k2 1/1 Running 0 17m
chaos-dashboard-b9dbc6b68-hln25 1/1 Running 0 17m
chaos-dns-server-546675d89d-qkjqq 1/1 Running 0 17m
Wenn Ihre tatsächliche Ausgabe der erwarteten Ausgabe ähnelt, wurde Chaos Mesh erfolgreich installiert.
Falls der STATUS Ihrer Ausgabe nicht Running ist, führen Sie folgenden Befehl aus, um Pod-Details zu prüfen und Probleme gemäß der Fehlermeldungen zu beheben.
# Take the chaos-controller as an example
kubectl describe po -n chaos-mesh chaos-controller-manager-7b8c86cc9-44dzf
Bei deaktivierter Leader Election sollte chaos-controller-manager nur 1 Replikat haben.
NAME READY STATUS RESTARTS AGE
chaos-controller-manager-676d8567c7-ndr5j 1/1 Running 0 24m
chaos-daemon-6l55b 1/1 Running 0 24m
chaos-dashboard-b9dbc6b68-hln25 1/1 Running 0 44m
chaos-dns-server-546675d89d-qkjqq 1/1 Running 0 44m
Chaos-Experimente ausführen
Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →
Nachdem Sie die erfolgreiche Installation überprüft haben, können Sie ein Chaos-Experiment ausführen, um die Funktionen von Chaos Mesh zu erleben.
Zur Vorgehensweise beim Ausführen von Experimenten empfiehlt sich die Dokumentation Ein Chaos-Experiment ausführen. Nachdem Sie das Experiment erfolgreich erstellt haben, können Sie dessen Ausführungsstatus im Chaos Dashboard beobachten.
Upgrade von Chaos Mesh
Führen Sie folgenden Befehl aus, um Chaos Mesh zu aktualisieren:
helm upgrade chaos-mesh chaos-mesh/chaos-mesh
Für ein Upgrade auf eine bestimmte Version fügen Sie --version x.y.z nach helm upgrade hinzu, z.B. helm upgrade chaos-mesh chaos-mesh/chaos-mesh -n=chaos-mesh --version 2.1.0.
Nach einem Upgrade in Nicht-Docker-Umgebungen müssen Sie die Parameter aus Schritt 4: Installation in verschiedenen Umgebungen erneut setzen.
Um die Konfiguration anzupassen, setzen Sie je nach Bedarf unterschiedliche Werte. Führen Sie beispielsweise folgenden Befehl aus, um chaos-dashboard zu aktualisieren und zu deinstallieren:
Weitere Werte und deren Verwendung finden Sie unter all values.
Aktuell wird die neueste CustomResourceDefinition (CRD) während des Helm-Upgrades nicht angewendet, was zu Fehlern führen kann. Um dies zu vermeiden, können Sie die aktuelle CRD manuell anwenden:
Chaos Mesh deinstallieren
Führen Sie folgenden Befehl aus, um Chaos Mesh zu deinstallieren:
helm uninstall chaos-mesh -n chaos-mesh
Häufig gestellte Fragen
Wie installiere ich die neueste Version von Chaos Mesh?
Die Datei helm/chaos-mesh/values.yaml definiert das Image der neuesten Version (Master-Branch). Installieren Sie die aktuelle Chaos Mesh-Version mit diesem Befehl:
# Clone repository
git clone https://github.com/chaos-mesh/chaos-mesh.git
cd chaos-mesh
helm install chaos-mesh helm/chaos-mesh -n=chaos-mesh
Wie deaktiviere ich den abgesicherten Modus?
Der abgesicherte Modus deaktiviert die Authentifizierung für das Chaos Mesh-Dashboard und sollte nur in Nicht-Produktionsumgebungen verwendet werden. Dieser Modus ist standardmäßig aktiviert. Geben Sie bei Installation oder Upgrade dashboard.securityMode als false an, um ihn zu deaktivieren:
Wie kann ich Chaos Dashboard-Daten persistent speichern?
Chaos Dashboard verwendet standardmäßig SQLite als Datenbank-Engine. Wenn PV (Persistent Volumes) deaktiviert ist, gehen Chaos Dashboard-Daten nach einem Neustart verloren. Um Datenverlust zu vermeiden, aktivieren Sie PV für Chaos Dashboard oder verwenden Sie MySQL bzw. PostgreSQL als Datenbank-Engine – Details finden Sie im Dokument Persistenz von Chaos Dashboard-Daten.