اقرأ باللغة الإنجليزية

مشاركة عبر


قواعد التنبيه الموصى بها لمجموعات Kubernetes

تحدد التنبيهات في Azure Monitor بشكل استباقي المشكلات المتعلقة بصحة موارد Azure وأدائها. توضح هذه المقالة كيفية تمكين وتحرير مجموعة من قواعد التنبيه القياسي الموصى بها المعرفة مسبقا لمجموعات Kubernetes.

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

ملاحظة

قوالب ARM هي الطريقة الوحيدة المدعومة لتمكين التنبيهات الموصى بها على مجموعات Kubernetes الممكنة بواسطة Arc.

باستخدام مدخل Microsoft Azure، سيتم إنشاء مجموعة قواعد Prometheus في نفس المنطقة مثل نظام المجموعة.

  1. من قائمة Alerts لنظام المجموعة، حدد Set up recommendations.

    لقطة شاشة لمجموعة AKS تعرض زر إعداد التوصيات.

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

    لقطة شاشة لتمكين قاعدة تنبيه Prometheus.

  3. تبديل قاعدة قياس النظام الأساسي لتمكين تلك القاعدة. يمكنك توسيع القاعدة لتعديل تفاصيلها مثل الاسم والخطورة والحد.

    لقطة شاشة لتمكين قاعدة تنبيه قياس النظام الأساسي.

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

  5. انقر فوق حفظ لحفظ مجموعة القواعد.

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

  1. من قائمة Alerts لنظام المجموعة، حدد Set up recommendations. سيتم تسمية أي قواعد أو مجموعات قواعد تم إنشاؤها بالفعل على أنها تم إنشاؤها بالفعل.

  2. قم بتوسيع القاعدة أو مجموعة القواعد. انقر فوق عرض مجموعة القواعد ل Prometheus وعرض قاعدة التنبيه لمقاييس النظام الأساسي.

    لقطة شاشة لخيار مجموعة قواعد العرض.

  3. بالنسبة لمجموعات قواعد Prometheus:

    1. حدد القواعد لعرض قواعد التنبيه في المجموعة.

    2. انقر فوق أيقونة تحرير بجوار قاعدة تريد تعديلها. استخدم الإرشادات الموجودة في إنشاء قاعدة تنبيه لتعديل القاعدة.

      لقطة شاشة لخيار تحرير قواعد تنبيه Prometheus.

    3. عند الانتهاء من تحرير القواعد في المجموعة، انقر فوق حفظ لحفظ مجموعة القواعد.

  4. بالنسبة لمقاييس النظام الأساسي:

    1. انقر فوق تحرير لفتح تفاصيل قاعدة التنبيه. استخدم الإرشادات الموجودة في إنشاء قاعدة تنبيه لتعديل القاعدة.

      لقطة شاشة لخيار تحرير قاعدة قياس النظام الأساسي.

تعطيل مجموعة قواعد التنبيه

تعطيل مجموعة القواعد لإيقاف تلقي التنبيهات من القواعد الموجودة فيها.

  1. عرض مجموعة قاعدة تنبيه Prometheus أو قاعدة تنبيه قياس النظام الأساسي كما هو موضح في تحرير قواعد التنبيه الموصى بها.

  2. من القائمة نظرة عامة ، حدد تعطيل.

    لقطة شاشة لخيار تعطيل مجموعة قواعد.

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

قواعد تنبيه مجتمع Prometheus

تنبيهات على مستوى نظام المجموعة

اسم التنبيه ‏‏الوصف الحد الافتراضي الإطار الزمني (بالدقائق)
KubeCPUQuotaOvercommit تتجاوز الحصة النسبية لمورد وحدة المعالجة المركزية المخصصة لمساحات الأسماء موارد وحدة المعالجة المركزية المتوفرة على عقد نظام المجموعة بأكثر من 50٪ لآخر 5 دقائق. >1.5 5
KubeMemoryQuotaOvercommit تتجاوز الحصة النسبية لمورد الذاكرة المخصصة لمساحات الأسماء موارد الذاكرة المتوفرة على عقد نظام المجموعة بأكثر من 50٪ لآخر 5 دقائق. >1.5 5
KubeContainerOOMKilledCount تم إيقاف حاوية واحدة أو أكثر داخل pods بسبب أحداث نفاد الذاكرة (OOM) خلال آخر 5 دقائق. >0 5
KubeClientErrors يتجاوز معدل أخطاء العميل (رموز حالة HTTP بدءا من 5xx) في طلبات واجهة برمجة تطبيقات Kubernetes 1٪ من إجمالي معدل طلب واجهة برمجة التطبيقات لآخر 15 دقيقة. >0.01 15
KubePersistentVolumeFillingUp يتم ملء الحجم الثابت ومن المتوقع أن تنفد المساحة المتاحة التي تم تقييمها على نسبة المساحة المتاحة والمساحة المستخدمة والاتجاه الخطي المتوقع للمساحة المتاحة على مدى الساعات الستة الماضية. يتم تقييم هذه الشروط على مدى آخر 60 دقيقة. ‏‫غير متوفر‬ 60
KubePersistentVolumeInodesFillingUp يتوفر أقل من 3٪ من inodes داخل وحدة تخزين ثابتة لآخر 15 دقيقة. <0.03 15
KubePersistentVolumeErrors وحدة تخزين ثابتة واحدة أو أكثر في مرحلة فاشلة أو معلقة لآخر 5 دقائق. >0 5
KubeContainerWaiting حاوية واحدة أو أكثر داخل حاويات Kubernetes في حالة انتظار لآخر 60 دقيقة. >0 60
KubeDaemonSetNotScheduled لم تتم جدولة حاوية واحدة أو أكثر على أي عقدة لآخر 15 دقيقة. >0 15
KubeDaemonSetMisScheduled يتم أخطاء جدولة واحدة أو أكثر داخل نظام المجموعة لآخر 15 دقيقة. >0 15
KubeQuotaAlmostFull يتراوح استخدام حصص موارد Kubernetes بين 90٪ و100٪ من الحدود الصعبة لآخر 15 دقيقة. >0.9 <1 15

