Update-ServiceFabricClusterUpgrade

アクティブなクラスター アップグレードのアップグレードの説明を変更します。

構文

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>]

説明

Update-ServiceFabricClusterUpgrade コマンドレットは、アップグレードがまだアクティブな間にクラスターのアップグレードの説明のパラメーターを変更します。 Service Fabric は、クラスター マニフェストで指定されているように、 FabricUpgradeStatusPollInterval 値に従って変更を検出して適用します。 正常性評価ポリシーを除き、このコマンドレットは指定したパラメーターのみを更新します。 指定されていないパラメーターは影響を受けません。 個別ではなく、次の正常性評価ポリシーを一緒に更新する必要があります。

  • ConsiderWarningAsError
  • MaxPercentUnhealthyApplications
  • MaxPercentUnhealthyNodes

Service Fabric クラスターを管理するには、[管理者として実行] オプションを使用してWindows PowerShellを開始します。 Service Fabric クラスターで操作を実行する前に、 Connect-ServiceFabricCluster コマンドレットを使用してクラスターへの接続を確立します。

例 1: クラスターのアップグレードの値を更新する

PS C:\> Update-ServiceFabricClusterUpgrade -UpgradeReplicaSetCheckTimeoutSec 0

このコマンドは、保留中のクラスターのアップグレードに対してレプリカ セットのチェックアウト期間を 0 に設定します。 更新プログラムは、他のすべてのアップグレード値のみを残します。

例 2: クラスターのアップグレードの正常性ポリシーを更新する

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

このコマンドは、クラスターのアップグレード クラスター正常性ポリシーを変更します。 アプリケーションの種類 CriticalAppType を含むアプリケーションの種類の正常性ポリシー マップを指定します。これは、エラーを許容しません。 残りのアプリケーションは、20% の最大異常率を使用して評価されます。

また、このコマンドは、クラスターのアップグレード正常性評価の一環として、ファブリック:/システム アプリケーションの評価に使用されるアプリケーション正常性ポリシーも更新します。 新しいポリシーでは、すべてのパーティション エラーが許容されます。

パラメーター

-ApplicationHealthPolicyMap

一部またはすべてのアプリケーションのカスタム正常性ポリシーを含む System.Fabric.Health.ApplicationHealthPolicyMap を指定します。 このパラメーターを指定しない場合、またはアプリケーションのマップにエントリを含まない場合、そのアプリケーションはアプリケーション マニフェストに定義されているアプリケーション正常性ポリシー (存在する場合は既定のポリシー) で評価されます。それ以外の場合は、そのアプリケーションが評価されます。

型:ApplicationHealthPolicyMap
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ApplicationTypeHealthPolicyMap

アプリケーションの種類ごとに許可される異常なアプリケーションの最大割合を定義するマップを指定します。 このマップのアプリケーションの種類は、グローバル MaxPercentUnhealthyApplications の割合ではなく、特定のパーセンテージを使用して評価されます。

たとえば、ある種類の一部のアプリケーションがクリティカルである場合、クラスター管理者はそのアプリケーションの種類のエントリをマップに追加し、値 0% を割り当てることができます (つまり、すべてのエラーは許容されません)。 MaxPercentUnhealthyApplications を 20% に設定すると、他のすべてのアプリケーションを評価して、数千のアプリケーション インスタンスからの一部の障害を許容できます。

アプリケーションの種類の正常性ポリシー マップは、クラスター マニフェストが HealthManager/EnableApplicationTypeHealthEvaluation の構成エントリを使用してアプリケーションの種類の正常性評価を有効にする場合にのみ使用されます。

型:ApplicationTypeHealthPolicyMap
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ConsiderWarningAsError

正常性評価中に警告正常性レポートをエラーとして扱うかどうかを示します。

型:Boolean
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EnableDeltaHealthEvaluation

監視対象のアップグレードで正常性評価中に差分正常性チェックを有効にするかどうかを示します。 $Trueの値を指定すると、Service Fabric はアップグレードの開始時に正常性のスナップショットを取得します。 各アップグレード ドメインがアップグレードを完了すると、正常性チェックによってクラスターの現在の状態とスナップショットが比較されます。 現在のクラスター アップグレード正常性ポリシーからの最大許可パーセンテージを考慮しない正常性の低下がある場合、正常性チェックは失敗します。

