次の方法で共有


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 は、イテレーション間のクラスターの正常性を検証します。

例 1: クラスターで混乱を開始する

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 秒の境界に配置されます。 各イテレーション内で、混乱は最大 3 つの障害を誘発します。 これらの障害は、5 秒のギャップで開始されます。 この実行は、別のメソッドによって停止されない限り、60 分で停止します。

Chaos が既に実行されている場合、このコマンドレットを発行しても効果はありません。

パラメーター

-ChaosTargetFilter

{{Fill ChaosTargetFilter Description}}

型:ChaosTargetFilter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ClusterHealthPolicy

クラスターの正常性条件下での Chaos の動作方法を指定します。

型:ClusterHealthPolicy
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Context

Chaos が開始される理由の詳細を保持するディクショナリ。

型:Hashtable
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EnableMoveReplicaFaults

混乱によって、プライマリ レプリカまたはセカンダリ レプリカが移動する原因となる障害が発生する可能性があることを示します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxClusterStabilizationTimeoutSec

クラスターが正常な状態になるまで Chaos が待機する最大秒数を指定します。 クラスターが正常でない場合は、Chaos レポートに ValidationFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent) が記録されます。 この値は、[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)の合計秒数を超えることはできません。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxConcurrentFaults

Chaos が並行して誘発する障害の最大数を指定します。 混乱は繰り返し実行されます。 2 つの連続するイテレーションは、検証期間で区切られています。 1 回の反復で、Chaos は指定した最大数の障害を誘発します。 推奨値は 2 または 3 です。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TimeoutSec

操作のタイムアウト期間を秒単位で指定します。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TimeToRunMinute

Chaos の実行時間を分単位で指定します。は (1/60)uint を超えることはできません。MaxValue。 または、Stop-ServiceFabricChaos コマンドレットまたは StopChaosAsync メソッド (/dotnet/api/system.fabric.fabricclient.testmanagementclient#System_Fabric_FabricClient_TestManagementClient_StopChaosAsync_System_TimeSpan_System_Threading_CancellationToken_) を使用して混乱を停止することもできます。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WaitTimeBetweenFaultsSec

1 回の反復で 2 つの連続する障害の間で Chaos が待機する時間を秒単位で指定します。 より大きな値を指定すると、同時実行エラーの数が少なくなります。 最大許容値は UInt32.MaxValueです。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WaitTimeBetweenIterationsSec

繰り返しの間に Chaos が待機する時間を秒単位で指定します。 最大許容値は UInt32.MaxValueです。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

None

出力

System.Object