你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Start-ServiceFabricClusterUpgrade

升级 Service Fabric 群集。

语法

Start-ServiceFabricClusterUpgrade
     [-CodePackageVersion] <String>
     [-ClusterManifestVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredAuto]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Code]
     [-CodePackageVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredAuto]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Code]
     [-CodePackageVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredManual]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Code]
     [-CodePackageVersion] <String>
     [-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>]
     [-MaxPercentUnhealthyApplications <Byte>]
     [-MaxPercentUnhealthyNodes <Byte>]
     [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
     [-EnableDeltaHealthEvaluation]
     [-MaxPercentDeltaUnhealthyNodes <Byte>]
     [-MaxPercentUpgradeDomainDeltaUnhealthyNodes <Byte>]
     [-Force]
     [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
     [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Config]
     [-ClusterManifestVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredAuto]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Config]
     [-ClusterManifestVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredManual]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-Config]
     [-ClusterManifestVersion] <String>
     [-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>]
     [-MaxPercentUnhealthyApplications <Byte>]
     [-MaxPercentUnhealthyNodes <Byte>]
     [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
     [-EnableDeltaHealthEvaluation]
     [-MaxPercentDeltaUnhealthyNodes <Byte>]
     [-MaxPercentUpgradeDomainDeltaUnhealthyNodes <Byte>]
     [-Force]
     [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
     [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-CodePackageVersion] <String>
     [-ClusterManifestVersion] <String>
     [-ForceRestart]
     [[-UpgradeReplicaSetCheckTimeoutSec] <UInt32>]
     [[-SortOrder] <UpgradeSortOrder>]
     [-ReplicaQuorumTimeoutSec <UInt32>]
     [-RestartProcess]
     [-InstanceCloseDelayDurationSec <UInt32>]
     [-UnmonitoredManual]
     [-Force]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-ServiceFabricClusterUpgrade
     [-CodePackageVersion] <String>
     [-ClusterManifestVersion] <String>
     [-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>]
     [-MaxPercentUnhealthyApplications <Byte>]
     [-MaxPercentUnhealthyNodes <Byte>]
     [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
     [-EnableDeltaHealthEvaluation]
     [-MaxPercentDeltaUnhealthyNodes <Byte>]
     [-MaxPercentUpgradeDomainDeltaUnhealthyNodes <Byte>]
     [-Force]
     [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
     [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
     [-TimeoutSec <Int32>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

说明

Start-ServiceFabricClusterUpgrade cmdlet 升级 Service Fabric 群集。 可以升级 Service Fabric 代码、配置或同时升级代码和配置。

若要管理 Service Fabric 群集,请使用“以管理员身份运行”选项启动Windows PowerShell。 在 Service Fabric 群集上执行任何操作之前,请使用 Connect-ServiceFabricCluster cmdlet 建立与群集的连接。

示例

示例 1:启动不受监视的手动升级

PS C:\> Start-ServiceFabricClusterUpgrade -CodePackageVersion "2.0.59.0" -ClusterManifestVersion "v2" -UnmonitoredManual

此命令为指定的代码包和配置启动未经监视的手动升级。

示例 2:仅开始升级代码

PS C:\> Start-ServiceFabricClusterUpgrade -Code -CodePackageVersion "2.0.59.0" -UnmonitoredAuto

此命令为指定的代码包启动不受监视的自动升级。 没有配置升级。

示例 3:仅启动配置升级

Start-ServiceFabricClusterUpgrade -ClusterManifestVersion "v2" -Config -FailureAction Rollback -Monitored

此命令仅针对指定的群集清单版本启动受监视的配置升级。 升级使用默认运行状况策略,并将失败操作指定为 回滚

示例 4:使用自定义运行状况策略开始升级

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

PS C:\> $svcType = New-Object -TypeName System.Fabric.Health.ServiceTypeHealthPolicy
PS C:\> $svcType.MaxPercentUnhealthyPartitionsPerService = 20
PS C:\> $svcType.MaxPercentUnhealthyReplicasPerPartition = 20
PS C:\> $warningAsErrorPolicy = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicy
PS C:\> $warningAsErrorPolicy.ConsiderWarningAsError = $true
PS C:\> $warningAsErrorPolicy.DefaultServiceTypeHealthPolicy = $svcType

PS C:\> $appHealthPolicyMap = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicyMap
PS C:\> $appHealthPolicyMap.Add("fabric:/System", $warningAsErrorPolicy)

PS C:\> Start-ServiceFabricClusterUpgrade -CodePackageVersion "4.2.83.9493" -ClusterManifestVersion "ScaleMin-1.0" -Monitored -FailureAction Rollback -ApplicationTypeHealthPolicyMap $AppTypeHealthPolicyMap -Force -MaxPercentUnhealthyNodes 20 -MaxPercentUnhealthyApplications 20 -ApplicationHealthPolicyMap $appHealthPolicyMap

此命令为指定的代码包和配置启动受监视的升级,并传递自定义运行状况策略。 它指定自定义群集运行状况策略,为关键应用程序类型定义不同的 MaxPercentUnhealthyApplications,并为群集系统应用程序定义自定义应用程序运行状况策略。

参数

-ApplicationHealthPolicyMap

指定 System.Fabric.Health.ApplicationHealthPolicyMap 对象,该对象包含部分或所有应用程序的自定义运行状况策略。 如果未指定此参数,或者未在应用程序的映射中包含条目,则会使用应用程序清单中定义的应用程序运行状况策略(如果存在)或默认运行状况策略进行评估。

类型:ApplicationHealthPolicyMap
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ApplicationTypeHealthPolicyMap

指定定义每个应用程序类型允许的不正常应用程序的最大百分比的映射。 此映射中的应用程序类型使用特定百分比而不是 MaxPercentUnhealthyApplications 参数中指定的全局百分比进行评估。

例如,如果某种类型的应用程序至关重要,群集管理员可以将条目添加到该应用程序类型的映射,并将其分配值为 0%(即,不容忍任何失败)。 可以使用设置为 20% 的 MaxPercentUnhealthyApplications 参数评估所有其他应用程序,以容忍数千个应用程序实例中的某些故障。

仅当群集清单使用 HealthManager/EnableApplicationTypeHealthEvaluation 的配置条目启用应用程序类型运行状况评估时,才使用应用程序类型运行状况策略映射。

类型:ApplicationTypeHealthPolicyMap
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ClusterManifestVersion

指定存储在 Service Fabric 群集清单中的版本。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Code

指示包仅包含 Service Fabric .msi文件。

类型:SwitchParameter
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-CodePackageVersion

指定 Service Fabric .msi 文件的版本。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Config

指示包是 Service Fabric 群集清单。

类型:SwitchParameter
Position:0
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-ConsiderWarningAsError

指示在群集实体和 Nodes 实体的运行状况评估期间是否将警告运行状况事件视为错误事件。 根据应用程序运行状况策略设置评估应用程序。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EnableDeltaHealthEvaluation

指示使用增量运行状况评估来确定 Service Fabric 群集是否正常。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FailureAction

指定监视升级失败时要执行的操作。 此参数的可接受值为:

  • 回退
  • 手动
类型:UpgradeFailureAction
接受的值:Invalid, Rollback, Manual
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Force

指示此 cmdlet 跳过警告消息并强制升级。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceRestart

指示即使升级是仅配置更改,服务主机也会重启。

类型:SwitchParameter
Position:2
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HealthCheckRetryTimeoutSec

指定持续时间(以秒为单位),如果以前的运行状况检查失败,Service Fabric 会重试运行状况检查。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HealthCheckStableDurationSec

指定 Service Fabric 等待的持续时间(以秒为单位)以验证群集是否稳定,然后再移动到下一个升级域或完成升级。 此等待持续时间可防止在执行运行状况检查后立即检测到运行状况更改。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HealthCheckWaitDurationSec

指定 Service Fabric 在升级域完成升级后执行初始运行状况检查之前等待的持续时间(以秒为单位)。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InstanceCloseDelayDurationSec

指定持续时间(以秒为单位),在关闭受群集升级影响的无状态实例之前等待,以允许活动请求正常耗尽。 此等待持续时间仅适用于为 InstanceCloseDelayDuration 配置了非零值的无状态服务的实例,并将替代预配置的值。 有关详细信息,请参阅 InstanceCloseDelayDuration

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaxPercentDeltaUnhealthyNodes

指定可具有聚合运行状况状态的错误增量不正常节点的最大百分比。 如果当前不正常的节点不遵循相对于升级开始时状态的百分比,则群集被视为不正常。

类型:Byte
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaxPercentUnhealthyApplications

指定可以具有聚合运行状况状态的错误应用程序的最大百分比。 如果当前不正常的应用程序不遵循此数量,则群集被视为不正常。

类型:Byte
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaxPercentUnhealthyNodes

指定可具有聚合运行状况状态的错误节点的最大百分比。 如果当前不正常的应用程序不遵循此百分比,则群集被视为不正常。

类型:Byte
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaxPercentUpgradeDomainDeltaUnhealthyNodes

指定升级域增量不正常节点的最大百分比,这些节点可能具有聚合的运行状况状态错误。 如果有任何升级域,当前不正常的节点不遵循相对于升级开始时状态的百分比,则群集被视为不正常。

类型:Byte
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Monitored

指示升级模式为“受监视”。 这意味着在升级完成升级域后执行运行状况检查。 如果升级域和群集的运行状况符合指定的运行状况策略,Service Fabric 将开始升级下一个升级域。 如果升级域或群集无法满足运行状况策略,升级会失败,Service Fabric 会根据指定的 FailureAction 将升级或切换到不受监视的手动模式。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-NodeTypeHealthPolicyMap

定义特定节点类型的最大百分比不正常节点的映射。

节点类型运行状况策略映射可以在群集运行状况评估期间用于描述特殊的节点类型。 映射中包含的节点类型根据映射中包含的百分比进行评估,并且全局 (也查看 System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes) 。 映射中指定的节点类型的节点节点也根据节点的全局池进行计数:它们是独立的检查。

类型:NodeTypeHealthPolicyMap
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ReplicaQuorumTimeoutSec

指定超时期限(以秒为单位)以检查副本集是否具有仲裁。 超时后,升级将继续。

此参数已弃用。 请改为指定 UpgradeReplicaSetCheckTimeoutSec 参数。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RestartProcess

指示服务主机在升级过程中重启。

此参数已弃用。 请改为指定 ForceRestart 参数。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SortOrder

定义升级在群集中继续执行的顺序。

可能的值为:

  • Invalid - 指示此排序顺序无效。 所有 Service Fabric 枚举都具有无效的类型。
  • Default - 指示将使用群集清单) 中指定的默认排序顺序 (。
  • Numeric - 指示将使用按数字) 排序的 UD 名称 (正向数值排序顺序。
  • Lexicographical - 指示将使用) (按字符串排序的 UD 名称的转发词法排序顺序。
  • ReverseNumeric - 指示将使用) 按数字排序的 UD 名称 (反向数值排序顺序。
  • ReverseLexicographical- 指示将使用反向词法排序顺序 (按字符串) 排序的 UD 名称。
类型:UpgradeSortOrder
接受的值:Invalid, Default, Numeric, Lexicographical, ReverseNumeric, ReverseLexicographical
Position:4
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-TimeoutSec

指定操作的超时时间段(以秒为单位)。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UnmonitoredAuto

指示升级模式为“不受监视的自动”。 不会执行任何运行状况检查,在 Service Fabric 升级升级域后,Service Fabric 会启动下一个升级域的升级,而不管群集运行状况如何。 不建议使用此模式进行生产使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-UnmonitoredManual

指示升级模式为“不受监视的手动”。 Service Fabric 升级升级域后,它会等待 Resume-ServiceFabricClusterUpgrade cmdlet 显式启动下一个升级域的升级。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-UpgradeDomainTimeoutSec

指定 Service Fabric 升级单个升级域所需的最长时间(以秒为单位)。 在此时间段后,升级失败。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UpgradeReplicaSetCheckTimeoutSec

指定 Service Fabric 等待分区处于安全状态(如果尚未处于安全状态)的最大时间。 一旦节点上的所有分区都已通过安全检查,Service Fabric 就会在该节点上继续升级。

类型:UInt32
Position:3
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UpgradeTimeoutSec

指定 Service Fabric 在整个升级中花费的最大时间(以秒为单位)。 在此时间段后,升级失败。

类型:UInt32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示在此 cmdlet 运行的情况下将会发生什么。 此 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

None

输出

System.Object