Udostępnij za pośrednictwem


Start-ServiceFabricChaos

Uruchamia uruchomienie chaosu w klastrze.

Składnia

Start-ServiceFabricChaos
     [-TimeToRunMinute <UInt32>]
     [-MaxConcurrentFaults <UInt32>]
     [-MaxClusterStabilizationTimeoutSec <UInt32>]
     [-WaitTimeBetweenIterationsSec <UInt32>]
     [-WaitTimeBetweenFaultsSec <UInt32>]
     [-EnableMoveReplicaFaults]
     [-Context <Hashtable>]
     [-ClusterHealthPolicy <ClusterHealthPolicy>]
     [-ChaosTargetFilter <ChaosTargetFilter>]
     [-TimeoutSec <Int32>]
     [<CommonParameters>]

Opis

Polecenie cmdlet Start-ServiceFabricChaos uruchamia uruchomienie chaosu w klastrze. Chaos wywołuje błędy w klastrze na podstawie odebranych parametrów wejściowych. Raport błędów wywołanych, a także inne zdarzenia napotkane podczas wykonywania, można wyświetlić za pomocą polecenia cmdlet Get-ServiceFabricChaosReport.

Chaos działa w wielu iteracji. Każda iteracja składa się z błędów i weryfikacji klastra. Możesz kontrolować czas działania chaosu, czas oczekiwania między iteracjami, liczbę błędów, które może wywołać podczas iteracji oraz czas oczekiwania między błędami. Chaos weryfikuje kondycję klastra między iteracjami.

Przykłady

Przykład 1. Uruchamianie chaosu w klastrze

PS C:\> $clusterHealthPolicy = New-Object -TypeName System.Fabric.Health.ClusterHealthPolicy
PS C:\> $clusterHealthPolicy.MaxPercentUnhealthyNodes = 10
PS C:\> $clusterHealthPolicy.MaxPercentUnhealthyApplications = 20
PS C:\> $clusterHealthPolicy.ConsiderWarningAsError = $False
PS C:\> $clusterHealthPolicy.ApplicationTypeHealthPolicyMap.Add("CriticalAppType", 33)
PS C:\> $context = @{"k1" = "v1";"k2" = "v2"}
PS C:\> Start-ServiceFabricChaos -TimeToRunMinute 60 -MaxConcurrentFaults 3 -MaxClusterStabilizationTimeoutSec 60 -WaitTimeBetweenIterationsSec 30 -WaitTimeBetweenFaultsSec 5 -EnableMoveReplicaFaults -Context $context -ClusterHealthPolicy $clusterHealthPolicy

To polecenie uruchamia uruchomienie chaosu w klastrze. W tym przebiegu iteracje są rozmieszczone na 30-sekundowej granicy. W ramach każdej iteracji chaos wywołuje maksymalnie trzy błędy. Te błędy są uruchamiane w odstępie od pięciu sekund. Ten przebieg, chyba że zostanie zatrzymany przez inną metodę, zatrzyma się w ciągu 60 minut.

Jeśli chaos był już uruchomiony, wydawanie tego polecenia cmdlet nie ma efektu.

Parametry

-ChaosTargetFilter

{{Wypełnienie ChaosTargetFilter Description}}

Typ:ChaosTargetFilter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ClusterHealthPolicy

Określa, jak chaos powinien zachowywać się w warunkach kondycji klastra.

Typ:ClusterHealthPolicy
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Context

Słownik do przechowywania szczegółowych informacji o tym, dlaczego chaos jest uruchamiany.

Typ:Hashtable
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EnableMoveReplicaFaults

Wskazuje, że Chaos może wywołać błędy, które mogą powodować przenoszenie replik podstawowych lub pomocniczych.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-MaxClusterStabilizationTimeoutSec

Określa maksymalną liczbę sekund oczekiwania chaosu na stan dobrej kondycji klastra. Jeśli klaster nie jest w dobrej kondycji, ValidationFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent) jest rejestrowany w raporcie chaosu. Ta wartość nie może przekroczyć łącznej liczby sekund w [TimeSpan.MaxValue](https://msdn.microsoft.com/library/system.timespan.maxvalue(v=vs.110.aspx) (https://msdn.microsoft.com/library/system.timespan.maxvalue(v=vs.110.aspx).

Typ:UInt32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-MaxConcurrentFaults

Określa maksymalną liczbę błędów, które chaos wywołuje równolegle. Chaos działa w iteracji. Dwa kolejne iteracji są oddzielone okresem weryfikacji. W jednej iteracji Chaos wywołuje co najwyżej liczbę usterek, które określisz. Zalecana wartość to 2 lub 3.

Typ:UInt32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TimeoutSec

Określa limit czasu dla operacji w sekundach.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TimeToRunMinute

Określa, jak długo działa chaos, w minutach; nie może przekroczyć (1/60)uint. MaxValue. Alternatywnie można zatrzymać chaos przy użyciu polecenia cmdlet Stop-ServiceFabricChaos lub metody StopChaosAsync (/dotnet/api/system.fabricclient.testmanagementclient#System_Fabric_FabricClient_TestManagementClient_StopChaosAsync_System_TimeSpan_System_Threading_CancellationToken_).

Typ:UInt32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WaitTimeBetweenFaultsSec

Określa czas oczekiwania chaosu w sekundach między dwoma kolejnymi błędami w jednej iteracji. Jeśli określisz większą wartość, liczba współbieżnych błędów będzie niższa. Maksymalna dozwolona wartość to UInt32.MaxValue.

Typ:UInt32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WaitTimeBetweenIterationsSec

Określa czas oczekiwania chaosu w sekundach między iteracjami. Maksymalna dozwolona wartość to UInt32.MaxValue.

Typ:UInt32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Dane wyjściowe

System.Object