Get-ServiceFabricClusterHealthChunk

الحصول على معلومات صحية لمجموعة Service Fabric وأطفالها.

بناء الجملة

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

الوصف

يحصل الأمر cmdlet Get-ServiceFabricClusterHealthChunk على معلومات صحية لمجموعة Service Fabric وكيانات نظام المجموعة كما هو مطلوب مع عوامل تصفية الإدخال المتقدمة. بشكل افتراضي، لا يتم إرجاع أي كيانات تابعة. إذا تم تحديدها، يتم إرجاع جميع الكيانات التي تحترم الإدخال بطريقة هرمية.

يقوم Service Fabric بالإبلاغ عن الحالات الصحية التالية.

  • "موافق". يفي الكيان بإرشادات الصحة.
  • خطأ. لا يفي الكيان بإرشادات الصحة.
  • تحذير. يفي الكيان بإرشادات السلامة ولكنه يواجه بعض المشكلات.

وتأخذ الحالة الصحية المجمعة للمجموعة في الاعتبار جميع التقارير الصحية المتعلقة بالمجموعة وكذلك الحالة الصحية المجمعة لجميع الأطفال، بشكل متكرر. يستخدم تقييم الصحة نهج صحة نظام المجموعة ونهج صحة التطبيق لكل تطبيق في نظام المجموعة. يمكنك تمرير نهج الصحة لنظام المجموعة وتقييم التطبيق كمدخل. إذا لم يتم تحديده، يستخدم تقييم الصحة نهج الصحة القابلة للتطبيق من نظام المجموعة وبيان التطبيق إذا تم تحديد البيان، أو النهج الافتراضية بخلاف ذلك.

تتضمن مجموعة صحة نظام المجموعة فقط التوابع ذات الاهتمام كما هو محدد في عوامل تصفية الإدخال. تتم التصفية على جانب الخادم، لذلك يتم تصغير حجم الرسالة.

إذا لم يتم احتواء الإخراج المطلوب في رسالة، فلن يتم إرجاع أي نتيجة.

قبل إجراء أي عملية على مجموعة Service Fabric، قم بإنشاء اتصال بالمجموعة باستخدام Connect-ServiceFabricCluster cmdlet.

أمثلة

مثال 1: الحصول على صحة نظام المجموعة مع عوامل تصفية العقدة

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

يستعلم هذا الأمر عن صحة نظام المجموعة. يحدد عوامل التصفية لإرجاع جميع العقد، باستثناء العقدة N0010، والتي يجب تضمينها فقط إذا كانت الحالة الصحية المجمعة في خطأ.

مثال 2: الحصول على صحة نظام المجموعة مع عوامل تصفية الكيان المنشورة

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

يستعلم هذا الأمر عن صحة نظام المجموعة. يحدد عوامل التصفية لإرجاع جميع التطبيقات والتطبيقات المنشورة وحزم الخدمة المنشورة على عقدة محددة (N0020).

مثال 3: الحصول على صحة نظام المجموعة باستخدام عامل تصفية تطبيق يتضمن عوامل تصفية داخلية متكررة

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

يستعلم هذا الأمر عن صحة نظام المجموعة. يحدد عوامل التصفية لإرجاع تطبيق فقط. يقوم عامل التصفية بإرجاع جميع خدمات التطبيق، وبالنسبة لكل خدمة، فإنه يقوم بإرجاع جميع الأقسام. لكل قسم، يتضمن جميع النسخ المتماثلة، باستثناء 130984777977143495، والتي يجب إرجاعها فقط إذا كانت في خطأ.

المعلمات

-ApplicationFilters

يحدد Systems.Collections.Generic.List من كائنات System.Fabric.Health.ApplicationHealthStateFilter . يتم إرجاع التطبيقات التي تحترم عامل التصفية الأكثر تحديدا فقط. يمكنك تحديد عوامل التصفية للتطبيقات الفردية أو لجميع التطبيقات. يسمح بعامل تصفية عام واحد فقط وعامل تصفية واحد لكل تطبيق.

إذا لم تحدد هذه المعلمة، فلن يتم إرجاع أي تطبيقات.

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

يحدد System.Fabric.Health.ApplicationHealthPolicyMap الذي يتضمن نهج صحية مخصصة لبعض التطبيقات أو كلها. إذا لم تحدد هذه المعلمة، أو إذا لم تقم بتضمين إدخال في خريطة أحد التطبيقات، فسيتم تقييم هذا التطبيق باستخدام نهج حماية التطبيق المحدد في بيان التطبيق إذا كان موجودا، أو النهج الافتراضي بخلاف ذلك.

