Get-ServiceFabricClusterHealthChunk

Возвращает сведения о работоспособности кластера Service Fabric и его дочерних элементов.

Синтаксис

Get-ServiceFabricClusterHealthChunk
   [-ConsiderWarningAsError <Boolean>]
   [-MaxPercentUnhealthyApplications <Byte>]
   [-MaxPercentUnhealthyNodes <Byte>]
   [-ApplicationHealthPolicies <ApplicationHealthPolicyMap>]
   [-ApplicationTypeHealthPolicyMap <ApplicationTypeHealthPolicyMap>]
   [-NodeTypeHealthPolicyMap <NodeTypeHealthPolicyMap>]
   [-ApplicationFilters <System.Collections.Generic.List`1[System.Fabric.Health.ApplicationHealthStateFilter]>]
   [-NodeFilters <System.Collections.Generic.List`1[System.Fabric.Health.NodeHealthStateFilter]>]
   [-TimeoutSec <Int32>]
   [<CommonParameters>]

Описание

Командлет Get-ServiceFabricClusterHealthChunk получает сведения о работоспособности для кластеров и сущностей кластера Service Fabric, как запрошено с помощью расширенных фильтров ввода. По умолчанию дочерние сущности не возвращаются. При указании все сущности, уважающие входные данные, возвращаются иерархическим образом.

Service Fabric сообщает о следующих состояниях работоспособности.

  • Все в порядке. Сущность соответствует рекомендациям по работоспособности.
  • Ошибка. Сущность не соответствует рекомендациям по работоспособности.
  • Внимание! Сущность соответствует рекомендациям по работоспособности, но возникают некоторые проблемы.

Агрегированное состояние работоспособности кластера учитывает все отчеты о работоспособности кластера, а также агрегированное состояние работоспособности всех дочерних элементов, рекурсивно. Оценка работоспособности использует политику работоспособности кластера и политику работоспособности приложений каждого приложения в кластере. Политики работоспособности для кластера и оценки приложений можно передать в качестве входных данных. Если значение не указано, оценка работоспособности использует применимые политики работоспособности из кластера и манифеста приложения, если манифест указан, или политики по умолчанию в противном случае.

Блок работоспособности кластера содержит только дочерние элементы, указанные в фильтрах ввода. Фильтрация выполняется на стороне сервера, поэтому размер сообщения сводится к минимуму.

Если запрошенные выходные данные не помещаются в сообщение, результат не возвращается.

Перед выполнением любой операции в кластере Service Fabric установите подключение к кластеру с помощью командлета Connect-ServiceFabricCluster .

Примеры

Пример 1. Получение работоспособности кластера с фильтрами узлов

PS C:\> $ErrorFilter = [System.Fabric.Health.HealthStateFilter]::Error
PS C:\> $AllFilter = [System.Fabric.Health.HealthStateFilter]::All
PS C:\> $NodeFilter1 = New-Object System.Fabric.Health.NodeHealthStateFilter -Property @{HealthStateFilter=$AllFilter}
PS C:\> $NodeFilter2 = New-Object System.Fabric.Health.NodeHealthStateFilter -Property @{NodeNameFilter="N0010";HealthStateFilter=$ErrorFilter}
PS C:\> $NodeFilters = New-Object System.Collections.Generic.List[System.Fabric.Health.NodeHealthStateFilter]
PS C:\> $NodeFilters.Add($NodeFilter1)
PS C:\> $NodeFilters.Add($NodeFilter2)
PS C:\> Get-ServiceFabricClusterHealthChunk -NodeFilter $NodeFilters

Эта команда запрашивает работоспособность кластера. Он задает фильтры для возврата всех узлов, за исключением узла N0010, который должен быть включен только в том случае, если оно агрегировано состояние работоспособности в ошибке.

Пример 2. Получение работоспособности кластера с развернутыми фильтрами сущностей

