Start-ServiceFabricChaos
Avvia un'esecuzione chaos nel cluster.
Sintassi
Start-ServiceFabricChaos
[-TimeToRunMinute <UInt32>]
[-MaxConcurrentFaults <UInt32>]
[-MaxClusterStabilizationTimeoutSec <UInt32>]
[-WaitTimeBetweenIterationsSec <UInt32>]
[-WaitTimeBetweenFaultsSec <UInt32>]
[-EnableMoveReplicaFaults]
[-Context <Hashtable>]
[-ClusterHealthPolicy <ClusterHealthPolicy>]
[-ChaosTargetFilter <ChaosTargetFilter>]
[-TimeoutSec <Int32>]
[<CommonParameters>]
Descrizione
Il cmdlet Start-ServiceFabricChaos avvia un'esecuzione Chaos nel cluster. Chaos provoca errori nel cluster in base ai parametri di input ricevuti. È possibile visualizzare un report degli errori indotti e di altri eventi rilevati durante l'esecuzione usando il cmdlet Get-ServiceFabricChaosReport .
Chaos esegue più iterazioni. Ogni iterazione è costituita da errori e convalida del cluster. È possibile controllare la durata dell'esecuzione di Chaos, il tempo di attesa tra iterazioni, il numero di errori che può causare durante un'iterazione e il tempo di attesa tra errori. Chaos convalida l'integrità del cluster tra iterazioni.
Esempio
Esempio 1: Avviare Chaos nel cluster
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
Questo comando avvia un'esecuzione chaos nel cluster. In questa esecuzione le iterazioni sono spaziate a 30 secondi. All'interno di ogni iterazione, il caos provoca un massimo di tre errori. Questi errori vengono avviati in un intervallo di cinque secondi. Questa esecuzione, a meno che non venga arrestata da un altro metodo, verrà arrestata in 60 minuti.
Se Chaos era già in esecuzione, l'emissione di questo cmdlet non ha alcun effetto.
Parametri
-ChaosTargetFilter
{{Fill ChaosTargetFilter Description}}
Type: | ChaosTargetFilter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClusterHealthPolicy
Specifica il comportamento di Chaos nelle condizioni di integrità del cluster.
Type: | ClusterHealthPolicy |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Context
Dizionario per contenere i dettagli sul motivo per cui è in corso l'avvio di Chaos.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableMoveReplicaFaults
Indica che Chaos può causare errori che possono causare lo spostamento di repliche primarie o secondarie.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxClusterStabilizationTimeoutSec
Specifica il numero massimo di secondi che Chaos attende che il cluster arrivi allo stato integro. Se il cluster non è integro, un oggetto ValidationFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent) viene registrato nel report Chaos. Questo valore non può superare i secondi totali in [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).
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxConcurrentFaults
Specifica il numero massimo di errori che Chaos induce in parallelo. Chaos viene eseguito nelle iterazioni. Due iterazioni consecutive sono separate da un periodo di convalida. In una singola iterazione Chaos induce al massimo il numero di errori specificati. Il valore consigliato è 2 o 3.
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TimeoutSec
Specifica il periodo di timeout, espresso in secondi, per l'operazione.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TimeToRunMinute
Specifica per quanto tempo viene eseguito Chaos, in minuti; non può superare (1/60)uint. Maxvalue. In alternativa, è possibile arrestare Chaos usando il cmdlet Stop-ServiceFabricChaos o il metodo StopChaosAsync (/dotnet/api/system.fabric.fabricclient.testmanagementclient#System_Fabric_FabricClient_TestManagementClient_StopChaosAsync_System_TimeSpan_System_Threading_CancellationToken_).
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WaitTimeBetweenFaultsSec
Specifica per quanto tempo Chaos attende, in secondi, tra due errori consecutivi in un'iterazione. Se si specifica un valore maggiore, il numero di errori simultanei è inferiore. Il valore massimo consentito è UInt32.MaxValue.
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WaitTimeBetweenIterationsSec
Specifica per quanto tempo Chaos attende, in secondi, tra iterazioni. Il valore massimo consentito è UInt32.MaxValue.
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
None
Output
System.Object