Get-ServiceFabricClusterHealth

Obtém informações de integridade para um cluster do Service Fabric.

Sintaxe

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

Description

O cmdlet Get-ServiceFabricClusterHealth obtém informações de integridade para um cluster do Service Fabric. O Service Fabric relata os seguintes estados de integridade:

  • OK. A entidade atende às diretrizes de integridade.
  • Erro. A entidade não atende às diretrizes de integridade.
  • Aviso. A entidade atende às diretrizes de integridade, mas teve algum problema.

O estado de integridade agregado do cluster leva em consideração todos os relatórios de integridade no cluster, bem como o estado de integridade agregado de todas as crianças, recursivamente. A avaliação de integridade usa a política de integridade do cluster e a política de integridade do aplicativo de cada aplicativo no cluster.

Antes de executar qualquer operação em um cluster do Service Fabric, estabeleça uma conexão com o cluster usando o cmdlet Connect-ServiceFabricCluster .

Exemplos

Exemplo 1: Obter a integridade do cluster e filtrar filhos retornados

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

Esse comando consulta a integridade do cluster. Ele especifica filtros para retornar apenas nós com o estado de integridade Erro e aplicativos com o estado de integridade Aviso ou Erro.

Exemplo 2: Obter a integridade do cluster usando políticas de integridade personalizadas

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

Esse comando consulta a integridade do cluster e passa as políticas personalizadas.

Exemplo 3: Obter a integridade do cluster usando um mapa de política de integridade do tipo de aplicativo

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

Esse comando consulta a integridade do cluster e passa em um mapa de política de integridade do tipo de aplicativo. O tipo de aplicativo CriticalAppType não tolera falhas. Os aplicativos restantes são avaliados usando um percentual máximo de 20% não íntegro.

Exemplo 4: Obter a integridade do cluster sem eventos de integridade e sem estatísticas de integridade

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

Esse comando consulta a integridade do cluster. Ele especifica filtros para excluir quaisquer eventos de integridade e estatísticas de integridade.

Exemplo 5: obter a integridade do cluster com as estatísticas do aplicativo fabric:/System incluídas

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

Esse comando consulta a integridade do cluster. As estatísticas de integridade retornadas como parte da integridade do cluster contêm as estatísticas do aplicativo fabric:/System, além das estatísticas de aplicativos do usuário.

Parâmetros

-ApplicationHealthPolicyMap

Especifica o objeto ApplicationHealthPolicyMap que inclui políticas de integridade personalizadas para alguns ou todos os aplicativos. Se você não especificar esse parâmetro, a avaliação de integridade usará as políticas de integridade do aplicativo definidas no manifesto do aplicativo ou na política de integridade padrão.

Tipo:ApplicationHealthPolicyMap
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ApplicationsFilter

Especifica o filtro para crianças ApplicationHealthState com base no estado de integridade. O valor pode ser obtido de membros ou operações bit a bit em membros do HealthStateFilter. Somente os filhos que correspondem ao filtro são retornados. Todas as crianças são usadas para avaliar o estado de integridade agregado da entidade. Se não for especificado, retorna todas as entradas.

Tipo:HealthStateFilter
Valores aceitos:Default, None, Ok, Warning, Error, All
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ApplicationsHealthStateFilter

Esse parâmetro foi preterido. Especifique o parâmetro ApplicationsFilter .

Tipo:Int64
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ApplicationTypeHealthPolicyMap

Especifica o mapa que define o percentual máximo de aplicativos não íntegros permitidos por tipo de aplicativo. Os tipos de aplicativo neste mapa são avaliados usando porcentagens específicas em vez do percentual global de MaxPercentUnhealthyApplications .

Por exemplo, se alguns aplicativos de um tipo são críticos, o administrador do cluster pode adicionar uma entrada no mapa para esse tipo de aplicativo e atribuir a ela um valor de 0% (ou seja, não tolerar falhas). Todos os outros aplicativos podem ser avaliados com MaxPercentUnhealthyApplications definido como 20% para tolerar algumas falhas de milhares de instâncias de aplicativo.

