Partager via


Start-ServiceFabricApplicationUpgrade

Met à niveau une application Service Fabric vers applicationTypeVersion spécifiée.

Syntaxe

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

L’applet de commande Start-ServiceFabricApplicationUpgrade met à niveau une application Service Fabric. Avant d’utiliser cette applet de commande, vous devez copier le package d’application mis à jour dans le magasin d’images et inscrire le type d’application mis à jour. Utilisez le Copy-ServiceFabricApplicationPackage pour copier le package d’application dans le magasin d’images. Utilisez l’applet de commande Register-ServiceFabricApplicationType pour inscrire le type d’application mis à jour.

Cette applet de commande démarre la mise à niveau sur le cluster.

applicationParameters ne sont pas conservés dans une mise à niveau d’application. Pour conserver les paramètres d’application actuels, l’utilisateur doit d’abord obtenir les paramètres et les transmettre à l’appel d’API de mise à niveau, comme illustré dans exemple 1 ci-dessous.

Pour plus d’informations sur les mises à niveau des applications Service Fabric, consultez la documentation conceptuelle .

Avant d’effectuer une opération sur un cluster Service Fabric, établissez une connexion au cluster à l’aide de l’applet de commande Connect-ServiceFabricCluster.

Exemples

Exemple 1 : Obtenir les paramètres de l’application à transmettre à l’appel de mise à niveau

$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

Exemple 2 : Mettre à niveau une application

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

La première commande utilise l’applet de commande Copy-ServiceFabricApplicationPackage pour copier le package d’application mis à jour dans le magasin d’images.

La deuxième commande utilise l’applet de commande Register-ServiceFabricApplicationType pour inscrire le type d’application mis à jour.

La troisième commande met à niveau l’application. La commande effectue une mise à niveau manuelle non supervisée, qui inclut un redémarrage du serveur qui héberge l’application.

Paramètres

-ApplicationName

Spécifie l’URI (Uniform Resource Identifier) d’une application Service Fabric. L’applet de commande met à niveau l’application qui a l’URI que vous spécifiez.

Type:Uri
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ApplicationParameter

Spécifie les remplacements pour les paramètres d’application en tant que paires nom/valeur.

Type:Hashtable
Position:2
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ApplicationTypeVersion

Spécifie la version d’un type d’application Service Fabric. L’applet de commande met à niveau l’application vers la version que vous spécifiez.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConsiderWarningAsError

Indique s’il faut traiter un événement d’intégrité d’avertissement comme un événement d’erreur pendant l’évaluation de l’intégrité.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultServiceTypeHealthPolicy

Spécifie la stratégie d’intégrité du type de service par défaut à utiliser pour la mise à niveau surveillée au format MaxPercentUnhealthyPartitionsPerService, MaxPercentUnhealthyReplicasPerPartition, MaxPercentUnhealthyServices. Par exemple, 5 10 15 indiquent les valeurs suivantes :

  • MaxPercentUnhealthyPartitionsPerService = 5
  • MaxPercentUnhealthyReplicasPerPartition = 10
  • MaxPercentUnhealthyServices = 15
Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-FailureAction

Spécifie l’action à entreprendre si la mise à niveau surveillée échoue. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Rollback
  • Manuelle
Type:UpgradeFailureAction
Valeurs acceptées:Invalid, Rollback, Manual
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Force

Indique que cette applet de commande ignore le message d’avertissement et force la mise à niveau.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ForceRestart

Indique que l’hôte de service redémarre même si la mise à niveau est une modification de configuration uniquement.

Type:SwitchParameter
Position:3
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HealthCheckRetryTimeoutSec

Spécifie la durée, en secondes, après laquelle Service Fabric retente le contrôle d’intégrité si le contrôle d’intégrité précédent échoue.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HealthCheckStableDurationSec

Spécifie la durée, en secondes, que Service Fabric attend pour vérifier que l’application est stable avant de passer au domaine de mise à niveau suivant ou de terminer la mise à niveau. Cette durée d’attente empêche les modifications non détectées de l’intégrité juste après l’exécution du contrôle d’intégrité.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HealthCheckWaitDurationSec

Spécifie la durée, en secondes, que Service Fabric attend avant d’effectuer le contrôle d’intégrité initial une fois la mise à niveau terminée sur le domaine de mise à niveau.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-InstanceCloseDelayDurationSec

Spécifie la durée en secondes, à attendre avant qu’une instance sans état affectée par la mise à niveau de l’application soit fermée, pour permettre aux requêtes actives de vider correctement. Cette durée d’attente est effective uniquement pour les instances de ces services sans état qui ont une valeur non nulle configurée pour l’InstanceCloseDelayDuration et remplacent la valeur préconfigurée. Pour plus d’informations, consultez InstanceCloseDelayDuration (dans New-ServiceFabricService).

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MaxPercentUnhealthyDeployedApplications

