0Pricing
Ansible Academy · درس

تخطيط المجلدات الموصى به

أماكن وجود Playbooks والجرد وvars

تخطيط المجلدات الموصى به درس مجاني في Ansible Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Ansible Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Ansible Academy 4 دروس في المجموع.

لماذا يهمّ تنظيم المشروع

مع نمو المشاريع، تتحول الملفات المتناثرة إلى فوضى. ويحدد هيكل الأدلة القياسي لفريقكم المكان الدقيق لكل شيء. 📁

نقطة الدخول site.yml

وفقًا لل convention، يُعدّ site.yml playbook الأعلى مستوى الذي يربط بنيتكم التحتية بأكملها ويضم بقية الملفات.

# site.yml
- import_playbook: webservers.yml
- import_playbook: dbservers.yml

يقع inventory في الجذر

يوجد ملف inventory لديكم (أو دليله) بالقرب من المستوى الأعلى، ولذلك تعرف playbooks الموجودة بجانبه دائمًا المضيفات التي تديرها.

myproject/
  inventory
  site.yml

ملفات playbook لكل وظيفة

قسّموا العمليات الكبيرة إلى ملفات مركّزة مثل webservers.yml وdbservers.yml، ثم اجمعوها من site.yml.

دليل group_vars

يحتوي دليل group_vars على متغيرات تنطبق على مجموعات مضيفين كاملة، ويُحمّل تلقائيًا بحسب اسم المجموعة.

group_vars/
  webservers.yml
  dbservers.yml

دليل host_vars

يؤدي دليل host_vars الوظيفة نفسها للأجهزة الفردية، مع ملف يحمل اسم كل مضيف على حدة.

host_vars/
  web01.example.com.yml

دليل roles

توجد الأتمتة القابلة لإعادة الاستخدام ضمن دليل roles. ويبحث Ansible هنا أولًا عندما يشير play إلى role بالاسم.

roles/
  common/
  nginx/

library وPlugins مخصّصة

يحتوي مجلد library على modules مخصّصة، بينما يحتوي module_utils أو filter_plugins على شيفرة مساعدة مشتركة يكتشفها Ansible تلقائيًا.

أبقوا ansible.cfg قريبًا

ضعوا ansible.cfg في جذر المشروع. يلتقط Ansible الإعدادات من دليلكم الحالي، وبذلك تبقى إعدادات المشروع محلية.

# ansible.cfg
[defaults]
inventory = ./inventory
roles_path = ./roles

مستودع واحد يمنحكم الصورة الكاملة

باستخدام هذا التنظيم، يمنح git clone واحد زميلكم playbooks وinventory والمتغيرات وroles كلها ضمن بنية متسقة واحدة. 🎯

الهيكل الكامل

إليكم الهيكل الموصى به الذي تقترحه الوثائق الرسمية. احفظوا البنية، لا كل ملف.

myproject/
  ansible.cfg
  inventory
  site.yml
  group_vars/
  host_vars/
  roles/

اختبار سريع

ما الملف الذي يُعدّ نقطة الدخول التقليدية الأعلى مستوى لمشروع كامل؟

خلاصة

تعلّمتم التنظيم القياسي: site.yml مع inventory وgroup_vars وhost_vars وroles في مستودع واحد. وتكبر البنية المتوقعة مع فريقكم. ✅

الأسئلة الشائعة

هل درس «تخطيط المجلدات الموصى به» مجاني؟

نعم — نص درس «تخطيط المجلدات الموصى به» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Ansible Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Ansible Academy 4 دروس في المجموع.

ماذا ستتعلم في «تخطيط المجلدات الموصى به»؟

أماكن وجود Playbooks والجرد وvars تتمرن على Ansible Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Ansible Academy؟

لا تُشترط خبرة سابقة. Ansible Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «تخطيط المجلدات الموصى به»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Ansible Academy هذا؟

نعم. كل درس في Ansible Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. تخطيط المجلدات الموصى به
  2. مجلدا group_vars وhost_vars
  3. تقسيم Playbooks باستخدام import وinclude
  4. التسمية والتعليقات والأسلوب القابل للتوسّع
← العودة إلى Ansible Academy