Condividi tramite


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