محتويات الدورة

Kubernetes / المتقدم: التوسع والمرونة ودورة الحياة / الدرس 16

التوسع الآلي وحدود السعة

اربط قياسات الحمل وقرار النسخ والجدولة وميزانيات الاعتماديات دون توقع سعة فورية مفتوحة.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • اشرح النموذج والافتراضات والحدود المتعلقة بموضوع «التوسع الآلي وحدود السعة».
  • فسر المثالين وميز النية المعلنة من الدليل المثبت.
  • شخص الإخفاقات وعلل قرارات الاستعادة المشروحة دون تنفيذ عمليات عنقود.

فصل توسع النسخ والعقد

يغير الأفقي النسخ وتوفر العقد آلات بسياسة منفصلة، وقد ينتظر الجديد لقيود الموارد والتخزين والحصة والموضع. يغير العمودي الحجم وآثاره. حدد الاختناق؛ فقد يضر التوسع حد قاعدة أوجهة خارجية. سجل الأدنى والأقصى والتأخير والميزانية ليبقى القرار محدودا لا استجابة لرسم مرتفع واحد.

فهم توفر القياس ومقامه

تستخدم HPA مقاييس مورد أومخصصة أوخارجية بواجهات ومحولات لازمة. تقاس نسبة CPU للطلبات لا العقدة كلها، ويؤثر غيابها. يفترض البيان Deployment وقياسا وطلبات ولا يوفرها. لا يعني غياب المحول صفرا، واحم المسار وطابق الوحدة والتجميع بالحمل.

yaml HPA لنسبة CPU توضيحية
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata: {name: booking-api, namespace: training}
spec:
  scaleTargetRef: {apiVersion: apps/v1, kind: Deployment, name: booking-api}
  minReplicas: 2
  maxReplicas: 6
  metrics:
    - type: Resource
      resource:
        name: cpu
        target: {type: Utilization, averageUtilization: 60}

يلزم الحمل والطلبات وواجهة القياس؛ و 60% قيمة تعليمية لا توصية مقاسة ولا يطبق الكائن.

قراءة النموذج النسبي المبسط بحذر

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

python نموذج توسع نسبي غير مؤذ
current_replicas = 2
observed_percent = 80
target_percent = 50
proposal = (current_replicas * observed_percent + target_percent - 1) // target_percent
print(proposal)
print("arithmetic only; real controller policy omitted")
الناتج المتوقع
4
arithmetic only; real controller policy omitted

تقريب 3.2 للأعلى أربعة؛ ويغفل سياسات HPA ولا يتنبأ بفعل عنقود فعلي.

تنسيق الملكية وضبط التذبذب

قد يتصارع GitOps وHPA على العدد؛ فحدد الملكية. تقلل سياسات الاستقرار التذبذب وقد تؤخر الاستجابة؛ فحلل الاندفاع والتقليص مع الإنهاء والحالة وهامش الفشل. يفيد الطابور بمعرفة الحجم والمواعيد والعمل المهجور. قد تضخم عاصفة المحاولات الطلب فتحتوى لا تكافأ باتصالات مفتوحة.

التحقق من السعة المفيدة والكلفة

اختبر بعزلة مصرح بها وطلب اصطناعي ونطاق وتوقف؛ ولا تفعل الدورة أوتتصل بقياس أوسحابة. افحص زمن فائدة الجديد والاعتماديات وحفظ العمل بالتقليص. احسب العقد والتخزين والقياس والمزود لا Pods فقط. احفظ بديلا للغياب وأقصى يحمي الاعتماد والميزانية. هو تغذية بتأخير وافتراض لا بديل لكفاءة وقبول محدود وحالة واستعادة.

الأخطاء الشائعة وإصلاحها

تفسر النسبة استخداما للعقدة

لماذا يحدث؟
أُهمل مقام الطلب.
كيف تصلحه؟
افحص الطلب المقبول وتوفر القياس.
كيف تتجنب تكراره؟
وثق الوحدة والنطاق.

يرتفع المرغوب دون الجاهز

لماذا يحدث؟
يعجز الموضع أوالبدء عن توفيرها.
كيف تصلحه؟
تتبع الجدولة والتخزين والجاهزية والاعتماد.
كيف تتجنب تكراره؟
أدرج التأخير والهامش بالسياسة.

يتذبذب العدد بين الأدوات

لماذا يحدث؟
تتعارض ملكية العدد والتسوية.
كيف تصلحه؟
حدد مسؤولا للحقل.
كيف تتجنب تكراره؟
راجع التكامل صراحة.

اختبر فهمك

1. لثلاث نسخ وقياس 90 وهدف 60، ماذا يقترح المبسط؟

اعرض الحل المشروح

القيمة 4.5 فتقرب لخمسة؛ وقد تختلف الحقيقة للغياب والتسامح والاستقرار والسياسة والحدود. اذكر الافتراض قبل المقارنة.

2. لماذا قد تزيد مضاعفة API الزمن؟

اعرض الحل المشروح

قد يغرق التزامن قاعدة أوطابورا أوحدا ثابتا والجديد يتهيأ. قس الاختناق وحد القبول والاتصالات؛ فالعدد ليس السعة المفيدة.

أهم ما تعلمته

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

المراجع الرسمية