Start-ServiceFabricChaos

Começa uma corrida de caos no aglomerado.

Sintaxe

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

Description

O cmdlet Start-ServiceFabricChaos inicia uma corrida de caos no cluster. O caos induz falhas no cluster com base nos parâmetros de entrada recebidos. Um relatório das falhas induzidas, bem como outros eventos encontrados durante a execução, podem ser vistos utilizando o cmdlet Get-ServiceFabricChaosReport .

O caos corre em várias iterações. Cada iteração consiste em falhas e validação de agrupamentos. Pode controlar quanto tempo o caos dura, quanto tempo espera entre iterações, quantas falhas pode induzir durante uma iteração, e quanto tempo espera entre falhas. O caos valida a saúde do aglomerado entre iterações.

Exemplos

Exemplo 1: Iniciar o caos no 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

Este comando inicia uma corrida de caos no aglomerado. Nesta corrida, as iterações são espaçadas a 30 segundos de limite. Dentro de cada iteração, o caos induz no máximo três falhas. Estas falhas começam com um intervalo de cinco segundos. Esta corrida, a menos que seja interrompida por outro método, vai parar em 60 minutos.

Se o Caos já estava a funcionar, a emissão deste cmdlet não tem efeito.

Parâmetros

-ChaosTargetFilter

{{Preencha a descrição do Filtro de Filtro do Caos}}

Tipo:ChaosTargetFilter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ClusterHealthPolicy

Especifica como o caos deve comportar-se em condições de saúde do cluster.

Tipo:ClusterHealthPolicy
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Context

Um dicionário para guardar detalhes sobre o porquê do caos estar a ser iniciado.

Tipo:Hashtable
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-EnableMoveReplicaFaults

Indica que o Caos pode induzir falhas que podem fazer com que as réplicas primárias ou secundárias se movam.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MaxClusterStabilizationTimeoutSec

Especifica o número máximo de segundos que o Caos espera que o cluster entre em estado saudável. Se o cluster não for saudável, um Evento De ValidaçãoFailedEvent (/dotnet/api/system.fabric.chaos.datastructures.validationfailedevent) é registado no relatório Chaos. Este valor não pode exceder os segundos totais em [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).

Tipo:UInt32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MaxConcurrentFaults

Especifica o número máximo de falhas que o Caos induz em paralelo. O caos corre em iterações. Duas iterações consecutivas são separadas por um período de validação. Numa única iteração, o Caos induz no máximo o número de falhas que especifica. O valor recomendado é 2 ou 3.

Tipo:UInt32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-TimeoutSec

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

Tipo:Int32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-TimeToRunMinute

Especifica quanto tempo o caos dura, em minutos; não pode exceder (1/60)uint. O MaxValue. Em alternativa, pode parar o Caos utilizando o cmdlet Stop-ServiceFabricChaos ou o método StopChaosAsync (/dotnet/api/system.fabric.fabric.fabricclient.testmanagementclient#System_Fabric_FabricClient_TestManagementClient_StopChaosAsync_System_TimeSpan_System_Threading_CancellationToken_).

Tipo:UInt32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-WaitTimeBetweenFaultsSec

Especifica quanto tempo o Caos espera, em segundos, entre duas falhas consecutivas numa iteração. Se especificar um valor maior, o número de falhas simultâneas é menor. O valor máximo permitido é UInt32.MaxValue.

Tipo:UInt32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-WaitTimeBetweenIterationsSec

Especifica quanto tempo o Caos espera, em segundos, entre iterações. O valor máximo permitido é UInt32.MaxValue.

Tipo:UInt32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

None

Saídas

System.Object