Ansible Academy · درس

التجهيز ثم الإعداد في تدفق واحد

سلّم المضيفين الجدد إلى Plays الإعداد

الدرس 4 من 413 خطوة

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

مهمتان، وPlaybook واحد

يجعل التوفير الخادم موجودًا، بينما تجعله التهيئة مفيدًا. وتكمن القوة الحقيقية في تنفيذ الأمرين معًا ضمن play واحدة سلسة. 🔗

وفّروا الموارد على العقدة المتحكمة

تعمل مهام إنشاء الموارد السحابية محليًا مقابل واجهة AWS البرمجية، ولذلك تستهدف play الخاصة بالتوفير localhost، لا الخادم الجديد.

- hosts: localhost
  gather_facts: false
  tasks:
    - amazon.aws.ec2_instance: { name: web-01 }

التقطوا المضيف الجديد

لا يمكنكم استخدام SSH للاتصال بخادم لا تعرفون معلوماته بعد. سجّلوا نتيجة ec2_instance باستخدام register للحصول على عنوان IP العام الجديد.

- amazon.aws.ec2_instance:
    name: web-01
  register: ec2

أضيفوه إلى الجرد في الذاكرة

تُدخل وحدة add_host الخادم الجديد إلى الجرد قيد التشغيل، لكي تتمكن play لاحقة من استهدافه دون ملف ثابت.

- add_host:
    name: "{{ ec2.instances[0].public_ip_address }}"
    groups: launched

انتظروا حتى يصبح SSH جاهزًا

لا يمكن الوصول إلى المثيل الذي لا يزال يقلع فورًا. إذ توقف wait_for التنفيذ حتى يستجيب المنفذ 22، قبل محاولة الاتصال.

- wait_for:
    host: "{{ ec2.instances[0].public_ip_address }}"
    port: 22

ابدؤوا Play ثانية

افتحوا الآن play جديدة تستهدف مجموعة launched التي أنشأتموها للتو. وتعمل هذه play على الخادم السحابي نفسه.

- hosts: launched
  become: true
  tasks:
    - ping:

هيّئوا المضيف الجديد

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

- hosts: launched
  tasks:
    - package:
        name: nginx
        state: present

مرّروا مستخدم SSH الصحيح

تستخدم صور السحابة أسماء دخول محددة، مثل ubuntu أو ec2-user. عيّنوا ansible_user لكي تتصل play الخاصة بالتهيئة بشكل صحيح.

add_host:
  name: "{{ ec2.instances[0].public_ip_address }}"
  groups: launched
  ansible_user: ubuntu

ملف واحد من البداية إلى النهاية

النتيجة هي playbook واحد: ينشئ الـ play الأول البنية التحتية، ويهيئها الـ play الثاني. شغّلوه مرة واحدة ليظهر خادم يعمل.

Idempotent في كل المراحل

كلا الجزأين idempotent. فعند إعادة التشغيل، يطابق المثيل الموجود ويجعل الإعدادات تتقارب مع الحالة المطلوبة، لذا يكون التدفق آمنًا للتكرار.

تجاوز مطالبات مفتاح المضيف

يمتلك المضيف الجديد تمامًا مفتاح SSH غير معروف. عطّل host_key_checking للمجموعة التي أُطلقت حتى لا يتوقف الاتصال الأول.

add_host:
  name: "{{ ec2.instances[0].public_ip_address }}"
  groups: launched
  ansible_ssh_common_args: "-o StrictHostKeyChecking=no"

تحقق سريع

لقد أطلقتم خادم EC2 وتريدون من الـ play التالي تهيئته، من دون إدخال ثابت في inventory. ما الذي يسد هذه الفجوة؟

مراجعة

لقد ربطتم بين التوفير والتهيئة: أنشئوا على localhost، وسجّلوا عنوان IP، ثم استخدموا add_host، وانتظروا SSH، وبعد ذلك نفّذوا التهيئة في play ثانٍ. ✨

البدء مجانًا

تعلم YAML مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

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

هل درس «التجهيز ثم الإعداد في تدفق واحد» مجاني؟

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

ماذا ستتعلم في «التجهيز ثم الإعداد في تدفق واحد»؟

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

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

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

كم من الوقت يستغرق درس «التجهيز ثم الإعداد في تدفق واحد»؟

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

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

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

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

  1. Cloud Collections والمصادقة
  2. إطلاق مثيلات EC2 بصورة تصريحية
  3. الشبكات: VPCs والشبكات الفرعية ومجموعات الأمان
  4. التجهيز ثم الإعداد في تدفق واحد
← العودة إلى Ansible Academy