PS C:\> $ErrorFilter = [System.Fabric.Health.HealthStateFilter]::Error
PS C:\> $AllFilter = [System.Fabric.Health.HealthStateFilter]::All
PS C:\> $DspFilter1 = New-Object System.Fabric.Health.DeployedServicePackageHealthStateFilter -Property @{HealthStateFilter=$AllFilter}
PS C:\> $DaFilter1 =  New-Object System.Fabric.Health.DeployedApplicationHealthStateFilter -Property @{HealthStateFilter=$AllFilter;NodeNameFilter="N0020"}
PS C:\> $DaFilter1.DeployedServicePackageFilters.Add($DspFilter1)
PS C:\> $AppFilter = New-Object System.Fabric.Health.ApplicationHealthStateFilter -Property @{HealthStateFilter=$AllFilter}
PS C:\> $AppFilter.DeployedApplicationFilters.Add($DaFilter1)
PS C:\> $AppFilters = New-Object System.Collections.Generic.List[System.Fabric.Health.ApplicationHealthStateFilter]
PS C:\> $AppFilters.Add($AppFilter)
PS C:\> Get-ServiceFabricClusterHealthChunk -ApplicationFilters $AppFilters

Эта команда запрашивает работоспособность кластера. Он задает фильтры для возврата всех приложений и развернутых приложений и развернутых пакетов служб на указанном узле (N0020).

Пример 3. Получение работоспособности кластера с помощью фильтра приложения, включающего рекурсивные внутренние фильтры

PS C:\> $ErrorFilter = [System.Fabric.Health.HealthStateFilter]::Error
PS C:\> $AllFilter = [System.Fabric.Health.HealthStateFilter]::All
PS C:\> $ReplicaFilter1 = New-Object System.Fabric.Health.ReplicaHealthStateFilter -Property @{ReplicaOrInstanceIdFilter= 130984777977143495;HealthStateFilter=$ErrorFilter}
PS C:\> $ReplicaFilter2 = New-Object System.Fabric.Health.ReplicaHealthStateFilter -Property @{HealthStateFilter=$AllFilter}

PS C:\> $PartitionFilter = New-Object System.Fabric.Health.PartitionHealthStateFilter -Property @{HealthStateFilter=$AllFilter}
PS C:\> $PartitionFilter.ReplicaFilters.Add($ReplicaFilter1)
PS C:\> $PartitionFilter.ReplicaFilters.Add($ReplicaFilter2)

PS C:\> $SvcFilter1 = New-Object System.Fabric.Health.ServiceHealthStateFilter -Property @{HealthStateFilter=$AllFilter}
PS C:\> $SvcFilter1.PartitionFilters.Add($PartitionFilter)

PS C:\> $AppFilter = New-Object System.Fabric.Health.ApplicationHealthStateFilter -Property @{ApplicationNameFilter="fabric:/app1"}
PS C:\> $AppFilter.ServiceFilters.Add($SvcFilter1)

PS C:\> $AppFilters = New-Object System.Collections.Generic.List[System.Fabric.Health.ApplicationHealthStateFilter]
PS C:\> $AppFilters.Add($AppFilter)
PS C:\> Get-ServiceFabricClusterHealthChunk -ApplicationFilters $AppFilters

Эта команда запрашивает работоспособность кластера. Он задает фильтры для возврата только приложения. Фильтр возвращает все службы приложений, а для каждой службы — все секции. Для каждой секции она включает все реплики, за исключением 130984777977143495, которые должны быть возвращены только в случае ошибки.

Параметры

-ApplicationFilters

Указывает объекты Systems.Collections.Generic.List объектов System.Fabric.Health.ApplicationHealthStateFilter . Возвращаются только приложения, уважающие наиболее конкретный фильтр. Вы можете указать фильтры для отдельных приложений или для всех приложений. Допускается только один общий фильтр и один фильтр для каждого приложения.

