你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
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 cmdlet 获取 Service Fabric 群集的运行状况信息。 Service Fabric 报告以下运行状况:
- 没问题。 实体符合运行状况准则。
- 错误。 该实体不符合运行状况准则。
- 警告。 该实体符合运行状况准则,但遇到了一些问题。
群集的聚合运行状况状态会考虑群集上的所有运行状况报告以及所有子项的聚合运行状况状态,递归方式。 运行状况评估使用群集运行状况策略和群集中每个应用程序的应用程序运行状况策略。
在 Service Fabric 群集上执行任何操作之前,请使用 Connect-ServiceFabricCluster cmdlet 建立与群集的连接。
示例
示例 1:获取群集的运行状况并筛选返回的子级
PS C:\> Get-ServiceFabricClusterHealth -NodesFilter Error -ApplicationsFilter 'Warning,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 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ApplicationsFilter
根据运行状况指定 ApplicationHealthState 子级的筛选器。 可以从成员中获取该值,也可以从 HealthStateFilter 成员上的按位操作获取该值。 仅返回与筛选器匹配的子级。 所有子级用于评估实体聚合的运行状况状态。 如果未指定,则返回所有项。
类型: | HealthStateFilter |
接受的值: | Default, None, Ok, Warning, Error, All |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ApplicationsHealthStateFilter
此参数已弃用。 请改为指定 ApplicationsFilter 参数。
类型: | Int64 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ApplicationTypeHealthPolicyMap
指定定义每个应用程序类型允许的不正常应用程序的最大百分比的映射。 此映射中的应用程序类型使用特定百分比而不是全局 MaxPercentUnhealthyApplications 百分比进行评估。
例如,如果某种类型的应用程序至关重要,群集管理员可以将条目添加到该应用程序类型的映射,并将其分配值为 0%(即,不容忍任何失败)。 可以使用 MaxPercentUnhealthyApplications 设置为 20% 评估所有其他应用程序,以容忍数千个应用程序实例中出现某些故障。
仅当群集清单使用 HealthManager/EnableApplicationTypeHealthEvaluation 的配置条目启用应用程序类型运行状况评估时,才使用应用程序类型运行状况策略映射。
类型: | ApplicationTypeHealthPolicyMap |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ConsiderWarningAsError
指示是否在运行状况评估期间将警告运行状况报告视为错误。 此值用于评估节点和群集运行状况报告。
类型: | Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EventsFilter
根据运行状况指定针对群集报告的 HealthEvents 集合的筛选器。 可以从成员中获取该值,也可以从 HealthStateFilter 成员上的按位操作获取该值。 仅返回与筛选器匹配的事件。 所有事件都用于评估群集的聚合运行状况状态。 如果未指定,则返回所有项。
类型: | HealthStateFilter |
接受的值: | Default, None, Ok, Warning, Error, All |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EventsHealthStateFilter
此参数已弃用。 请改为指定 EventsFilter 参数。
类型: | Int64 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ExcludeHealthStatistics
指示是否应将运行状况统计信息包含在查询结果中。 如果指定,则运行状况统计信息不会作为查询结果的一部分返回。 否则,查询结果包括群集运行状况统计信息,其中包含有关“确定”、“警告”和“错误”状态中的实体数的信息。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-IncludeSystemApplicationHealthStatistics
指示运行状况统计信息是否应包含 fabric:/System 应用程序的信息。 如果指定,则应用程序、服务、分区、副本、已部署的应用程序和已部署的服务包计数包括系统实体。 如果未指定,则运行状况统计信息仅返回用户应用程序的运行状况状态计数。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaxPercentUnhealthyApplications
指定不正常应用程序的最大容忍百分比。 如果存在与容忍的聚合运行状况状态相比更多的应用程序,则群集的运行状况状态为错误。 如果未指定此参数,运行状况评估将使用群集清单中提供的值。
类型: | Byte |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaxPercentUnhealthyNodes
指定不正常节点的最大容忍百分比。 如果节点的聚合运行状况状态比容忍的节点多,则群集的计算结果为错误。 如果未指定此参数,运行状况评估将使用群集清单中提供的值。
类型: | Byte |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NodesFilter
根据运行状况指定 NodeHealthState 子级的筛选器。 可以从成员中获取该值,也可以从 HealthStateFilter 成员上的按位操作获取该值。 仅返回与筛选器匹配的子级。 所有子级用于评估实体聚合的运行状况状态。 如果未指定,则返回所有项。
类型: | HealthStateFilter |
接受的值: | Default, None, Ok, Warning, Error, All |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NodesHealthStateFilter
此参数已弃用。 请改为指定 NodesFilter 参数。
类型: | Int64 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NodeTypeHealthPolicyMap
定义特定节点类型的最大百分比不正常节点的映射。
节点类型运行状况策略映射可以在群集运行状况评估期间用于描述特殊的节点类型。 映射中包含的节点类型根据映射中包含的百分比进行评估,并且全局 (也查看 System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes) 。 映射中指定的节点类型的节点节点也根据节点的全局池进行计数:它们是独立的检查。
类型: | NodeTypeHealthPolicyMap |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-TimeoutSec
指定操作的超时时间段(以秒为单位)。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
输出
System.Object