Start-ServiceFabricApplicationUpgrade

Atualiza um aplicativo do Service Fabric para o ApplicationTypeVersion especificado.

Syntax

Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredAuto]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredManual]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricApplicationUpgrade
     [-ApplicationName] <Uri>
     [-ApplicationTypeVersion] <String>
     [[-ApplicationParameter] <Hashtable>]
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-Monitored]
     -FailureAction <UpgradeFailureAction>
     [-HealthCheckRetryTimeoutSec <UInt32>]
     [-HealthCheckWaitDurationSec <UInt32>]
     [-HealthCheckStableDurationSec <UInt32>]
     [-UpgradeDomainTimeoutSec <UInt32>]
     [-UpgradeTimeoutSec <UInt32>]
     [-ConsiderWarningAsError <Boolean>]
     [-DefaultServiceTypeHealthPolicy <String>]
     [-MaxPercentUnhealthyDeployedApplications <Byte>]
     [-ServiceTypeHealthPolicyMap <Hashtable>]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

O cmdlet Start-ServiceFabricApplicationUpgrade atualiza um aplicativo do Service Fabric. Antes de usar esse cmdlet, você precisa copiar o pacote de aplicativos atualizado para o repositório de imagens e registrar o tipo de aplicativo atualizado. Use o Copy-ServiceFabricApplicationPackage para copiar o pacote de aplicativos para o repositório de imagens. Use o cmdlet Register-ServiceFabricApplicationType para registrar o tipo de aplicativo atualizado.

Esse cmdlet inicia a atualização no cluster.

ApplicationParameters não são preservados em uma atualização de aplicativo. Para preservar os parâmetros atuais do aplicativo, o usuário deve obter os parâmetros primeiro e passá-los para a chamada à API de atualização, conforme mostrado no Exemplo 1 abaixo.

Para obter mais informações sobre atualizações de aplicativos do Service Fabric, consulte a documentação conceitual.

Antes de executar qualquer operação em um cluster do Service Fabric, estabeleça uma conexão com o cluster usando o cmdlet Connect-ServiceFabricCluster .

Exemplos

Exemplo 1: Obter os parâmetros do aplicativo para passar para a chamada de atualização

$myApplication = Get-ServiceFabricApplication -ApplicationName fabric:/myApplication
$appParamCollection = $myApplication.ApplicationParameters
$applicationParameterMap = @{}

foreach ($pair in $appParamCollection)
{ $applicationParameterMap.Add($pair.Name, $pair.Value); }

Start-ServiceFabricApplicationUpgrade -ApplicationName fabric:/myApplication -ApplicationTypeVersion 2.0.0 -ApplicationParameter $applicationParameterMap -Monitored -FailureAction Rollback

Exemplo 2: Atualizar um aplicativo

PS C:\> Copy-ServiceFabricApplicationPackage -ApplicationPackagePath "C:\PersistentToDoListServiceV2" -ImageStoreConnectionString "file:C:\ProgramData\ServiceFabric\ImageStore"
PS C:\> Register-ServiceFabricApplicationType -ApplicationPathInImageStore "PersistentToDoListServiceV2"
PS C:\> Start-ServiceFabricApplicationUpgrade -ApplicationName fabric:/myapp/persistenttodolist -ApplicationTypeVersion "2.0" -ForceRestart -UnMonitoredManual

O primeiro comando usa o cmdlet Copy-ServiceFabricApplicationPackage para copiar o pacote de aplicativos atualizado para o repositório de imagens.

O segundo comando usa o cmdlet Register-ServiceFabricApplicationType para registrar o tipo de aplicativo atualizado.

O terceiro comando atualiza o aplicativo. O comando executa uma atualização manual não monitorada, que inclui uma reinicialização do servidor que hospeda o aplicativo.

Parâmetros

-ApplicationName

Especifica o URI (Uniform Resource Identifier) de um aplicativo do Service Fabric. O cmdlet atualiza o aplicativo que tem o URI especificado.

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

-ApplicationParameter

Especifica as substituições para parâmetros de aplicativo como pares nome/valor.

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

-ApplicationTypeVersion

Especifica a versão de um tipo de aplicativo do Service Fabric. O cmdlet atualiza o aplicativo para a versão especificada.

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

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

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

-ConsiderWarningAsError

Indica se um evento de integridade de aviso deve ser tratado como um evento de erro durante a avaliação de integridade.

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

-DefaultServiceTypeHealthPolicy

Especifica a política de integridade para o tipo de serviço padrão a ser usado para a atualização monitorada no formato MaxPercentUnhealthyPartitionsPerService, MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices. Por exemplo, 5,10,15 indicam os seguintes valores:

  • MaxPercentUnhealthyPartitionsPerService = 5
  • MaxPercentUnhealthyReplicasPerPartition = 10
  • MaxPercentUnhealthyServices = 15
Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FailureAction

Especifica a ação a ser executada se a atualização monitorada falhar. Os valores aceitáveis para esse parâmetro são:

  • Reversão
  • Manual
Type:UpgradeFailureAction
Accepted values:Invalid, Rollback, Manual
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Force

Indica que esse cmdlet ignora a mensagem de aviso e força a atualização.

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

-ForceRestart

Indica que o host de serviço é reiniciado mesmo que a atualização seja uma alteração somente de configuração.

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

