Start-ServiceFabricChaos

Запускает выполнение Chaos в кластере.

Синтаксис

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

Описание

Командлет Start-ServiceFabricChaos запускает выполнение Chaos в кластере. Chaos вызывает сбои в кластере на основе полученных входных параметров. Отчет о сбоях, а также о других событиях, возникших во время выполнения, можно просмотреть с помощью командлета Get-ServiceFabricChaosReport .

Chaos выполняет несколько итераций. Каждая итерация состоит из сбоев и проверки кластера. Вы можете управлять продолжительности выполнения Chaos, продолжительности ожидания между итерациями, количеством ошибок, которые он может вызвать во время итерации, и продолжительности ожидания между сбоями. Chaos проверяет работоспособность кластера между итерациями.

Примеры

Пример 1. Запуск Chaos в кластере

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

Эта команда запускает выполнение Chaos в кластере. В этом запуске итерации размещаются на 30-секундной границе. В каждой итерации хаос вызывает не более трех ошибок. Эти ошибки запускаются в промежутке в пять секунд. Этот запуск, если не остановлен другим методом, остановится в течение 60 минут.

Если Chaos уже запущен, выполнение этого командлета не повлияет.

Параметры

-ChaosTargetFilter

{{Fill ChaosTargetFilter Description}}

Type:ChaosTargetFilter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ClusterHealthPolicy

Указывает, как должен вести себя Chaos в условиях работоспособности кластера.

Type:ClusterHealthPolicy
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Context

Словарь для хранения сведений о том, почему запускается Chaos.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableMoveReplicaFaults

Указывает, что Chaos может вызвать ошибки, которые могут привести к перемещению первичной или вторичной реплики.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxClusterStabilizationTimeoutSec

Указывает максимальное количество секунд, в течение которых Chaos ожидает, пока кластер получит работоспособное состояние. Если кластер не работоспособен, средство ValidationFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent) регистрируется в отчете Chaos. Это значение не может превышать общее количество секунд в [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

Указывает максимальное количество сбоев, вызываемых Chaos параллельно. Chaos выполняется в итерациях. Две последовательные итерации разделяются периодом проверки. В одной итерации Chaos вызывает не более указанного количества ошибок. Рекомендуемое значение — 2 или 3.

Type:UInt32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeoutSec

Указывает период времени ожидания (в секундах) для операции.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeToRunMinute

Указывает продолжительность выполнения Chaos (в минутах); не может превышать (1/60)uint. Maxvalue. Кроме того, можно остановить Chaos с помощью командлета Stop-ServiceFabricChaos или метода StopChaosAsync (/dotnet/api/system.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

Указывает время ожидания Chaos (в секундах) между двумя последовательными сбоями в одной итерации. Если указать большее значение, количество одновременных сбоев меньше. Максимально допустимое значение — UInt32.MaxValue.

Type:UInt32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WaitTimeBetweenIterationsSec

Указывает время ожидания Chaos (в секундах) между итерациями. Максимально допустимое значение — UInt32.MaxValue.

Type:UInt32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Выходные данные

System.Object