Invoke-ServiceFabricFailoverTestScenario

Invoca um cenário de teste para induzir falhas em uma partição do Service Fabric.

Syntax

Invoke-ServiceFabricFailoverTestScenario
      -MaxServiceStabilizationTimeoutSec <UInt32>
      -TimeToRunMinute <UInt32>
      [-WaitTimeBetweenFaultsSec <Int32>]
      -PartitionId <Guid>
      -ServiceName <Uri>
      [-TimeoutSec <Int32>]
      [<CommonParameters>]
Invoke-ServiceFabricFailoverTestScenario
      -MaxServiceStabilizationTimeoutSec <UInt32>
      -TimeToRunMinute <UInt32>
      [-WaitTimeBetweenFaultsSec <Int32>]
      -ServiceName <Uri>
      [-TimeoutSec <Int32>]
      [<CommonParameters>]
Invoke-ServiceFabricFailoverTestScenario
      -MaxServiceStabilizationTimeoutSec <UInt32>
      -TimeToRunMinute <UInt32>
      [-WaitTimeBetweenFaultsSec <Int32>]
      -ServiceName <Uri>
      [-PartitionKindSingleton]
      [-TimeoutSec <Int32>]
      [<CommonParameters>]
Invoke-ServiceFabricFailoverTestScenario
      -MaxServiceStabilizationTimeoutSec <UInt32>
      -TimeToRunMinute <UInt32>
      [-WaitTimeBetweenFaultsSec <Int32>]
      -ServiceName <Uri>
      [-PartitionKindNamed]
      -PartitionKey <String>
      [-TimeoutSec <Int32>]
      [<CommonParameters>]
Invoke-ServiceFabricFailoverTestScenario
      -MaxServiceStabilizationTimeoutSec <UInt32>
      -TimeToRunMinute <UInt32>
      [-WaitTimeBetweenFaultsSec <Int32>]
      -ServiceName <Uri>
      [-PartitionKindUniformInt64]
      -PartitionKey <String>
      [-TimeoutSec <Int32>]
      [<CommonParameters>]

Description

O cmdlet Invoke-ServiceFabricFailoverTestScenario inicia um cenário de teste para induzir falhas em uma partição do Service Fabric. O teste coloca a partição por meio de cenários de failover específicos para garantir que esses caminhos sejam exercidos. Se você executar uma carga de trabalho em um serviço do Service Fabric enquanto o cmdlet executar seus testes, aumentará a chance de descobrir bugs no serviço.

As falhas induzidas para as instâncias primária, secundária e sem estado são:

  • RestartReplica (persistente apenas)
  • RemoveReplica
  • ResartDeployedCodePackage
  • MovePrimary (somente com estado)
  • MoveSecondary (somente com estado)
  • RestartPartition (sem perda de dados)

Antes de usar esse cmdlet, conecte-se ao cluster do Service Fabric.

Exemplos

Exemplo 1: executar um teste de failover

PS C:\> $TimeToRun = 60
PS C:\> $MaxStabilizationTimeSecs = 180
PS C:\> $WaitTimeBetweenFaultsSec = 10
PS C:\> $ServiceName = "fabric:/SampleApp/SampleService"
PS C:\> Invoke-ServiceFabricFailoverTestScenario -TimeToRunMinute $TimeToRun -MaxServiceStabilizationTimeoutSec $MaxStabilizationTimeSecs -WaitTimeBetweenFaultsSec $WaitTimeBetweenFaultsSec -ServiceName $ServiceName -PartitionKindSingleton

Parâmetros

-MaxServiceStabilizationTimeoutSec

Especifica o período máximo de tempo limite, em segundos, para que o serviço se estabilize antes de falhar no teste.

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

-PartitionId

Especifica a ID da partição a ser testada.

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

-PartitionKey

Especifica a chave da partição na qual invocar o teste.

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

-PartitionKindNamed

Indica que esse cmdlet testa uma partição nomeada.

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

-PartitionKindSingleton

Indica que esse cmdlet testa uma partição singleton.

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

-PartitionKindUniformInt64

Indica que esse cmdlet testa um serviço particionado UniformInt64.

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

-ServiceName

Especifica o nome do serviço a ser testado.

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

-TimeoutSec

Especifica o período de tempo limite, em segundos, para a operação.

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

-TimeToRunMinute

Especifica o tempo total, em minutos, para que o cenário seja executado.

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

-WaitTimeBetweenFaultsSec

Especifica o tempo máximo de espera, em segundos, entre falhas consecutivas. Quanto maior o valor, menor será a simultaneidade.

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

Entradas

System.Guid

System.Uri

System.String

Saídas

System.Object