Type:ApplicationHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationTypeHealthPolicyMap

يحدد الخريطة التي تحدد النسبة المئوية القصوى للتطبيقات غير الصحية المسموح بها لكل نوع تطبيق. يتم تقييم أنواع التطبيقات في هذه الخريطة باستخدام نسب مئوية معينة بدلا من النسبة المئوية العمومية MaxPercentUnhealthyApplications .

على سبيل المثال، إذا كانت بعض التطبيقات من نوع ما مهمة، يمكن لمسؤول نظام المجموعة إضافة إدخال إلى الخريطة لنوع التطبيق هذا وتعيين قيمة 0٪ (أي، لا تتسامح مع أي حالات فشل). يمكن تقييم جميع التطبيقات الأخرى مع تعيين MaxPercentUnhealthyApplications إلى 20٪ للتسامح مع بعض حالات الفشل من آلاف مثيلات التطبيق.

تُستخدم خريطة السياسة الصحية لنوع التطبيق فقط إذا مكن بيان المجموعة التقييم الصحي لنوع التطبيق باستخدام إدخال التكوين لـ HealthManager/EnableApplicationTypeHealthEvaluation.

Type:ApplicationTypeHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConsiderWarningAsError

يشير إلى ما إذا كان يجب التعامل مع تقرير حماية تحذير كخطأ أثناء التقييم الصحي. يتم استخدام هذه القيمة لتقييم العقد وتقارير صحة نظام المجموعة.

إذا لم يتم تحديد أي من معلمات نهج صحة نظام المجموعة، يستخدم تقييم الصحة نهج صحة نظام المجموعة من بيان نظام المجموعة، إذا كان موجودا، أو النهج الافتراضي الذي لا يتسامح مع أي فشل.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPercentUnhealthyApplications

تحديد النسبة المئوية القصوى المسموح بها للتطبيقات غير الصحية. إذا كان هناك المزيد من التطبيقات ذات الحالة الصحية المجمعة للخطأ أكثر من المسموح به، فإن الحالة الصحية لنظام المجموعة هي Error.

إذا لم يتم تحديد أي من معلمات نهج صحة نظام المجموعة، يستخدم تقييم الصحة نهج صحة نظام المجموعة من بيان نظام المجموعة، إذا كان موجودا، أو النهج الافتراضي الذي لا يتسامح مع أي فشل.

Type:Byte
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPercentUnhealthyNodes

تحديد النسبة المئوية القصوى المسموح بها للعقد غير السليمة. إذا كان هناك عدد من العقد ذات الحالة الصحية المجمعة للخطأ أكثر من المسموح به، يتم تقييم نظام المجموعة على أنه خطأ. إذا لم تحدد هذه المعلمة، يستخدم تقييم السلامة القيمة المتوفرة في بيان نظام المجموعة.

إذا لم يتم تحديد أي من معلمات نهج صحة نظام المجموعة، يستخدم تقييم الصحة نهج صحة نظام المجموعة من بيان نظام المجموعة، إذا كان موجودا، أو النهج الافتراضي الذي لا يتسامح مع أي فشل.

Type:Byte
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NodeFilters

تحديد كائنات Systems.Collections.Generic.List من System.Fabric.Health.NodeHealthStateFilter . يتم إرجاع العقد التي تحترم عامل التصفية الأكثر تحديدا فقط. يمكنك تحديد عوامل التصفية للعقد الفردية أو لجميع العقد. يسمح بعامل تصفية عام واحد فقط وعامل تصفية واحد لكل عقدة. إذا لم تحدد هذه المعلمة، فلن يتم إرجاع أي عقد.

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

تعريف خريطة ذات الحد الأقصى للنسب المئوية للعقد غير السليمة لبعض أنواع العقد.

يمكن استخدام مخطط نهج السلامة لنوع العقدة أثناء تقييم سلامة نظام المجموعة لوصف أنواع العقد الخاصة. يتم تقييم أنواع العقد المضمنة في الخريطة مقابل النسبة المئوية المضمنة في الخريطة، وأيضا مع العمومية (راجع System.Fabric.Health.ClusterHealthPolicy.MaxPercentUnhealthyNodes). يتم أيضا حساب عقد أنواع العقد المحددة في الخريطة مقابل التجمع العمومي للعقد؛ إنها فحوصات مستقلة.

Type:NodeTypeHealthPolicyMap
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeoutSec

تحديد فترة المهلة، بالثوان، للعملية.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

الإدخالات

None

المخرجات

System.Object