الاستراتيجيات: linear وfree وhost_pinned
غيّر طريقة اجتياز Plays للمضيفين
الاستراتيجيات: linear وfree وhost_pinned درس مجاني في DevOps Bootcamp على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في DevOps Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
تحدد الاستراتيجية الوتيرة
تقرر إضافة strategy كيفية تقدم المضيفين عبر مهام play. فهي تحدد ما إذا كانوا يتحركون بتناغم أو يسير كل منهم بالسرعة الخاصة به.
linear هي الافتراضية
تشغّل استراتيجية linear الافتراضية مهمة واحدة على كل مضيف، وتنتظر انتهاء الجميع، ثم تنتقل إلى المهمة التالية معًا.
- hosts: web
strategy: linearلماذا قد تكون linear بطيئة
مع linear، يؤخر أبطأ مضيف في كل مهمة الجميع. وتبقى الخوادم السريعة خاملة وهي تنتظر المضيف البطيء قبل تقدم play.
تتيح free للمضيفين الانطلاق
تلغي استراتيجية free هذا الحاجز. إذ يتقدم كل مضيف عبر مهامه بأقصى سرعة ممكنة، من دون انتظار الآخرين للحاق به.
- hosts: web
strategy: freeتستبدل free الترتيب بالسرعة
مع free، ينتهي المضيفون في أوقات مختلفة وتتداخل المخرجات. تحصلون على سرعة أكبر، لكنكم تفقدون المزامنة المنظّمة مهمةً تلو الأخرى.
متى تتألق free
استخدموا free عندما يكون المضيفون مستقلين ويكون بعضهم أبطأ بكثير. وتجنبوا استخدامها عندما يجب أن ينهي أحد المضيفين خطوة قبل أن يبدأ آخر.
التعرّف على host_pinned
تبقي استراتيجية host_pinned عاملًا مرتبطًا بمضيف واحد حتى ينتهي ذلك المضيف، بدلًا من توزيعه بالتناوب على الأسطول بأكمله.
- hosts: web
strategy: host_pinnedلماذا يفيد التثبيت
من خلال إنهاء العمل على المضيفين بالكامل قبل اختيار مضيفين جدد، تحدّ host_pinned من عدد الأجهزة التي يجري التعامل معها في الوقت نفسه، مما يخفف الحمل على الأنظمة الخلفية مثل خادم التراخيص.
حددوها لكل play
تُعد strategy مفتاحًا على مستوى play، ولذلك يمكن أن تستخدم plays المختلفة في الملف نفسه استراتيجيات مختلفة. اختاروا الأنسب لكل مرحلة من مراحل العمل.
أو حددوا قيمة افتراضية
اختاروا قيمة افتراضية على مستوى المشروع ضمن مفتاح strategy في ansible.cfg. ويظل الإعداد الخاص بكل play هو المعتمد عند تجاوزه للقيمة الافتراضية.
[defaults]
strategy = freeالاستراتيجية مع forks
تقرر strategy كيفية تدفق المضيفين، بينما تحدد forks عدد المضيفين الذين يعملون في الوقت نفسه. اضبطوا كليهما معًا للوصول إلى معدل المعالجة المطلوب.
تحقق سريع
أحد المضيفين في دفعتكم أبطأ بكثير من البقية ويوقف play.
مراجعة
تحافظ linear على تناغم المضيفين، وتتيح لهم free الانطلاق باستقلالية، بينما تنهي host_pinned العمل على مضيف قبل بدء العمل على التالي. اختاروا الإعداد لكل play. 🏁
الأسئلة الشائعة
هل درس «الاستراتيجيات: linear وfree وhost_pinned» مجاني؟
نعم — نص درس «الاستراتيجيات: linear وfree وhost_pinned» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة DevOps Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة DevOps Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «الاستراتيجيات: linear وfree وhost_pinned»؟
غيّر طريقة اجتياز Plays للمضيفين تتمرن على DevOps Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ DevOps Bootcamp؟
لا تُشترط خبرة سابقة. DevOps Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «الاستراتيجيات: linear وfree وhost_pinned»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس DevOps Bootcamp هذا؟
نعم. كل درس في DevOps Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- ضبط forks والتوازي
- الاستراتيجيات: linear وfree وhost_pinned
- تجميع SSH وإعادة استخدام الاتصال
- التنفيذ الدفعي المتدرّج باستخدام serial