Partager via


Update-ServiceFabricClusterUpgrade

Modifie la description de la mise à niveau d’une mise à niveau de cluster active.

Syntaxe

Update-ServiceFabricClusterUpgrade
      [-ForceRestart <Boolean>]
      [-UpgradeReplicaSetCheckTimeoutSec <UInt32>]
      [-UpgradeMode <RollingUpgradeMode>]
      [-FailureAction <UpgradeFailureAction>]
      [-HealthCheckRetryTimeoutSec <UInt32>]
      [-HealthCheckWaitDurationSec <UInt32>]
      [-HealthCheckStableDurationSec <UInt32>]
      [-UpgradeDomainTimeoutSec <UInt32>]
      [-UpgradeTimeoutSec <UInt32>]
      [-ConsiderWarningAsError <Boolean>]
      [-MaxPercentUnhealthyApplications <Byte>]
      [-MaxPercentUnhealthyNodes <Byte>]
      [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
      [-EnableDeltaHealthEvaluation <Boolean>]
      [-MaxPercentDeltaUnhealthyNodes <Byte>]
      [-MaxPercentUpgradeDomainDeltaUnhealthyNodes <Byte>]
      [-Force]
      [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
      [-InstanceCloseDelayDurationSec <UInt32>]
      [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
      [-TimeoutSec <Int32>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

L’applet de commande Update-ServiceFabricClusterUpgrad e modifie les paramètres d’une description de mise à niveau du cluster pendant que la mise à niveau est toujours active. Service Fabric détecte et applique les modifications en fonction de la valeur FabricUpgradeStatusPollInterval, comme spécifié dans le manifeste du cluster. À l’exception des stratégies d’évaluation de l’intégrité, cette applet de commande met à jour uniquement les paramètres que vous spécifiez. Les paramètres non spécifiés ne sont pas affectés. Vous devez mettre à jour les stratégies d’évaluation d’intégrité suivantes ensemble, pas individuellement :

  • ConsiderWarningAsError
  • MaxPercentUnhealthyApplications
  • MaxPercentUnhealthyNodes

Pour gérer les clusters Service Fabric, démarrez Windows PowerShell à l’aide de l’option Exécuter en tant qu’administrateur. 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 : Mettre à jour une valeur pour une mise à niveau d’un cluster

PS C:\> Update-ServiceFabricClusterUpgrade -UpgradeReplicaSetCheckTimeoutSec 0

Cette commande définit le délai d’attente du jeu de réplicas sur 0 pour une mise à niveau de cluster en attente. La mise à jour laisse toutes les autres valeurs de mise à niveau seules.

Exemple 2 : Mettre à jour la stratégie d’intégrité pour une mise à niveau d’un cluster

PS C:\> $svcType = New-Object -TypeName System.Fabric.Health.ServiceTypeHealthPolicy
PS C:\> $svcType.MaxPercentUnhealthyPartitionsPerService = 100
PS C:\> $systemAppPolicy = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicy
PS C:\> $systemAppPolicy.DefaultServiceTypeHealthPolicy = $svcType
PS C:\> $appHealthPolicyMap = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicyMap
PS C:\> $appHealthPolicyMap.Add("fabric:/System", $systemAppPolicy)

PS C:\> $AppTypeHealthPolicyMap = New-Object -TypeName "System.Fabric.Health.ApplicationTypeHealthPolicyMap"
PS C:\> $AppTypeHealthPolicyMap.Add("CriticalAppType", 0)

PS C:\> Update-ServiceFabricClusterUpgrade -ApplicationTypeHealthPolicyMap $AppTypeHealthPolicyMap -Force -MaxPercentUnhealthyApplications 20 -ApplicationHealthPolicyMap $appHealthPolicyMap

Cette commande modifie la stratégie d’intégrité du cluster de mise à niveau du cluster. Il spécifie le mappage de stratégie d’intégrité de type d’application qui contient le type d’application CriticalAppType, qui ne tolère aucun échec. Les autres applications sont évaluées à l’aide de 20% pourcentage maximal non sain.

La commande met également à jour la stratégie d’intégrité de l’application utilisée pour évaluer l’application fabric :/System dans le cadre de l’évaluation de l’intégrité de la mise à niveau du cluster. Les nouvelles stratégies tolèrent toutes les erreurs de partition.

Paramètres

-ApplicationHealthPolicyMap

Spécifie un System.Fabric.Health.ApplicationHealthPolicyMap qui inclut des stratégies d’intégrité personnalisées pour certaines ou toutes les applications. Si vous ne spécifiez pas ce paramètre ou si vous n’incluez pas d’entrée dans le mappage d’une application, cette application est évaluée avec la stratégie d’intégrité de l’application définie dans le manifeste de l’application s’il existe, ou la stratégie par défaut dans le cas contraire.

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

-ApplicationTypeHealthPolicyMap

Spécifie la carte qui définit le pourcentage maximal d’applications non saines autorisées par type d’application. Les types d’applications de cette carte sont évalués à l’aide de pourcentages spécifiques plutôt que du Global MaxPercentUnhealthyApplications pourcentage.

Par exemple, si certaines applications d’un type sont critiques, l’administrateur de cluster peut ajouter une entrée à la carte pour ce type d’application et lui attribuer une valeur de 0% (autrement dit, ne tolérer aucun échec). Toutes les autres applications peuvent être évaluées avec MaxPercentUnhealthyApplications défini sur 20% pour tolérer des défaillances sur des milliers d’instances d’application.

Le mappage de stratégie d’intégrité de type d’application est utilisé uniquement si le manifeste de cluster active l’évaluation d’intégrité du type d’application à l’aide de l’entrée de configuration pour HealthManager/EnableApplicationTypeHealthEvaluation.

Type:ApplicationTypeHealthPolicyMap
Position:Named
Valeur par défaut:None
Obligatoire:False
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 rapport d’intégrité d’avertissement comme une erreur lors de 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

-EnableDeltaHealthEvaluation

Indique s’il faut activer les contrôles d’intégrité delta pendant l’évaluation de l’intégrité dans les mises à niveau surveillées. Si vous spécifiez une valeur de $True, Service Fabric prend un instantané de l’intégrité au début de la mise à niveau. Une fois que chaque domaine de mise à niveau a terminé la mise à niveau, les contrôles d’intégrité comparent l’état actuel du cluster à l’instantané. S’il existe une dégradation de l’intégrité qui ne respecte pas le nombre maximal de pourcentages autorisés de la stratégie d’intégrité actuelle de mise à niveau du cluster, les vérifications d’intégrité échouent.

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

-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:False
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 à jour.

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 s’il faut redémarrer le nœud Service Fabric même si seules les configurations dynamiques ont changé.

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

-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 le cluster est stable avant qu’il continue à passer au domaine de mise à niveau suivant ou termine 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 du cluster 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.

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

-MaxPercentDeltaUnhealthyNodes

Spécifie le pourcentage maximal toléré de nœuds delta non sains qui peuvent avoir des états d’intégrité agrégés d’erreur. Si les nœuds non sains actuels ne respectent pas le pourcentage par rapport à l’état au début de la mise à niveau, le cluster n’est pas sain.

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

-MaxPercentUnhealthyApplications

Spécifie le pourcentage maximal toléré d’applications qui peuvent avoir un état d’intégrité agrégé d’erreur. Si la mise à niveau dépasse ce pourcentage, le cluster n’est pas sain.

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

-MaxPercentUnhealthyNodes

Spécifie le pourcentage maximal toléré de nœuds pouvant avoir des états d’intégrité agrégés d’erreur. Si une mise à niveau dépasse ce pourcentage, le cluster n’est pas sain.

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

-MaxPercentUpgradeDomainDeltaUnhealthyNodes

Spécifie le pourcentage maximal toléré de nœuds delta de domaine de mise à niveau non sains qui peuvent avoir un état d’intégrité agrégé d’erreur. S’il existe un domaine de mise à niveau où les nœuds non sains actuels ne respectent pas le pourcentage par rapport à l’état au début de la mise à niveau, le cluster n’est pas sain.

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

-NodeTypeHealthPolicyMap

Définit une carte avec des pourcentages maximal de nœuds non sains pour des types de nœuds spécifiques.

Le mappage de stratégie d’intégrité de type de nœud peut être utilisé pendant l’évaluation de l’intégrité du cluster pour décrire des types de nœuds spéciaux. Les types de nœuds inclus dans la carte sont évalués par rapport au pourcentage inclus dans la carte, ainsi qu’avec le global (voir System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Les nœuds des types de nœuds spécifiés dans la carte sont également comptabilisés sur le pool global de nœuds ; ils sont des vérifications indépendantes.

Type:NodeTypeHealthPolicyMap
Position:Named
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

-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

-UpgradeMode

Spécifie la nouvelle UpgradeMode pour la mise à niveau.

Type:RollingUpgradeMode
Valeurs acceptées:Invalid, UnmonitoredAuto, UnmonitoredManual, Monitored
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, en secondes, pendant laquelle Service Fabric attend qu’un réplica soit reconfiguré dans un état sûr, s’il n’est pas déjà dans un état sûr, avant que Service Fabric continue la 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

-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