تنبيهات مستوى العقدة

اسم التنبيه ‏‏الوصف الحد الافتراضي الإطار الزمني (بالدقائق)
KubeNodeUnreachable تعذر الوصول إلى عقدة لآخر 15 دقيقة. 1 15
KubeNodeReadinessFlapping تغيرت حالة الجاهزية لعقدة أكثر من مرتين لآخر 15 دقيقة. 2 15

تنبيهات على مستوى الجراب

اسم التنبيه ‏‏الوصف الحد الافتراضي الإطار الزمني (بالدقائق)
KubePVUsageHigh يتجاوز متوسط استخدام وحدات التخزين الثابتة (PVs) على pod 80٪ لآخر 15 دقيقة. >0.8 15
KubeDeploymentReplicasMismatch هناك عدم تطابق بين العدد المطلوب من النسخ المتماثلة وعدد النسخ المتماثلة المتوفرة لآخر 10 دقائق. ‏‫غير متوفر‬ 10
KubeStatefulSetReplicasMismatch لا يتطابق عدد النسخ المتماثلة الجاهزة في StatefulSet مع العدد الإجمالي للنسخ المتماثلة في StatefulSet لآخر 15 دقيقة. ‏‫غير متوفر‬ 15
KubeHpaReplicasMismatch لم يتطابق التحجيم التلقائي للجراب الأفقي في نظام المجموعة مع العدد المطلوب من النسخ المتماثلة لآخر 15 دقيقة. ‏‫غير متوفر‬ 15
KubeHpaMaxedOut تم تشغيل التحجيم التلقائي للجراب الأفقي (HPA) في نظام المجموعة عند الحد الأقصى للنسخ المتماثلة لآخر 15 دقيقة. ‏‫غير متوفر‬ 15
KubePodCrashLooping وحدة واحدة أو أكثر في حالة CrashLoopBackOff، حيث يتعطل الجراب باستمرار بعد بدء التشغيل ويفشل في الاسترداد بنجاح لآخر 15 دقيقة. >=1 15
KubeJobStale لم يكتمل مثيل مهمة واحد على الأقل بنجاح لآخر 6 ساعات. >0 360
KubePodContainerRestart تمت إعادة تشغيل حاوية واحدة أو أكثر داخل pods في مجموعة Kubernetes مرة واحدة على الأقل خلال الساعة الأخيرة. >0 15
KubePodReadyStateLow النسبة المئوية للقرون في حالة الاستعداد أقل من 80٪ لأي نشر أو daemonset في مجموعة Kubernetes لآخر 5 دقائق. <0.8 5
KubePodFailedState حاوية واحدة أو أكثر في حالة فشل لآخر 5 دقائق. >0 5
KubePodNotReadyByController واحدة أو أكثر من الحجيرات ليست في حالة استعداد (أي في مرحلة "معلقة" أو "غير معروف") لآخر 15 دقيقة. >0 15
KubeStatefulSetGenerationMismatch لا يتطابق الجيل الملحوظ من Kubernetes StatefulSet مع إنشاء بيانات التعريف الخاصة به لآخر 15 دقيقة. ‏‫غير متوفر‬ 15
KubeJobFailed فشلت وظيفة واحدة أو أكثر من مهام Kubernetes خلال آخر 15 دقيقة. >0 15
KubeContainerAverageCPUHigh يتجاوز متوسط استخدام وحدة المعالجة المركزية لكل حاوية 95٪ لآخر 5 دقائق. >0.95 5
KubeContainerAverageMemoryHigh يتجاوز متوسط استخدام الذاكرة لكل حاوية 95٪ لآخر 5 دقائق. >0.95 10
KubeletPodStartUpLatencyHigh تتجاوز القيمة المئوية 99 لزمن انتقال بدء تشغيل pod 60 ثانية لآخر 10 دقائق. >60 10

