Get-ServiceFabricClusterHealth

Service Fabric クラスターの正常性情報を取得します。

構文

Get-ServiceFabricClusterHealth
   [-ConsiderWarningAsError <Boolean>]
   [-MaxPercentUnhealthyApplications <Byte>]
   [-MaxPercentUnhealthyNodes <Byte>]
   [-EventsHealthStateFilter <Int64>]
   [-EventsFilter <HealthStateFilter>]
   [-ApplicationsHealthStateFilter <Int64>]
   [-ApplicationsFilter <HealthStateFilter>]
   [-NodesHealthStateFilter <Int64>]
   [-NodesFilter <HealthStateFilter>]
   [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
   [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
   [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
   [-IncludeSystemApplicationHealthStatistics]
   [-TimeoutSec <Int32>]
   [<CommonParameters>]
Get-ServiceFabricClusterHealth
   [-ConsiderWarningAsError <Boolean>]
   [-MaxPercentUnhealthyApplications <Byte>]
   [-MaxPercentUnhealthyNodes <Byte>]
   [-EventsHealthStateFilter <Int64>]
   [-EventsFilter <HealthStateFilter>]
   [-ApplicationsHealthStateFilter <Int64>]
   [-ApplicationsFilter <HealthStateFilter>]
   [-NodesHealthStateFilter <Int64>]
   [-NodesFilter <HealthStateFilter>]
   [-ApplicationHealthPolicyMap <ApplicationHealthPolicyMap>]
   [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
   [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
   [-ExcludeHealthStatistics]
   [-TimeoutSec <Int32>]
   [<CommonParameters>]

説明

Get-ServiceFabricClusterHealth コマンドレットは、Service Fabric クラスターの正常性情報を取得します。 Service Fabric は、次の正常性状態を報告します。

  • わかりました。 エンティティは正常性ガイドラインを満たしています。
  • エラー。 エンティティが正常性ガイドラインを満たしていません。
  • 警告。 エンティティは正常性ガイドラインを満たしていますが、問題が発生しました。

クラスターの集計された正常性状態では、クラスター上のすべての正常性レポートと、すべての子の集計された正常性状態が再帰的に考慮されます。 正常性評価では、クラスターの正常性ポリシーと、クラスター内の各アプリケーションのアプリケーション正常性ポリシーが使用されます。

Service Fabric クラスターで操作を実行する前に、Connect-ServiceFabricCluster コマンドレットを使用してクラスターへの接続を確立します。

例 1: クラスターの正常性を取得し、返された子をフィルター処理する

PS C:\> Get-ServiceFabricClusterHealth -NodesFilter Error -ApplicationsFilter 'Warning,Error'

このコマンドは、クラスターの正常性を照会します。 正常性状態が Error のノードと、正常性状態が警告またはエラーのアプリケーションのみを返すフィルターを指定します。

例 2: カスタム正常性ポリシーを使用してクラスターの正常性を取得する

PS C:\> $defaultServiceTypeHealthPolicy = new-object -TypeName System.Fabric.Health.ServiceTypeHealthPolicy
$defaultServiceTypeHealthPolicy.MaxPercentUnhealthyPartitionsPerService = 20
$defaultServiceTypeHealthPolicy.MaxPercentUnhealthyServices = 10
$appHealthPolicy = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicy
$appHealthPolicy.ConsiderWarningAsError = $True
$appHealthPolicy.MaxPercentUnhealthyDeployedApplications = 20
$appHealthPolicy.DefaultServiceTypeHealthPolicy = $defaultServiceTypeHealthPolicy
$appHealthPolicyMap = New-Object -TypeName System.Fabric.Health.ApplicationHealthPolicyMap
$appUri1 = New-Object -TypeName System.Uri -ArgumentList "fabric:/app1"
$appHealthPolicyMap.Add($appUri1, $appHealthPolicy)
Get-ServiceFabricClusterHealth -ConsiderWarningAsError $True -MaxPercentUnhealthyNodes 10 -ApplicationHealthPolicyMap $appHealthPolicyMap

このコマンドは、クラスターの正常性を照会し、カスタム ポリシーを渡します。

例 3: アプリケーションの種類の正常性ポリシー マップを使用してクラスターの正常性を取得する

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

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

例 4: 正常性イベントがなく、正常性統計なしでクラスターの正常性を取得する

PS C:\> Get-ServiceFabricClusterHealth -EventsFilter None -ExcludeHealthStatistics

このコマンドは、クラスターの正常性を照会します。 正常性イベントと正常性統計を除外するフィルターを指定します。

例 5: fabric:/System アプリケーション統計を含むクラスターの正常性を取得する

PS C:\> Get-ServiceFabricClusterHealth -EventsFilter None -IncludeSystemApplicationHealthStatistics

このコマンドは、クラスターの正常性を照会します。 クラスターの正常性の一部として返される正常性統計には、ユーザー アプリケーションの統計情報に加えて、fabric:/System アプリケーションの統計情報が含まれます。

パラメーター

-ApplicationHealthPolicyMap

一部またはすべてのアプリケーションのカスタム正常性ポリシーを含む ApplicationHealthPolicyMap オブジェクト を指定します。 このパラメーターを指定しない場合、正常性評価では、アプリケーション マニフェストまたは既定の正常性ポリシーで定義されているアプリケーション正常性ポリシーが使用されます。

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

-ApplicationsFilter

正常性状態に基づいて、ApplicationHealthState 子のフィルターを指定します。 値は、HealthStateFilterのメンバーに対するメンバーまたはビットごとの操作から取得できます。 フィルターに一致する子のみが返されます。 すべての子は、エンティティの集計された正常性状態を評価するために使用されます。 指定しない場合は、すべてのエントリが返されます。

型:HealthStateFilter
指定可能な値:Default, None, Ok, Warning, Error, All
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ApplicationsHealthStateFilter

このパラメーターは非推奨になりました。 代わりに、ApplicationsFilter パラメーターを指定します。

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

-ApplicationTypeHealthPolicyMap

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

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

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

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

-ConsiderWarningAsError

正常性評価中に警告正常性レポートをエラーとして扱うかどうかを示します。 この値は、ノードとクラスターの正常性レポートの評価に使用されます。

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

-EventsFilter

正常性状態に基づいてクラスターで報告 HealthEvents のコレクションのフィルターを指定します。 値は、HealthStateFilterのメンバーに対するメンバーまたはビットごとの操作から取得できます。 フィルターに一致するイベントのみが返されます。 すべてのイベントは、クラスターの集計された正常性状態を評価するために使用されます。 指定しない場合は、すべてのエントリが返されます。

型:HealthStateFilter
指定可能な値:Default, None, Ok, Warning, Error, All
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EventsHealthStateFilter

このパラメーターは非推奨になりました。 代わりに、EventsFilter パラメーターを指定します。

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

-ExcludeHealthStatistics

正常性統計をクエリ結果に含める必要があるかどうかを示します。 指定した場合、正常性統計はクエリ結果の一部として返されません。 それ以外の場合、クエリ結果にはクラスターの正常性統計が含まれます。これには、OK、警告、エラーの状態にあるエンティティの数に関する情報が含まれます。

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

-IncludeSystemApplicationHealthStatistics

正常性統計に fabric:/System アプリケーションの情報を含める必要があるかどうかを示します。 指定した場合、アプリケーション、サービス、パーティション、レプリカ、デプロイされたアプリケーション、およびデプロイされたサービス パッケージの数には、システム エンティティが含まれます。 指定しない場合、正常性統計はユーザー アプリケーションの正常性状態カウントのみを返します。

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

-MaxPercentUnhealthyApplications

異常なアプリケーションの許容される最大割合を指定します。 正常性状態がエラーの集計されたアプリケーションの数が許容されるよりも多い場合、クラスターの正常性状態はエラーになります。 このパラメーターを指定しない場合、正常性評価ではクラスター マニフェストで指定された値が使用されます。

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

-MaxPercentUnhealthyNodes

異常なノードの許容される最大パーセンテージを指定します。 正常性状態が集計されたエラーが許容されるノードよりも多い場合、クラスターはエラーとして評価されます。 このパラメーターを指定しない場合、正常性評価ではクラスター マニフェストで指定された値が使用されます。

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

-NodesFilter

正常性状態に基づいて、NodeHealthState 子のフィルターを指定します。 値は、HealthStateFilterのメンバーに対するメンバーまたはビットごとの操作から取得できます。 フィルターに一致する子のみが返されます。 すべての子は、エンティティの集計された正常性状態を評価するために使用されます。 指定しない場合は、すべてのエントリが返されます。

型:HealthStateFilter
指定可能な値:Default, None, Ok, Warning, Error, All
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-NodesHealthStateFilter

このパラメーターは非推奨になりました。 代わりに、NodesFilter パラメーターを指定します。

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

-NodeTypeHealthPolicyMap

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

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

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

-TimeoutSec

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

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

入力

None

出力

System.Object