ChaosParameters
Definuje všechny parametry pro konfiguraci spuštění chaosu.
Vlastnosti
Název | Typ | Vyžadováno |
---|---|---|
TimeToRunInSeconds |
řetězec | No |
MaxClusterStabilizationTimeoutInSeconds |
celé číslo (int64) | Ne |
MaxConcurrentFaults |
celé číslo (int64) | Ne |
EnableMoveReplicaFaults |
boolean | Ne |
WaitTimeBetweenFaultsInSeconds |
celé číslo (int64) | Ne |
WaitTimeBetweenIterationsInSeconds |
celé číslo (int64) | Ne |
ClusterHealthPolicy |
ClusterHealthPolicy | Ne |
Context |
ChaosContext | Ne |
ChaosTargetFilter |
Filtr ChaosTargetFilter | Ne |
TimeToRunInSeconds
Typ: string
Povinné: Ne
Výchozí:4294967295
Celkový čas (v sekundách), po který bude chaos běžet před automatickým zastavením. Maximální povolená hodnota je 4 294 967 295 (System.UInt32.MaxValue).
MaxClusterStabilizationTimeoutInSeconds
Typ: celé číslo (int64)
Povinné: Ne
Výchozí:60
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
Maximální doba čekání, než budou všechny entity clusteru stabilní a v pořádku. Chaos se provádí v iteraci a na začátku každé iterace ověřuje stav entit clusteru.
Během ověřování, pokud entita clusteru není stabilní a v pořádku v rámci MaxClusterStabilizationTimeoutInSeconds, vygeneruje Chaos událost neúspěšného ověření.
MaxConcurrentFaults
Typ: celé číslo (int64)
Povinné: Ne
Výchozí:1
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
MaxConcurrentFaults je maximální počet souběžných chyb vyvolaných v rámci iterace.
Chaos se provádí v iteracích a dvě po sobě jdoucí iterace jsou odděleny ověřovací fází.
Čím vyšší je souběžnost, tím agresivnější je injektáž chyb, což vede k invenci složitější řady stavů k odhalení chyb.
Doporučujeme začít hodnotou 2 nebo 3 a při pohybu nahoru postupovat opatrně.
EnableMoveReplicaFaults
Typ: logická
Povinné: Ne
Výchozí:true
Povolí nebo zakáže přesun primárních a sekundárních chyb.
WaitTimeBetweenFaultsInSeconds
Typ: celé číslo (int64)
Povinné: Ne
Výchozí:20
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
Doba čekání (v sekundách) mezi po sobě jdoucími chybami v rámci jedné iterace
Větší hodnota, tím nižší je překrývání mezi chybami a tím jednodušší je posloupnost přechodů stavu, kterými cluster prochází.
Doporučujeme začít hodnotou mezi 1 a 5 a při pohybu nahoru buďte opatrní.
WaitTimeBetweenIterationsInSeconds
Typ: celé číslo (int64)
Povinné: Ne
Výchozí:30
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
Časové oddělení (v sekundách) mezi dvěma po sobě jdoucími iteracemi chaosu.
Větší hodnota, tím nižší je míra injektáže chyb.
ClusterHealthPolicy
Typ: ClusterHealthPolicy
Povinné: Ne
Zásady stavu předávaného clusteru se používají k ověření stavu clusteru mezi iteracemi chaosu. Pokud je stav clusteru chybný nebo dojde k neočekávané výjimce během provádění selhání – aby se clusteru poskytl nějaký čas na rekuperaci – chaos počká 30 minut před další kontrolou stavu.
Context
Typ: ChaosContext
Povinné: Ne
Popisuje mapování, což je kolekce párů klíč-hodnota typu (řetězec, řetězec). Mapu lze použít k zaznamenávání informací o běhu chaosu. Takových párů nemůže být více než 100 a každý řetězec (klíč nebo hodnota) může mít délku maximálně 4095 znaků.
Tato mapa je nastavena startérem běhu Chaos tak, aby volitelně ukládaly kontext konkrétního běhu.
ChaosTargetFilter
Typ: ChaosTargetFilter
Povinné: Ne
Seznam entit clusteru, které se mají zaměřit na chyby chaosu
Tento filtr lze použít k cílení chyb chaosu pouze na určité typy uzlů nebo pouze na určité instance aplikací. Pokud není použit filtr ChaosTargetFilter, chaos zachytí všechny entity clusteru.
Pokud je použit Filtr ChaosTargetFilter, chaos vychytá pouze entity, které splňují specifikaci ChaosTargetFilter.