O mapa da política de integridade do tipo de aplicativo será usado somente se o manifesto do cluster habilitar a avaliação de integridade do tipo de aplicativo usando a entrada de configuração para HealthManager/EnableApplicationTypeHealthEvaluation.

Tipo:ApplicationTypeHealthPolicyMap
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ConsiderWarningAsError

Indica se um relatório de integridade de aviso deve ser tratado como um erro durante a avaliação de integridade. Esse valor é usado para avaliação de nós e relatórios de integridade do cluster.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EventsFilter

Especifica o filtro para a coleção de HealthEvents relatada no cluster com base no estado de integridade. O valor pode ser obtido de membros ou operações bit a bit em membros do HealthStateFilter. Somente os eventos que correspondem ao filtro são retornados. Todos os eventos são usados para avaliar o estado de integridade agregado do cluster. Se não for especificado, retorna todas as entradas.

Tipo:HealthStateFilter
Valores aceitos:Default, None, Ok, Warning, Error, All
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EventsHealthStateFilter

Esse parâmetro foi preterido. Em vez disso, especifique o parâmetro EventsFilter .

Tipo:Int64
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ExcludeHealthStatistics

Indica se as estatísticas de integridade devem ser incluídas no resultado da consulta. Se especificado, as estatísticas de integridade não serão retornadas como parte do resultado da consulta. Caso contrário, o resultado da consulta inclui as estatísticas de integridade do cluster, que contêm informações sobre quantas entidades estão nos estados Ok, Aviso e Erro.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-IncludeSystemApplicationHealthStatistics

Indica se as estatísticas de integridade devem incluir informações para o aplicativo fabric:/System. Se especificado, o aplicativo, o serviço, a partição, a réplica, o aplicativo implantado e as contagens de pacotes de serviço implantados incluem as entidades do Sistema. Se não for especificado, as estatísticas de integridade retornarão contagens de estado de integridade somente para aplicativos de usuário.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MaxPercentUnhealthyApplications

Especifica o percentual máximo tolerado de aplicativos não íntegros. Se houver mais aplicativos com estado de integridade agregado de erro do que tolerado, o estado de integridade do cluster será um erro. Se você não especificar esse parâmetro, a avaliação de integridade usará o valor fornecido no manifesto do cluster.

Tipo:Byte
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MaxPercentUnhealthyNodes

Especifica o percentual máximo tolerado de nós não íntegros. Se houver mais nós com estado de integridade agregado de erro do que tolerado, o cluster será avaliado como erro. Se você não especificar esse parâmetro, a avaliação de integridade usará o valor fornecido no manifesto do cluster.

Tipo:Byte
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NodesFilter

Especifica o filtro para crianças NodeHealthState com base no estado de integridade. O valor pode ser obtido de membros ou operações bit a bit em membros do HealthStateFilter. Somente os filhos que correspondem ao filtro são retornados. Todas as crianças são usadas para avaliar o estado de integridade agregado da entidade. Se não for especificado, retorna todas as entradas.

Tipo:HealthStateFilter
Valores aceitos:Default, None, Ok, Warning, Error, All
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NodesHealthStateFilter

Esse parâmetro foi preterido. Em vez disso , especifique o parâmetro NodesFilter .

Tipo:Int64
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NodeTypeHealthPolicyMap

Define um mapa com percentuais máximos de nós não íntegros para tipos de nó específicos.

O mapa da política de integridade de tipo de nó pode ser usado durante a avaliação de integridade do cluster para descrever tipos especiais de nós. Os tipos de nó incluídos no mapa são avaliados em relação ao percentual incluído no mapa e também com o global (consulte System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Os nós de tipos de nó especificados no mapa também são contados em relação ao pool global de nós; são verificações independentes.

Tipo:NodeTypeHealthPolicyMap
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-TimeoutSec

Especifica o período de tempo limite, em segundos, para a operação.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

None

Saídas

System.Object