Get-ServiceFabricClusterHealthChunk
Získá informace o stavu pro cluster Service Fabric a jeho podřízené položky.
Syntaxe
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>]
Description
Rutina Get-ServiceFabricClusterHealthChunk získá informace o stavu pro cluster Service Fabric a entity clusteru podle požadavků s rozšířenými vstupními filtry. Ve výchozím nastavení nejsou vráceny žádné podřízené entity. Pokud je zadáno, vrátí se všechny entity, které respektují vstup, hierarchickým způsobem.
Service Fabric hlásí následující stavy stavu.
- OK. Entita splňuje pokyny pro stav.
- Chyba. Entita nesplňuje pokyny pro stav.
- Varování. Entita splňuje pokyny pro stav, ale dochází k některým problémům.
Agregovaný stav clusteru bere v úvahu všechny sestavy o stavu clusteru i agregovaný stav všech podřízených objektů rekurzivně. Vyhodnocení stavu používá zásady stavu clusteru a zásady stavu aplikace každé aplikace v clusteru. Jako vstup můžete předat zásady stavu pro cluster a pro vyhodnocení aplikace. Pokud není zadáno, vyhodnocení stavu použije příslušné zásady stavu z clusteru a manifestu aplikace, pokud je zadán manifest, nebo výchozí zásady jinak.
Blok stavu clusteru zahrnuje pouze podřízené položky zájmu, jak je uvedeno ve vstupních filtrech. Filtrování se provádí na straně serveru, takže je minimalizovaná velikost zprávy.
Pokud se požadovaný výstup nevejde do zprávy, nevrátí se žádný výsledek.
Před provedením jakékoli operace v clusteru Service Fabric vytvořte připojení ke clusteru pomocí rutiny Connect-ServiceFabricCluster.
Příklady
Příklad 1: Získání stavu clusteru s filtry uzlů
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
Tento příkaz se dotazuje na stav clusteru. Určuje filtry pro vrácení všech uzlů s výjimkou uzlu N0010, které by se měly zahrnout pouze v případě, že je agregovaný stav v chybě.
Příklad 2: Získání stavu clusteru s nasazenými filtry entit
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
Tento příkaz se dotazuje na stav clusteru. Určuje filtry pro vrácení všech aplikací a nasazených aplikací a nasazených balíčků služeb v zadaném uzlu (N0020).
Příklad 3: Získání stavu clusteru pomocí filtru aplikace, který obsahuje rekurzivní vnitřní filtry
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
Tento příkaz se dotazuje na stav clusteru. Určuje filtry pro vrácení pouze aplikace. Filtr vrátí všechny aplikační služby a pro každou službu vrátí všechny oddíly. Pro každý oddíl obsahuje všechny repliky s výjimkou 130984777977143495, které by se měly vrátit pouze v případě, že je v chybě.
Parametry
-ApplicationFilters
Určuje Systems.Collections.Generic.ListSystem.Fabric.Health.ApplicationHealthStateFilter objekty. Vrátí se pouze aplikace, které respektují nejvýraznější filtr. Můžete zadat filtry pro jednotlivé aplikace nebo pro všechny aplikace. Je povolen pouze jeden obecný filtr a jeden filtr na aplikaci.
Pokud tento parametr nezadáte, nebudou vráceny žádné aplikace.
Typ: | System.Collections.Generic.List`1[System.Fabric.Health.ApplicationHealthStateFilter] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ApplicationHealthPolicies
Určuje System.Fabric.Health.ApplicationHealthPolicyMap, která obsahuje vlastní zásady stavu pro některé nebo všechny aplikace. Pokud tento parametr nezadáte nebo nezadáte položku do mapy pro aplikaci, vyhodnotí se tato aplikace pomocí zásad stavu aplikace definované v manifestu aplikace, pokud existuje, nebo výchozí zásady jinak.
Typ: | ApplicationHealthPolicyMap |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ApplicationTypeHealthPolicyMap
Určuje mapu, která definuje maximální procento aplikací, které nejsou v pořádku, které jsou povoleny pro jednotlivé typy aplikací. Typy aplikací v této mapě se vyhodnocují pomocí konkrétních procent místo globálních MaxPercentUnhealthyApplications procento.
Pokud jsou například některé aplikace typu kritické, může správce clusteru přidat položku do mapy pro tento typ aplikace a přiřadit jí hodnotu 0% (to znamená, že netoleruje žádné chyby). Všechny ostatní aplikace je možné vyhodnotit pomocí MaxPercentUnhealthyApplications nastavená na 20%, aby bylo možné tolerovat některá selhání z tisíců instancí aplikace.
Mapa zásad stavu typu aplikace se používá pouze v případě, že manifest clusteru umožňuje vyhodnocení stavu typu aplikace pomocí položky konfigurace pro HealthManager/EnableApplicationTypeHealthEvaluation.
Typ: | ApplicationTypeHealthPolicyMap |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ConsiderWarningAsError
Označuje, jestli se má zpráva o stavu upozornění považovat za chybu při vyhodnocování stavu. Tato hodnota se používá pro vyhodnocení uzlů a sestav stavu clusteru.
Pokud není zadán žádný z parametrů zásad stavu clusteru, vyhodnocení stavu používá zásadu stavu clusteru z manifestu clusteru, pokud existuje, nebo výchozí zásada, která toleruje žádné chyby.
Typ: | Boolean |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-MaxPercentUnhealthyApplications
Určuje maximální tolerované procento aplikací, které nejsou v pořádku. Pokud existuje více aplikací s agregovaným stavem chyby, než je tolerováno, stav clusteru je Chyba.
Pokud není zadán žádný z parametrů zásad stavu clusteru, vyhodnocení stavu používá zásadu stavu clusteru z manifestu clusteru, pokud existuje, nebo výchozí zásada, která toleruje žádné chyby.
Typ: | Byte |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-MaxPercentUnhealthyNodes
Určuje maximální tolerované procento uzlů, které nejsou v pořádku. Pokud existuje více uzlů s agregovaným stavem chyby, než je tolerováno, cluster se vyhodnotí jako Chyba. Pokud tento parametr nezadáte, použije vyhodnocení stavu hodnotu uvedenou v manifestu clusteru.
Pokud není zadán žádný z parametrů zásad stavu clusteru, vyhodnocení stavu používá zásadu stavu clusteru z manifestu clusteru, pokud existuje, nebo výchozí zásada, která toleruje žádné chyby.
Typ: | Byte |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NodeFilters
Určuje Systems.Collections.Generic.List objektů System.Fabric.Health.NodeHealthStateFilter objekty. Vrátí se pouze uzly, které respektují nejvýraznější filtr. Můžete zadat filtry pro jednotlivé uzly nebo pro všechny uzly. Je povolen pouze jeden obecný filtr a jeden filtr na jeden uzel. Pokud tento parametr nezadáte, nebudou vráceny žádné uzly.
Typ: | System.Collections.Generic.List`1[System.Fabric.Health.NodeHealthStateFilter] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NodeTypeHealthPolicyMap
Definuje mapu s maximálními procenty uzlů, které nejsou v pořádku pro konkrétní typy uzlů.
Mapu zásad stavu typu uzlu je možné použít při vyhodnocování stavu clusteru k popisu speciálních typů uzlů. Typy uzlů zahrnuté v mapě se vyhodnocují s procentem zahrnutým v mapě a také s globálními hodnotami (viz System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Uzly typů uzlů zadaných v mapě se také počítají do globálního fondu uzlů; jsou nezávislé kontroly.
Typ: | NodeTypeHealthPolicyMap |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-TimeoutSec
Určuje časový limit operace v sekundách.
Typ: | Int32 |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
None
Výstupy
System.Object