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 powoduje 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 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 działa.

Parametry

-ChaosTargetFilter

{{Fill 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 rozpoczyna się chaos.

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 na stan kondycji klastra przez chaos. Jeśli klaster nie jest w dobrej kondycji, w raporcie chaosu jest rejestrowany element ValidationFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent). Ta wartość nie może przekroczyć łącznej liczby sekund w elemecie [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 wywoływanych równolegle przez chaos. Chaos działa w iteracji. Dwa kolejne iteracje 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; program 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