型:Boolean
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-FailureAction

監視対象のアップグレードが失敗した場合に実行するアクションを指定します。 このパラメーターの有効値は、次のとおりです。

  • ロールバック
  • 手動。
型:UpgradeFailureAction
指定可能な値:Invalid, Rollback, Manual
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Force

このコマンドレットが警告メッセージをスキップし、強制的に更新することを示します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ForceRestart

動的構成のみが変更された場合でも、Service Fabric ノードを再起動するかどうかを示します。

型:Boolean
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-HealthCheckRetryTimeoutSec

前の正常性チェックが失敗した場合に Service Fabric が正常性チェックを再試行する期間を秒単位で指定します。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-HealthCheckStableDurationSec

次のアップグレード ドメインに進むか、アップグレードを完了するまでにクラスターが安定していることを確認するために Service Fabric が待機する時間 (秒単位) を指定します。 この待機時間により、正常性チェックが実行された直後に検出されない正常性の変更が防止されます。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-HealthCheckWaitDurationSec

アップグレード ドメインでのアップグレードが完了した後に、Service Fabric が初期正常性チェックを実行するまで待機する時間 (秒単位) を指定します。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InstanceCloseDelayDurationSec

アクティブな要求が正常にドレインできるように、クラスターのアップグレードによって影響を受けるステートレス インスタンスが閉じられるまで待機する時間を秒単位で指定します。 この待機期間は、InstanceCloseDelayDuration に対してゼロ以外の値が構成され、事前に構成された値をオーバーライドするステートレス サービスのインスタンスに対してのみ有効です。 詳細については 、InstanceCloseDelayDuration を参照してください。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxPercentDeltaUnhealthyNodes

エラーの正常性状態を集計できる差分異常ノードの許容最大許容割合を指定します。 現在の異常なノードがアップグレードの開始時の状態に対する割合を考慮しない場合、クラスターは異常です。

型:Byte
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxPercentUnhealthyApplications

エラーの正常性状態を集計できるアプリケーションの許容される最大パーセンテージを指定します。 アップグレードがこの割合を超えると、クラスターは異常です。

型:Byte
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxPercentUnhealthyNodes

エラーの正常性状態を集計できるノードの許容される最大パーセンテージを指定します。 アップグレードがこの割合を超えると、クラスターは異常です。

型:Byte
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxPercentUpgradeDomainDeltaUnhealthyNodes

エラーの正常性状態を集計できるアップグレード ドメイン デルタ異常ノードの許容最大許容割合を指定します。 現在の異常なノードがアップグレードの開始時の状態に対する割合を考慮しないアップグレード ドメインがある場合、クラスターは異常です。

型:Byte
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-NodeTypeHealthPolicyMap

特定のノード タイプに対する異常なノードの最大パーセンテージを持つマップを定義します。

ノードの種類の正常性ポリシー マップをクラスターの正常性評価時に使用して、特別なノードの種類を記述できます。 マップに含まれるノードの種類は、マップに含まれる割合に対して評価され、グローバルも評価されます (System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes を参照)。 マップで指定されたノード タイプのノードも、ノードのグローバル プールに対してカウントされます。これらは独立したチェックです。

型:NodeTypeHealthPolicyMap
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TimeoutSec

操作のタイムアウト期間を秒単位で指定します。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-UpgradeDomainTimeoutSec

Service Fabric が 1 つのアップグレード ドメインをアップグレードするのにかかる最大時間 (秒単位) を指定します。 この期間が経過すると、アップグレードは失敗します。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-UpgradeMode

アップグレードの新しい UpgradeMode を指定します。

型:RollingUpgradeMode
指定可能な値:Invalid, UnmonitoredAuto, UnmonitoredManual, Monitored
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-UpgradeReplicaSetCheckTimeoutSec

Service Fabric がまだ安全な状態でない場合に、Service Fabric がアップグレードを続行する前に、レプリカ セットが安全な状態に再構成されるまで待機する最大時間 (秒単位) を指定します。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-UpgradeTimeoutSec

Service Fabric がアップグレード全体に要する最大時間 (秒単位) を指定します。 この期間が経過すると、アップグレードは失敗します。

型:UInt32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

None

出力

System.Object