-HealthCheckRetryTimeoutSec

Especifica a duração, em segundos, após a qual o Service Fabric tenta novamente a verificação de integridade se a verificação de integridade anterior falhar.

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

-HealthCheckStableDurationSec

Especifica a duração, em segundos, que o Service Fabric aguarda para verificar se o aplicativo está estável antes de passar para o próximo domínio de atualização ou concluir a atualização. Essa duração de espera impede alterações não detectadas de integridade logo após a verificação de integridade ser executada.

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

-HealthCheckWaitDurationSec

Especifica a duração, em segundos, que o Service Fabric aguarda antes de executar a verificação de integridade inicial depois de concluir a atualização no domínio de atualização.

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

-InstanceCloseDelayDurationSec

Especifica a duração em segundos, aguardar até que uma instância sem estado afetada pela atualização do aplicativo seja fechada, para permitir que as solicitações ativas sejam drenadas normalmente. Essa duração de espera é efetiva apenas para as instâncias desses serviços sem estado que têm um valor diferente de zero configurado para o InstanceCloseDelayDuration e substituirão o valor pré-configurado. Consulte InstanceCloseDelayDuration (in New-ServiceFabricService) para obter detalhes.

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

-MaxPercentUnhealthyDeployedApplications

Especifica a porcentagem máxima das instâncias de aplicativo implantadas nos nós no cluster que têm um estado de integridade de erro antes que o estado de integridade do aplicativo para o cluster seja um erro.

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

-Monitored

Indica que o modo de atualização é monitorado. Depois que o cmdlet terminar uma atualização para um domínio de atualização, se a integridade do domínio de atualização e o cluster atenderem às políticas de integridade que você definir, o Service Fabric atualizará o próximo domínio de atualização. Se o domínio ou o cluster de atualização falhar em cumprir as políticas de integridade, a atualização falhará e o Service Fabric reverterá a atualização para o domínio de atualização ou para o modo manual, conforme especificado pela política. Esse é o modo recomendado para atualizações de aplicativo em um ambiente de produção.

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

-ReplicaQuorumTimeoutSec

Especifica o período de tempo limite, em segundos, para verificar se o conjunto de réplicas tem quorum. Após o período de tempo limite, a atualização continuará.

Esse parâmetro foi preterido. Especifique o parâmetro UpgradeReplicaSetCheckTimeoutSec .

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

-RestartProcess

Indica que o host de serviço é reiniciado como parte da atualização.

Esse parâmetro foi preterido. Em vez disso, especifique o parâmetro ForceRestart .

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

-ServiceTypeHealthPolicyMap

Especifica o mapa da política de integridade a ser usado para diferentes tipos de serviço como uma tabela de hash no seguinte formato: @ {"ServiceTypeName" : "MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices"}. Por exemplo:

@{ "ServiceTypeName01" = "5,10,5"; "ServiceTypeName02" = "5,5,5" }

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

-SortOrder

Define a ordem na qual uma atualização prossegue por meio do cluster.

Os valores possíveis são:

  • Invalid - Indica que essa ordem de classificação não é válida. Todas as enumerações do Service Fabric têm o tipo inválido.
  • Default - Indica que a ordem de classificação padrão (conforme especificado no manifesto do cluster) será usada.
  • Numeric - Indica que a ordem de classificação numérica (nomes de UD classificados como números) será usada.
  • Lexicographical - Indica que a ordem de classificação lexicográfica (nomes de UD classificados como cadeias de caracteres) será usada.
  • ReverseNumeric - Indica que a ordem de classificação numérica reversa (nomes de UD classificados como números) será usada.
  • ReverseLexicographical- Indica que a ordem de classificação lexicográfica inversa (nomes de UD classificados como cadeias de caracteres) será usada.
Type:UpgradeSortOrder
Accepted values:Invalid, Default, Numeric, Lexicographical, ReverseNumeric, ReverseLexicographical
Position:5
Default value:None
Required:False
Accept pipeline input:False
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

-UnmonitoredAuto

Indica que o modo de atualização e não monitorado automático. Depois que o Service Fabric atualiza um domínio de atualização, o Service Fabric atualiza o próximo domínio de atualização, independentemente do estado de integridade do aplicativo. Esse modo não é recomendado para produção e só é útil durante o desenvolvimento de um aplicativo.

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

-UnmonitoredManual

Indica que o modo de atualização e não monitorado manual. Depois que o Service Fabric atualiza um domínio de atualização, ele aguarda você atualizar o próximo domínio de atualização usando o cmdlet Resume-ServiceFabricApplicationUpgrade.

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

-UpgradeDomainTimeoutSec

Especifica o tempo máximo, em segundos, que o Service Fabric leva para atualizar um único domínio de atualização. Após esse período, a atualização falhará.

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

-UpgradeReplicaSetCheckTimeoutSec

Especifica o tempo máximo que o Service Fabric aguarda que um serviço seja reconfigurado em um estado seguro, se ainda não estiver em um estado seguro, antes que o Service Fabric prossiga com a atualização.

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

-UpgradeTimeoutSec

Especifica o tempo máximo, em segundos, que o Service Fabric leva para toda a atualização. Após esse período, a atualização falhará.

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

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

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

Entradas

None

Saídas

System.Object