Spécifie le pourcentage maximal d’instances d’application déployées sur les nœuds du cluster qui ont un état d’intégrité d’erreur avant l’état d’intégrité de l’application pour le cluster.

Type:Byte
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Monitored

Indique que le mode de mise à niveau est surveillé. Une fois que l’applet de commande a terminé une mise à niveau pour un domaine de mise à niveau, si l’intégrité du domaine de mise à niveau et le cluster répondent aux stratégies d’intégrité que vous définissez, Service Fabric met à niveau le domaine de mise à niveau suivant. Si le domaine de mise à niveau ou le cluster ne répond pas aux stratégies d’intégrité, la mise à niveau échoue et Service Fabric restaure la mise à niveau pour le domaine de mise à niveau ou rétablit le mode manuel selon la stratégie spécifiée. Il s’agit du mode recommandé pour les mises à niveau d’application dans un environnement de production.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ReplicaQuorumTimeoutSec

Spécifie le délai d’attente, en secondes, pour vérifier si le jeu de réplicas a le quorum. Après le délai d’attente, la mise à niveau se poursuit.

Ce paramètre a été déconseillé. Spécifiez le paramètre UpgradeReplicaSetCheckTimeoutSec à la place.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RestartProcess

Indique que l’hôte de service redémarre dans le cadre de la mise à niveau.

Ce paramètre a été déconseillé. Spécifiez le paramètre ForceRestart à la place.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ServiceTypeHealthPolicyMap

Spécifie la carte de la stratégie d’intégrité à utiliser pour différents types de service en tant que table de hachage au format suivant : @ { »ServiceTypeName" : « MaxPercentUnhealthyPartitionsPerService,MaxPercentUnhealthyReplicasPerPartition,MaxPercentUnhealthyServices"}. Par exemple:

@{ « ServiceTypeName01 » = « 5,10,5 » ; « ServiceTypeName02 » = « 5,5,5 » }

Type:Hashtable
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SortOrder

Définit l’ordre dans lequel une mise à niveau passe par le cluster.

Les valeurs possibles sont les suivantes :

  • Invalid : indique que cet ordre de tri n’est pas valide. Toutes les énumérations Service Fabric ont le type non valide.
  • Default : indique que l’ordre de tri par défaut (tel que spécifié dans le manifeste du cluster) sera utilisé.
  • Numeric : indique que l’ordre de tri numérique (noms UD triés sous forme de nombres) est utilisé.
  • Lexicographical - Indique que l’ordre de tri lexicographique avant (noms UD triés sous forme de chaînes) sera utilisé.
  • ReverseNumeric : indique que l’ordre de tri numérique inverse (noms UD triés sous forme de nombres) sera utilisé.
  • ReverseLexicographical- Indique que l’ordre de tri lexicographique inverse (noms UD triés sous forme de chaînes) sera utilisé.
Type:UpgradeSortOrder
Valeurs acceptées:Invalid, Default, Numeric, Lexicographical, ReverseNumeric, ReverseLexicographical
Position:5
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TimeoutSec

Spécifie le délai d’expiration, en secondes, pour l’opération.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UnmonitoredAuto

Indique que le mode de mise à niveau n’est pas surveillé automatiquement. Une fois Service Fabric mis à niveau un domaine de mise à niveau, Service Fabric met à niveau le domaine de mise à niveau suivant, quel que soit l’état d’intégrité de l’application. Ce mode n’est pas recommandé pour la production et n’est utile que pendant le développement d’une application.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UnmonitoredManual

Indique que le mode de mise à niveau n’est pas surveillé manuellement. Une fois Service Fabric mis à niveau un domaine de mise à niveau, il attend que vous mettez à niveau le domaine de mise à niveau suivant à l’aide de l’applet de commande Resume-ServiceFabricApplicationUpgrade.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UpgradeDomainTimeoutSec

Spécifie la durée maximale, en secondes, que Service Fabric prend pour mettre à niveau un domaine de mise à niveau unique. Après cette période, la mise à niveau échoue.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UpgradeReplicaSetCheckTimeoutSec

Spécifie la durée maximale pendant laquelle Service Fabric attend qu’un service se reconfigure dans un état sécurisé, s’il n’est pas déjà dans un état sûr, avant que Service Fabric continue la mise à niveau.

Type:UInt32
Position:4
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UpgradeTimeoutSec

Spécifie la durée maximale, en secondes, que Service Fabric prend pour toute la mise à niveau. Après cette période, la mise à niveau échoue.

Type:UInt32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Sorties

System.Object