Если этот параметр не указан, приложения не возвращаются.

Type:System.Collections.Generic.List`1[System.Fabric.Health.ApplicationHealthStateFilter]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationHealthPolicies

Указывает System.Fabric.Health.ApplicationHealthPolicyMap , который включает настраиваемые политики работоспособности для некоторых или всех приложений. Если этот параметр не указан или не включена запись в карту для приложения, это приложение оценивается с помощью политики работоспособности приложения, определенной в манифесте приложения, если она существует, или политика по умолчанию.

Type:ApplicationHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationTypeHealthPolicyMap

Указывает карту, определяющую максимальный процент неработоспособных приложений, разрешенных для каждого типа приложения. Типы приложений на этой карте оцениваются с использованием определенных процентных значений, а не глобального процента MaxPercentUnhealthyApplications .

Например, если некоторые приложения типа критически важны, администратор кластера может добавить запись на карту для этого типа приложения и назначить ему значение 0 % (то есть не допускайте сбоев). Все остальные приложения можно оценить с помощью MaxPercentUnhealthyApplications равным 20 %, чтобы обеспечить некоторые сбои из тысяч экземпляров приложения.

Сопоставление политики работоспособности для типа приложения используется только в том случае, если манифест кластера включает оценку работоспособности типа приложения с использованием записи конфигурации для HealthManager/EnableApplicationTypeHealthEvaluation.

Type:ApplicationTypeHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConsiderWarningAsError

Указывает, следует ли рассматривать отчет о работоспособности предупреждения как ошибку во время оценки работоспособности. Это значение используется для оценки узлов и отчетов о работоспособности кластера.

Если ни один из параметров политики работоспособности кластера не указан, оценка работоспособности использует политику работоспособности кластера из манифеста кластера, если она существует, или политику по умолчанию, которая не допускает сбоев.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPercentUnhealthyApplications

Указывает максимальный допустимый процент неработоспособных приложений. Если имеется больше приложений с агрегированным состоянием работоспособности ошибки, чем допускается, состояние работоспособности кластера — "Ошибка".

Если ни один из параметров политики работоспособности кластера не указан, оценка работоспособности использует политику работоспособности кластера из манифеста кластера, если она существует, или политику по умолчанию, которая не допускает сбоев.

Type:Byte
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPercentUnhealthyNodes

Указывает максимальный допустимый процент неработоспособных узлов. Если имеется больше узлов с агрегированным состоянием работоспособности ошибки, чем допускается, кластер оценивается как ошибка. Если этот параметр не указан, оценка работоспособности использует значение, указанное в манифесте кластера.

Если ни один из параметров политики работоспособности кластера не указан, оценка работоспособности использует политику работоспособности кластера из манифеста кластера, если она существует, или политику по умолчанию, которая не допускает сбоев.

Type:Byte
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NodeFilters

Задает объекты Systems.Collections.Generic.Listобъектов System.Fabric.Health.NodeHealthStateFilter . Возвращаются только узлы, уважающие наиболее конкретный фильтр. Вы можете указать фильтры для отдельных узлов или для всех узлов. Допускается только один общий фильтр и один фильтр на узел. Если этот параметр не указан, узлы не возвращаются.

Type:System.Collections.Generic.List`1[System.Fabric.Health.NodeHealthStateFilter]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NodeTypeHealthPolicyMap

Определяет карту с максимальным процентом неработоспособных узлов для определенных типов узлов.

Сопоставление политики работоспособности для типа узла используется при оценке работоспособности кластера для описания особых типов узлов. Типы узлов, включенные в карту, оцениваются в процентах, включенных в карту, а также с глобальными (см. раздел System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Узлы типов узлов, указанных на карте, также учитываются в глобальном пуле узлов; они являются независимыми проверками.

Type:NodeTypeHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeoutSec

Указывает период времени ожидания (в секундах) для операции.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Выходные данные

System.Object