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

أداء لينكس / المتوسط: الآلية والتشخيص النطاقي / الدرس 11

قراءة ميزانيات cgroup وsystemd الفعلية

اشرح كيف تسبب سياسة الموارد الهرمية كموناً رغم ظهور سعة متبقية للمضيف.

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

أهداف الدرس

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

قد تختلف سعة الخدمة عن المضيف

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

الوزن والحصة والتموضع مختلفة

يعبر CPUWeight عن حصة نسبية بين أشقاء متنافسين ولا يحجز نسبة ثابتة دون منافس. يحدد CPUQuota ميزانية قد تنفد قبل نهاية الفترة فينشأ خنق. يقيد AllowedCPUs التموضع ولا يضمن التنفيذ. لا تساوي حصة عدة معالجات أنوية مخصصة. قارن cpu.stat وcpu.max والمسموح وتوقيت الطلب قبل اختزال التوفر بالنسبة.

bash قراءة عقد الموارد المُدار لخدمة افتراضية
systemctl show example-report.service -p ControlGroup -p CPUWeight -p CPUQuotaPerSecUSec -p AllowedCPUs -p TasksMax
systemctl cat example-report.service

يستهدف التشخيص غير القابل للتشغيل وحدة مختبر قائمة. تختلف الخصائص بالإصدار والسياق؛ لا يتغير حد أو تعاد خدمة.

تتفاعل الضوابط عبر مسار الطلب

قد يفرض MemoryHigh ضغطاً وMemoryMax حداً نهائياً، ويشمل TasksMax الخيوط. تعتمد أوزان وحدود التخزين على المتحكم والطبقة. قد تحمي قيود الخلفية المقدمة وتنمي طابوراً آخر. اقرأ الإعداد مع الضغط وعمر الطابور. لا يثبت مقطع الإعداد تطبيق النواة كل طلب بكل نظام وسياق.

إيجاد السياسة المحيطة الفعلية

لا يفلت الابن من سلف أشد بقيمة محلية غير محدودة. تتبع الهرمية المصرحة والمالك دون تفاصيل مستأجرين آخرين. قد تكون العدادات هرمية فميّز المحلي والإجمالي. قارن العمر نفسه؛ فقد تصفر الإعادة العدادات. لا ينفي حمل مضيف عادي خنقاً نطاقياً. احفظ الربط والتوقيت كي لا تبطل الهجرة الفحص.

bash فحص حدود المعالج لمجموعة افتراضية
cat /sys/fs/cgroup/lab-report/cpu.max
cat /sys/fs/cgroup/lab-report/cpu.stat
cat /sys/fs/cgroup/lab-report/cpuset.cpus.effective

المسار افتراضي مهيأ. اربط الاستخدام والخنق بالكمون وافحص الأب مستقلاً؛ لا تنقل القراءات مهام أو تكتب إعداداً.

اعتبار تغيير الميزانية تجربة سعة مشتركة

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

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

افتراض أن الابن غير المحدود حر

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

اعتبار الوزن حصة صلبة

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

تعارض تعديل المجموعة مع المدير

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

اختبر فهمك

1. لخدمة فروق خنق عالية والمضيف نصف خامل. هل يتناقضان؟

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

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

2. لماذا يشمل نجاح زيادة الميزانية فحص الأشقاء؟

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

الموارد محدودة مشتركة وقد تستهلك الزيادة زمن الآخرين أو ذاكرتهم. يحتاج القبول كمونهم وأخطاءهم واحتياطي التعافي مع تحسن الهدف.

أهم ما تعلمته

  • السعة الفعلية هرمية وخاصة بالعمل.
  • استخدم سياسة المدير وافحص الأثر المشترك.

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