ChaosParameters
Definiert alle Parameter zum Konfigurieren einer Chaosausführung.
Eigenschaften
Name | type | Erforderlich |
---|---|---|
TimeToRunInSeconds |
Zeichenfolge | Nein |
MaxClusterStabilizationTimeoutInSeconds |
ganze Zahl (int64) | Nein |
MaxConcurrentFaults |
ganze Zahl (int64) | Nein |
EnableMoveReplicaFaults |
boolean | Nein |
WaitTimeBetweenFaultsInSeconds |
ganze Zahl (int64) | Nein |
WaitTimeBetweenIterationsInSeconds |
ganze Zahl (int64) | Nein |
ClusterHealthPolicy |
ClusterHealthPolicy | Nein |
Context |
ChaosContext | Nein |
ChaosTargetFilter |
ChaosTargetFilter | Nein |
TimeToRunInSeconds
Typ: Zeichenfolge
Erforderlich: Nein
Standard:
Die Gesamtzeit (in Sekunden), während der der Chaostest ausgeführt wird, bevor er automatisch beendet wird. Der maximal zulässige Wert ist „4.294.967.295“ (System.UInt32.MaxValue).
MaxClusterStabilizationTimeoutInSeconds
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
Die maximale Zeitdauer, die abzuwarten ist, bis alle Clusterentitäten stabil und fehlerfrei sind. Chaos wird in Iterationen ausgeführt. Am Anfang jeder Iteration wird die Integrität der Clusterentitäten überprüft.
Wenn während der Überprüfung eine Clusterentität nicht innerhalb von MaxClusterStabilizationTimeoutInSeconds stabil und fehlerfrei ist, generiert Chaos ein Ereignis für einen Validierungsfehler.
MaxConcurrentFaults
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
MaxConcurrentFaults ist die maximale Anzahl gleichzeitiger Fehler, die pro Iteration induziert werden.
Der Chaostest wird in Iterationen ausgeführt, wobei zwei aufeinanderfolgende Iterationen von einer Überprüfungsphase unterbrochen werden.
Je höher die Parallelität, desto aggressiver die Einschleusung von Fehlern, was zu komplexeren Reihen von Zuständen führt, um Fehler aufzudecken.
Es wird empfohlen, mit dem Wert 2 oder 3 zu beginnen und diesen vorsichtig zu erhöhen.
EnableMoveReplicaFaults
Typ: boolean
Erforderlich: Nein
Standard:
Aktiviert oder deaktiviert die Verschiebung von primären und sekundären Fehlern.
WaitTimeBetweenFaultsInSeconds
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
Wartezeit (in Sekunden) zwischen aufeinander folgenden Fehlern innerhalb einer einzelnen Iteration.
Je größer der Wert ist, desto geringer ist die Überlappung zwischen Fehlern und desto einfacher ist auch die Sequenz der Zustandswechsel, die der Cluster durchläuft.
Es wird empfohlen, mit einem Wert zwischen 1 und 5 zu beginnen und diesen vorsichtig zu erhöhen.
WaitTimeBetweenIterationsInSeconds
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
Zeitabstand (in Sekunden) zwischen zwei aufeinander folgenden Iterationen von Chaostests.
Je höher der Wert ist, desto niedriger ist die durchschnittliche Fault Injection-Rate.
ClusterHealthPolicy
Typ: ClusterHealthPolicy
Erforderlich: Nein
Die übergebene Clusterintegritätsrichtlinie wird verwendet, um die Integrität des Clusters zwischen Chaos-Iterationen zu überprüfen. Wenn die Clusterintegrität fehlerhaft ist oder während der Fehlerausführung eine unerwartete Ausnahme auftritt, um dem Cluster einige Zeit zur Erholung zu bieten, wartet Chaos 30 Minuten vor der nächsten Integritätsprüfung.
Context
Typ: ChaosContext
Erforderlich: Nein
Beschreibt eine Zuordnung, bei der es sich um eine Auflistung von Schlüssel-Wert-Paaren vom Typ (Zeichenfolge, Zeichenfolge) handelt. Die Zuordnung kann verwendet werden, um Informationen zur Ausführung von Chaos aufzuzeichnen. Es kann nicht mehr als 100 solcher Paare geben, und jede Zeichenfolge (Schlüssel oder Wert) darf höchstens 4.095 Zeichen lang sein.
Diese Zuordnung wird beim Start der Chaos-Ausführung festgelegt, um optional den Kontext der jeweiligen Ausführung zu speichern.
ChaosTargetFilter
Typ: ChaosTargetFilter
Erforderlich: Nein
Liste der Clusterentitäten, die für Chaosfehler als Ziel verwendet werden sollen.
Dieser Filter kann verwendet werden, um Chaosfehler nur auf bestimmte Knotentypen oder Anwendungsinstanzen auszurichten. Wenn „ChaosTargetFilter“ nicht verwendet wird, stört Chaos alle Clusterentitäten.
Wenn „ChaosTargetFilter“ verwendet wird, stört Chaos nur die Entitäten, die der ChaosTargetFilter-Spezifikation entsprechen.