كيفية تثبيت وضبط Ansible على Ubuntu 18.04
تُعد أداة Ansible واحدة من الأدوات الرائدة في إدارة الأنظمة والعمليات البرمجية. تعد هذه الأداة من أدوات الأتمتة القوية التي تُستخدم لتنفيذ المهام المتكررة مثل تكوين الخوادم، نشر التطبيقات، إدارة الأنظمة، وتحديث البرامج على مجموعة كبيرة من الخوادم عن بُعد بطريقة فعّالة. توفر Ansible طريقة مبسطة ومرنة لأتمتة بيئات تكنولوجيا المعلومات، حيث تعتمد على لغة YAML لتحديد المهام التي يجب أن يتم تنفيذها على الخوادم المستهدفة.
في هذا المقال، سنشرح كيفية تثبيت Ansible وضبطه على Ubuntu 18.04، ابتداءً من تثبيت الحزمة وصولاً إلى إعداد الخوادم وإدارة النظام باستخدام Ansible.
1. تثبيت Ansible على Ubuntu 18.04
قبل أن تتمكن من استخدام Ansible لإدارة الخوادم، يجب عليك تثبيت الحزمة على النظام الخاص بك. يوفر Ubuntu 18.04 مستودعات حزم تحتوي على نسخة من Ansible، ولكن للحصول على أحدث إصدار من الأداة، يفضل إضافته عبر المستودع الرسمي الخاص بـ Ansible.
1.1. التحقق من تحديث النظام
قبل البدء في تثبيت Ansible، يُستحسن تحديث قائمة الحزم الحالية وتثبيت التحديثات المتوفرة. للقيام بذلك، افتح الطرفية (Terminal) وأدخل الأوامر التالية:
bashsudo apt update sudo apt upgrade
هذه الخطوة تضمن أن جميع الحزم على جهازك محدثة.
1.2. إضافة مستودع Ansible الرسمي
للحصول على أحدث إصدار من Ansible، من الأفضل إضافة المستودع الرسمي الخاص بـ Ansible إلى قائمة المستودعات في النظام. أولاً، قم بتثبيت الحزمة التي تدير المستودعات على Ubuntu:
bashsudo apt install software-properties-common
ثم قم بإضافة مستودع Ansible:
bashsudo add-apt-repository ppa:ansible/ansible
1.3. تحديث قائمة الحزم مرة أخرى
بعد إضافة المستودع، يجب عليك تحديث قائمة الحزم لكي يتمكن النظام من اكتشاف الحزم الجديدة المتاحة من المستودع الذي أضفته:
bashsudo apt update
1.4. تثبيت Ansible
الآن، قم بتثبيت Ansible باستخدام الأمر التالي:
bashsudo apt install ansible
انتظر قليلاً حتى يتم تنزيل وتثبيت Ansible على النظام. بعد الانتهاء من التثبيت، يمكنك التحقق من نجاح العملية عبر التأكد من إصدار Ansible المثبت:
bashansible --version
2. إعداد Ansible لاستخدامه
بعد تثبيت Ansible على جهازك، هناك بعض الخطوات الإضافية التي يجب اتباعها لضبط البيئة واستخدام الأداة في إدارة الخوادم.
2.1. تهيئة ملف inventary
يُعد ملف inventory من الملفات الأساسية التي يستخدمها Ansible لتحديد الخوادم التي يجب إدارة العمليات عليها. الملف عادة ما يكون موجودًا في المسار /etc/ansible/hosts، ويمكنك تحريره لتحديد الخوادم التي ستتواصل معها Ansible.
لتعديل هذا الملف، افتح الطرفية وأدخل الأمر التالي:
bashsudo nano /etc/ansible/hosts
قم بإضافة الخوادم المستهدفة في هذا الملف. على سبيل المثال، يمكنك إضافة الخوادم باستخدام عناوين IP أو أسماء النطاقات الخاصة بها:
bash[webservers] 192.168.1.10 192.168.1.11
هنا، تم إنشاء مجموعة تُسمى webservers تحتوي على الخوادم التي تريد أن تديرها باستخدام Ansible.
2.2. تحقق من الاتصال بالخوادم
للتأكد من أن Ansible يمكنه التواصل مع الخوادم الموجودة في inventory، يمكنك استخدام الأمر التالي:
bashansible -m ping all
إذا كانت الخوادم مستجيبة، فسيتم عرض رسالة مثل:
bash192.168.1.10 | SUCCESS => {
"ping": "pong"
}
192.168.1.11 | SUCCESS => {
"ping": "pong"
}
إذا ظهرت رسالة تفيد بأن الاتصال لم ينجح، تأكد من أن الخوادم التي أضفتها في ملف inventory قابلة للوصول وأن Ansible يمكنه الاتصال بها عبر الشبكة.
3. استخدام Ansible لإدارة الخوادم
بعد التثبيت والإعداد، يمكنك الآن استخدام Ansible لأداء مهام الإدارة المختلفة. في هذا القسم، سنناقش بعض الأوامر الأساسية التي يمكنك استخدامها لتشغيل الأوامر على الخوادم المستهدفة.
3.1. تشغيل الأوامر البسيطة على الخوادم
أحد أوامر Ansible الأساسية هو استخدامه لتشغيل أوامر على الخوادم المستهدفة عبر الأمر ansible. على سبيل المثال، لتثبيت حزمة معينة على جميع الخوادم في ملف inventory، يمكنك استخدام الأمر التالي:
bashansible all -m apt -a "name=htop state=present"
في هذا المثال، نقوم بتثبيت حزمة htop على جميع الخوادم في inventory باستخدام Ansible. الأمر -m apt يعني أننا نستخدم وحدة apt الخاصة بإدارة الحزم في Ubuntu، بينما تعني -a تحديد الإجراء الذي نريد تنفيذه (في هذه الحالة، تثبيت حزمة htop).
3.2. إعداد مجموعات من الخوادم
يمكنك أيضًا تخصيص إدارة الخوادم عن طريق تقسيمها إلى مجموعات داخل ملف inventory. على سبيل المثال، إذا كان لديك خوادم ويب وخوادم قاعدة بيانات، يمكنك تنظيمها في مجموعات كما يلي:
bash[webservers] 192.168.1.10 192.168.1.11 [dbservers] 192.168.1.20 192.168.1.21
ثم يمكنك تشغيل أوامر على كل مجموعة على حدة:
bashansible webservers -m apt -a "name=nginx state=present"
يعمل هذا الأمر على تثبيت خادم الويب nginx فقط على الخوادم التي تنتمي إلى مجموعة webservers.
3.3. تشغيل Playbooks
Playbooks هي مجموعة من المهام التي يتم تنفيذها على الخوادم باستخدام Ansible. يتم كتابة هذه المهام باستخدام YAML (لغة ترميز بيانات قابلة للقراءة من قبل الإنسان). يمكن أن يحتوي Playbook على العديد من المهام التي يجب تنفيذها في ترتيب معين.
مثال بسيط على Playbook لتثبيت nginx:
yaml---
- name: تثبيت خادم الويب Nginx
hosts: webservers
become: yes
tasks:
- name: تثبيت Nginx
apt:
name: nginx
state: present
لحفظ هذا في ملف يسمى nginx.yml، يمكنك تشغيله باستخدام الأمر:
bashansible-playbook nginx.yml
سيقوم هذا Playbook بتثبيت nginx على جميع الخوادم في مجموعة webservers.
4. إدارة الوصول باستخدام SSH
تعتمد Ansible بشكل كبير على بروتوكول SSH للاتصال بالخوادم المستهدفة. من الضروري أن تكون الخوادم المستهدفة مهيأة للسماح بالاتصال عبر SSH. إذا لم تكن قد فعلت ذلك بعد، يمكنك إعداد SSH على الخوادم المستهدفة باستخدام الأمر التالي:
bashssh-keygen -t rsa
ثم أضف المفتاح العام إلى الخوادم المستهدفة باستخدام الأمر التالي:
bashssh-copy-id user@hostname
5. التحقق من إعدادات Ansible
من المهم التحقق من أن Ansible يعمل كما هو متوقع. يمكن استخدام الأوامر التالية للحصول على معلومات تفصيلية حول الاتصال والمعلومات الخاصة بالـ inventory:
bashansible all --list-hosts
يُظهر هذا الأمر قائمة بجميع الخوادم المستهدفة في inventory.
6. خاتمة
تثبيت وضبط Ansible على Ubuntu 18.04 يوفر لك أداة قوية لإدارة الأنظمة عبر الشبكة، مما يجعل الأتمتة أسهل وأكثر فعالية. من خلال إعداد inventory، وكتابة Playbooks، ودمج أوامر Ansible، يمكنك تحسين كيفية إدارة خوادمك بشكل كبير، مما يساهم في تسريع عمليات النشر وتوفير الوقت والموارد.

