Partilhar via


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 orientações sanitárias.
  • Erro. A entidade não atende às orientações sanitárias.
  • Atenção. A entidade atende às orientações sanitárias, mas passou por algum problema.

O estado de saúde agregado do cluster leva em consideração todos os relatórios de saúde no cluster, bem como o estado de saúde agregado de todas as crianças, recursivamente. A avaliação de integridade usa a diretiva de integridade do cluster e a diretiva 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'

Este comando consulta a integridade do cluster. Ele especifica filtros para retornar somente nós com erro de estado de integridade e aplicativos com 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

Este comando consulta a integridade do cluster e passa em políticas personalizadas.

Exemplo 3: Obter a integridade do cluster usando um mapa de diretiva de integridade de 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

Este comando consulta a integridade do cluster e passa em um mapa de diretiva de integridade do tipo de aplicativo. O tipo de aplicativo CriticalAppType não tolera falhas. As restantes aplicações são avaliadas utilizando 20% percentagem máxima de insalubres.

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

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

Este comando consulta a integridade do cluster. Especifica filtros para excluir quaisquer eventos de integridade e as estatísticas de integridade.

Exemplo 5: Obter a integridade do cluster com estatísticas de malha:/Aplicativo do sistema incluídas

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

Este 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 mal:/System, além das estatísticas dos 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 diretivas de integridade do aplicativo definidas no manifesto do aplicativo ou a diretiva de integridade padrão.

Tipo:ApplicationHealthPolicyMap
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ApplicationsFilter

Especifica o filtro para ApplicationHealthState filhos com base no estado de integridade. O valor pode ser obtido de membros ou operações bitwise em membros do HealthStateFilter. Apenas as crianças que correspondem ao filtro são devolvidas. Todas as crianças são utilizadas para avaliar o estado de saúde agregado da entidade. Se não for especificado, todas as entradas serão retornadas.

Tipo:HealthStateFilter
Valores aceites:Default, None, Ok, Warning, Error, All
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ApplicationsHealthStateFilter

Este parâmetro foi preterido. Em vez disso, especifique o parâmetro ApplicationsFilter.

Tipo:Int64
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ApplicationTypeHealthPolicyMap

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

Por exemplo, se alguns aplicativos de um tipo forem críticos, o administrador de cluster poderá adicionar uma entrada ao mapa para esse tipo de aplicativo e atribuir-lhe 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 entre milhares de instâncias de aplicativos.

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

Tipo:ApplicationTypeHealthPolicyMap
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ConsiderWarningAsError

Indica se um relatório de integridade de aviso deve ser tratado como 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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-EventsFilter

Especifica o filtro para a coleta de HealthEvents relatados no cluster com base no estado de integridade. O valor pode ser obtido de membros ou operações bitwise 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, todas as entradas serão retornadas.

Tipo:HealthStateFilter
Valores aceites:Default, None, Ok, Warning, Error, All
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-EventsHealthStateFilter

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

Tipo:Int64
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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 sã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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-IncludeSystemApplicationHealthStatistics

Indica se as estatísticas de integridade devem incluir informações para o aplicativo mal:/System. Se especificado, as contagens de aplicativo, serviço, partição, réplica, aplicativo implantado e pacote de serviço implantado 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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MaxPercentUnhealthyApplications

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

Tipo:Byte
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MaxPercentUnhealthyNodes

Especifica a porcentagem máxima tolerada de nós não íntegros. Se houver mais nós com estado de erro de integridade agregado do que o 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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-NodesFilter

Especifica o filtro para NodeHealthState filhos com base no estado de integridade. O valor pode ser obtido de membros ou operações bitwise em membros do HealthStateFilter. Apenas as crianças que correspondem ao filtro são devolvidas. Todas as crianças são utilizadas para avaliar o estado de saúde agregado da entidade. Se não for especificado, todas as entradas serão retornadas.

Tipo:HealthStateFilter
Valores aceites:Default, None, Ok, Warning, Error, All
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-NodesHealthStateFilter

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

Tipo:Int64
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-NodeTypeHealthPolicyMap

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

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

Tipo:NodeTypeHealthPolicyMap
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-TimeoutSec

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

Tipo:Int32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

None

Saídas

System.Object