قواعد التنبيه القياسي للنظام الأساسي

اسم التنبيه ‏‏الوصف الحد الافتراضي الإطار الزمني (بالدقائق)
النسبة المئوية لوحدة المعالجة المركزية للعقدة أكبر من 95٪ النسبة المئوية لوحدة المعالجة المركزية للعقدة أكبر من 95٪ لآخر 5 دقائق. 95 5
النسبة المئوية لمجموعة عمل ذاكرة العقدة أكبر من 100٪ النسبة المئوية لمجموعة عمل ذاكرة العقدة أكبر من 100٪ لآخر 5 دقائق. 100 5

تنبيهات قياس نتائج تحليلات الحاوية القديمة (معاينة)

تم إيقاف القواعد القياسية في نتائج تحليلات الحاوية في 31 مايو 2024. كانت هذه القواعد في المعاينة العامة ولكن تم إيقافها دون الوصول إلى التوفر العام نظرا لأن التنبيهات القياسية الموصى بها الجديدة الموضحة في هذه المقالة متاحة الآن.

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

تعطيل قواعد التنبيه القياسي

  1. من قائمة Insights لنظام المجموعة، حدد Recommended alerts (preview).
  2. تغيير حالة كل قاعدة تنبيه إلى معطل.

تعيين التنبيه القديم

يعين الجدول التالي كل من تنبيهات قياس نتائج تحليلات الحاوية القديمة إلى تنبيهات قياس Prometheus الموصى بها المكافئة.

تنبيه المقياس المخصص الموصى به تنبيه مكافئ موصى به لقياس Prometheus/Platform الشرط
عدد الوظائف المكتملة KubeJobStale (تنبيهات مستوى الجراب) لم يكتمل مثيل مهمة واحد على الأقل بنجاح لآخر 6 ساعات.
نسبة وحدة المعالجة المركزية للحاوية KubeContainerAverageCPUHigh (تنبيهات مستوى الجراب) يتجاوز متوسط استخدام وحدة المعالجة المركزية لكل حاوية 95٪ لآخر 5 دقائق.
ذاكرة مجموعة عمل الحاوية ٪ KubeContainerAverageMemoryHigh (تنبيهات مستوى الجراب) يتجاوز متوسط استخدام الذاكرة لكل حاوية 95٪ لآخر 5 دقائق.
عدد الجرابات الفاشلة KubePodFailedState (تنبيهات مستوى الجراب) حاوية واحدة أو أكثر في حالة فشل لآخر 5 دقائق.
نسبة وحدة المعالجة المركزية للعقدة النسبة المئوية لوحدة المعالجة المركزية للعقدة أكبر من 95٪ (مقياس النظام الأساسي) النسبة المئوية لوحدة المعالجة المركزية للعقدة أكبر من 95٪ لآخر 5 دقائق.
نسبة استخدام قرص العقدة ‏‫غير متوفر‬ متوسط استخدام القرص لعقدة أكبر من 80٪.
حالة عدم جاهزية العقدة KubeNodeUnreachable (تنبيهات مستوى العقدة) تعذر الوصول إلى عقدة لآخر 15 دقيقة.
ذاكرة مجموعة عمل العقدة ٪ النسبة المئوية لمجموعة عمل ذاكرة العقدة أكبر من 100٪ النسبة المئوية لمجموعة عمل ذاكرة العقدة أكبر من 100٪ لآخر 5 دقائق.
الحاويات التالفة بسبب نفاد الذاكرة KubeContainerOOMKilledCount (تنبيهات مستوى نظام المجموعة) تم إيقاف حاوية واحدة أو أكثر داخل pods بسبب أحداث نفاد الذاكرة (OOM) خلال آخر 5 دقائق.
نسبة استخدام وحدة التخزين الثابتة KubePVUsageHigh (تنبيهات مستوى الجراب) يتجاوز متوسط استخدام وحدات التخزين الثابتة (PVs) على pod 80٪ لآخر 15 دقيقة.
الجراب جاهز ٪ KubePodReadyStateLow (تنبيهات مستوى الجراب) النسبة المئوية للقرون في حالة الاستعداد أقل من 80٪ لأي نشر أو daemonset في مجموعة Kubernetes لآخر 5 دقائق.
عدد حاويات إعادة التشغيل KubePodContainerRestart (تنبيهات مستوى الجراب) تمت إعادة تشغيل حاوية واحدة أو أكثر داخل pods في مجموعة Kubernetes مرة واحدة على الأقل خلال الساعة الأخيرة.

الخطوات التالية