Get-ServiceFabricClusterHealthChunk
Ottiene informazioni sull'integrità per un cluster di Service Fabric e i relativi elementi figlio.
Sintassi
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>]
Descrizione
Il cmdlet Get-ServiceFabricClusterHealthChunk ottiene informazioni sull'integrità per un cluster e entità cluster di Service Fabric come richiesto con i filtri di input avanzati. Per impostazione predefinita, non vengono restituite entità figlio. Se specificato, tutte le entità che rispettano l'input vengono restituite in modo gerarchico.
Service Fabric segnala gli stati di integrità seguenti.
- OK. L'entità soddisfa le linee guida per l'integrità.
- Errore. L'entità non soddisfa le linee guida sull'integrità.
- Avvertimento. L'entità soddisfa le linee guida sull'integrità, ma riscontra alcuni problemi.
Lo stato di integrità aggregato del cluster prende in considerazione tutti i report sull'integrità del cluster, nonché lo stato di integrità aggregato di tutti gli elementi figlio, in modo ricorsivo. La valutazione dell'integrità usa i criteri di integrità del cluster e i criteri di integrità dell'applicazione di ogni applicazione nel cluster. È possibile passare i criteri di integrità per il cluster e per la valutazione dell'applicazione come input. Se non specificato, la valutazione dell'integrità usa i criteri di integrità applicabili dal cluster e dal manifesto dell'applicazione se il manifesto è specificato o i criteri predefiniti in caso contrario.
Il blocco di integrità del cluster include solo elementi figlio di interesse, come specificato nei filtri di input. Il filtro viene eseguito sul lato server, quindi le dimensioni dei messaggi vengono ridotte al minimo.
Se l'output richiesto non rientra in un messaggio, non viene restituito alcun risultato.
Prima di eseguire qualsiasi operazione in un cluster di Service Fabric, stabilire una connessione al cluster usando il cmdlet Connect-ServiceFabricCluster.
Esempio
Esempio 1: Ottenere l'integrità del cluster con i filtri dei nodi
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
Questo comando esegue una query sull'integrità del cluster. Specifica i filtri per restituire tutti i nodi, ad eccezione del nodo N0010, che devono essere inclusi solo se è aggregato lo stato di integrità in Errore.
Esempio 2: Ottenere l'integrità del cluster con filtri di entità distribuiti
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
Questo comando esegue una query sull'integrità del cluster. Specifica i filtri per restituire tutte le applicazioni e le applicazioni distribuite e i pacchetti di servizio distribuiti in un nodo specificato (N0020).
Esempio 3: Ottenere l'integrità del cluster con un filtro dell'applicazione che include filtri interni ricorsivi
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
Questo comando esegue una query sull'integrità del cluster. Specifica i filtri per restituire solo un'applicazione. Il filtro restituisce tutti i servizi dell'applicazione e per ogni servizio restituisce tutte le partizioni. Per ogni partizione, include tutte le repliche, ad eccezione di 130984777977143495, che devono essere restituite solo se si trova in Errore.
Parametri
-ApplicationFilters
Specifica un Systems.Collections.Generic.List di oggetti System.Fabric.Health.ApplicationHealthStateFilter. Vengono restituite solo le applicazioni che rispettano il filtro più specifico. È possibile specificare i filtri per le singole applicazioni o per tutte le applicazioni. Sono consentiti un solo filtro generale e un filtro per applicazione.
Se non si specifica questo parametro, non vengono restituite applicazioni.
Tipo: | System.Collections.Generic.List`1[System.Fabric.Health.ApplicationHealthStateFilter] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ApplicationHealthPolicies
Specifica un System.Fabric.Health.ApplicationHealthPolicyMap che include criteri di integrità personalizzati per alcune o tutte le applicazioni. Se non si specifica questo parametro o se non si include una voce nella mappa per un'applicazione, tale applicazione viene valutata con i criteri di integrità dell'applicazione definiti nel manifesto dell'applicazione, se esistente o il criterio predefinito in caso contrario.
Tipo: | ApplicationHealthPolicyMap |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ApplicationTypeHealthPolicyMap
Specifica la mappa che definisce la percentuale massima di applicazioni non integre consentite per ogni tipo di applicazione. I tipi di applicazione in questa mappa vengono valutati usando percentuali specifiche anziché il globale MaxPercentUnhealthyApplications percentuale.
Ad esempio, se alcune applicazioni di un tipo sono critiche, l'amministratore del cluster può aggiungere una voce alla mappa per tale tipo di applicazione e assegnargli un valore pari a 0% (ovvero non tollerare errori). Tutte le altre applicazioni possono essere valutate con MaxPercentUnhealthyApplications impostata su 20% per tollerare alcuni errori dalle migliaia di istanze dell'applicazione.
La mappa dei criteri di integrità del tipo di applicazione viene usata solo se il manifesto del cluster abilita la valutazione dell'integrità del tipo di applicazione usando la voce di configurazione per HealthManager/EnableApplicationTypeHealthEvaluation.
Tipo: | ApplicationTypeHealthPolicyMap |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ConsiderWarningAsError
Indica se considerare un report di integrità degli avvisi come errore durante la valutazione dell'integrità. Questo valore viene usato per la valutazione dei nodi e dei report sull'integrità del cluster.
Se nessuno dei parametri dei criteri di integrità del cluster è specificato, la valutazione dell'integrità usa i criteri di integrità del cluster dal manifesto del cluster, se esistente o i criteri predefiniti che non tollerano errori.
Tipo: | Boolean |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-MaxPercentUnhealthyApplications
Specifica la percentuale massima tollerata di applicazioni non integre. Se sono presenti più applicazioni con stato di integrità aggregato di errore che tollerato, lo stato di integrità del cluster è Errore.
Se nessuno dei parametri dei criteri di integrità del cluster è specificato, la valutazione dell'integrità usa i criteri di integrità del cluster dal manifesto del cluster, se esistente o i criteri predefiniti che non tollerano errori.
Tipo: | Byte |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-MaxPercentUnhealthyNodes
Specifica la percentuale massima tollerata di nodi non integri. Se sono presenti più nodi con stato di integrità aggregato di errore che tollerato, il cluster viene valutato come Errore. Se non si specifica questo parametro, la valutazione dell'integrità usa il valore fornito nel manifesto del cluster.
Se nessuno dei parametri dei criteri di integrità del cluster è specificato, la valutazione dell'integrità usa i criteri di integrità del cluster dal manifesto del cluster, se esistente o i criteri predefiniti che non tollerano errori.
Tipo: | Byte |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-NodeFilters
Specifica un Systems.Collections.Generic.List di oggetti System.Fabric.Health.NodeHealthStateFilter. Vengono restituiti solo i nodi che rispettano il filtro più specifico. È possibile specificare i filtri per i singoli nodi o per tutti i nodi. Sono consentiti un solo filtro generale e un filtro per nodo. Se non si specifica questo parametro, non vengono restituiti nodi.
Tipo: | System.Collections.Generic.List`1[System.Fabric.Health.NodeHealthStateFilter] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-NodeTypeHealthPolicyMap
Definisce una mappa con percentuali massime di nodi non integri per tipi di nodo specifici.
La mappa dei criteri di integrità dei tipi di nodo può essere usata durante la valutazione dell'integrità del cluster per descrivere i tipi di nodo speciali. I tipi di nodo inclusi nella mappa vengono valutati rispetto alla percentuale inclusa nella mappa e anche con il valore globale (vedere System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Anche i nodi dei tipi di nodo specificati nella mappa vengono conteggiati rispetto al pool globale di nodi; sono controlli indipendenti.
Tipo: | NodeTypeHealthPolicyMap |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-TimeoutSec
Specifica il periodo di timeout, espresso in secondi, per l'operazione.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
None
Output
System.Object