Get-ServiceFabricClusterHealthChunk
Mendapatkan informasi kesehatan untuk kluster Service Fabric dan anak-anaknya.
Sintaks
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>]
Deskripsi
Cmdlet Get-ServiceFabricClusterHealthChunk mendapatkan informasi kesehatan untuk kluster Service Fabric dan entitas kluster seperti yang diminta dengan filter input tingkat lanjut. Secara default, tidak ada entitas anak yang dikembalikan. Jika ditentukan, semua entitas yang menghormati input dikembalikan dengan cara hierarkis.
Service Fabric melaporkan status kesehatan berikut.
- OK. Entitas memenuhi pedoman kesehatan.
- Kesalahan. Entitas tidak memenuhi pedoman kesehatan.
- Peringatan. Entitas memenuhi pedoman kesehatan tetapi mengalami beberapa masalah.
Status kesehatan agregat kluster mempertimbangkan semua laporan kesehatan pada kluster serta status kesehatan agregat semua anak, secara rekursif. Evaluasi kesehatan menggunakan kebijakan kesehatan kluster dan kebijakan kesehatan aplikasi dari setiap aplikasi dalam kluster. Anda dapat meneruskan kebijakan kesehatan untuk kluster dan untuk evaluasi aplikasi sebagai input. Jika tidak ditentukan, evaluasi kesehatan menggunakan kebijakan kesehatan yang berlaku dari kluster dan manifes aplikasi jika manifes ditentukan, atau kebijakan default sebaliknya.
Potongan kesehatan kluster hanya mencakup anak-anak yang menarik seperti yang ditentukan dalam filter input. Pemfilteran dilakukan di sisi server, sehingga ukuran pesan diminimalkan.
Jika output yang diminta tidak sesuai dengan pesan, tidak ada hasil yang dikembalikan.
Sebelum Anda melakukan operasi apa pun pada kluster Service Fabric, buat koneksi ke kluster dengan menggunakan cmdlet Connect-ServiceFabricCluster .
Contoh
Contoh 1: Mendapatkan kesehatan kluster dengan filter simpul
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
Perintah ini meminta kesehatan kluster. Ini menentukan filter untuk mengembalikan semua simpul, kecuali untuk simpul N0010, yang harus disertakan hanya jika status kesehatan agregat dalam Kesalahan.
Contoh 2: Mendapatkan kesehatan kluster dengan filter entitas yang disebarkan
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
Perintah ini meminta kesehatan kluster. Ini menentukan filter untuk mengembalikan semua aplikasi dan aplikasi yang disebarkan dan paket layanan yang disebarkan pada simpul tertentu (N0020).
Contoh 3: Mendapatkan kesehatan kluster dengan filter aplikasi yang menyertakan filter dalam rekursif
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
Perintah ini meminta kesehatan kluster. Ini menentukan filter untuk mengembalikan hanya aplikasi. Filter mengembalikan semua layanan aplikasi, dan untuk setiap layanan, filter mengembalikan semua partisi. Untuk setiap partisi, ini mencakup semua replika, kecuali untuk 130984777977143495, yang seharusnya hanya dikembalikan jika berada di Kesalahan.
Parameter
-ApplicationFilters
Menentukan objek Systems.Collections.Generic.List of System.Fabric.Health.ApplicationHealthStateFilter . Hanya aplikasi yang menghormati filter yang paling spesifik yang dikembalikan. Anda dapat menentukan filter untuk aplikasi individual atau untuk semua aplikasi. Hanya satu filter umum dan satu filter per aplikasi yang diizinkan.
Jika Anda tidak menentukan parameter ini, tidak ada aplikasi yang dikembalikan.
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
Menentukan System.Fabric.Health.ApplicationHealthPolicyMap yang menyertakan kebijakan kesehatan kustom untuk beberapa atau semua aplikasi. Jika Anda tidak menentukan parameter ini, atau jika Anda tidak menyertakan entri dalam peta untuk aplikasi, aplikasi tersebut dievaluasi dengan kebijakan kesehatan aplikasi yang ditentukan dalam manifes aplikasi jika ada, atau kebijakan default sebaliknya.
Type: | ApplicationHealthPolicyMap |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApplicationTypeHealthPolicyMap
Menentukan peta yang menentukan persentase maksimum aplikasi tidak sehat yang diizinkan per jenis aplikasi. Jenis aplikasi dalam peta ini dievaluasi menggunakan persentase tertentu daripada persentase MaxPercentUnhealthyApplications global.
Misalnya, jika beberapa aplikasi jenis sangat penting, administrator kluster dapat menambahkan entri ke peta untuk jenis aplikasi tersebut dan menetapkannya nilai 0% (artinya, jangan mentolerir kegagalan apa pun). Semua aplikasi lain dapat dievaluasi dengan MaxPercentUnhealthyApplications yang diatur ke 20% untuk mentolerir beberapa kegagalan dari ribuan instans aplikasi.
Peta kebijakan kesehatan jenis aplikasi hanya digunakan jika manifes kluster memungkinkan evaluasi kesehatan jenis aplikasi menggunakan entri konfigurasi untuk HealthManager/EnableApplicationTypeHealthEvaluation.
Type: | ApplicationTypeHealthPolicyMap |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConsiderWarningAsError
Menunjukkan apakah akan memperlakukan laporan kesehatan peringatan sebagai kesalahan selama evaluasi kesehatan. Nilai ini digunakan untuk evaluasi simpul dan laporan kesehatan kluster.
Jika tidak ada parameter kebijakan kesehatan kluster yang ditentukan, evaluasi kesehatan menggunakan kebijakan kesehatan kluster dari manifes kluster, jika ada, atau kebijakan default yang mentolerir tidak ada kegagalan.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxPercentUnhealthyApplications
Menentukan persentase maksimum yang ditoleransi dari aplikasi yang tidak sehat. Jika ada lebih banyak aplikasi dengan status kesalahan kesehatan agregat daripada yang ditoleransi, status kesehatan kluster adalah Kesalahan.
Jika tidak ada parameter kebijakan kesehatan kluster yang ditentukan, evaluasi kesehatan menggunakan kebijakan kesehatan kluster dari manifes kluster, jika ada, atau kebijakan default yang mentolerir tidak ada kegagalan.
Type: | Byte |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxPercentUnhealthyNodes
Menentukan persentase maksimum yang ditoleransi dari simpul yang tidak sehat. Jika ada lebih banyak simpul dengan status kesalahan kesehatan agregat daripada yang ditoleransi, kluster dievaluasi sebagai Kesalahan. Jika Anda tidak menentukan parameter ini, evaluasi kesehatan menggunakan nilai yang disediakan dalam manifes kluster.
Jika tidak ada parameter kebijakan kesehatan kluster yang ditentukan, evaluasi kesehatan menggunakan kebijakan kesehatan kluster dari manifes kluster, jika ada, atau kebijakan default yang mentolerir tidak ada kegagalan.
Type: | Byte |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NodeFilters
Menentukan objek Systems.Collections.Generic.List of System.Fabric.Health.NodeHealthStateFilter . Hanya simpul yang menghormati filter yang paling spesifik yang dikembalikan. Anda dapat menentukan filter untuk simpul individual atau untuk semua simpul. Hanya satu filter umum dan satu filter per simpul yang diizinkan. Jika Anda tidak menentukan parameter ini, tidak ada simpul yang dikembalikan.
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
Menentukan peta dengan persentase maksimum simpul yang tidak sehat untuk jenis node tertentu.
Peta kebijakan kesehatan jenis node dapat digunakan selama evaluasi kesehatan kluster untuk menggambarkan jenis node khusus. Jenis node yang disertakan dalam peta dievaluasi terhadap persentase yang disertakan dalam peta, dan juga dengan global (lihat System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). Simpul jenis node yang ditentukan dalam peta juga dihitung terhadap kumpulan simpul global; mereka adalah pemeriksaan independen.
Type: | NodeTypeHealthPolicyMap |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TimeoutSec
Menentukan periode waktu habis, dalam detik, untuk operasi.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
None
Output
System.Object