ديف أوبس

تثبيت وإدارة Supervisor على أوبنتو ودبيان

كيفية تثبيت وإدارة Supervisor على خواديم أوبنتو و دبيان

تعد أدوات إدارة العمليات والخدمات من أهم العوامل التي تسهم في استقرار الأداء على خواديم لينكس. من بين الأدوات الشائعة في هذا المجال تأتي Supervisor، وهي أداة تسهل من إدارة العمليات ومراقبتها على النظام. في هذا المقال، سنتناول كيفية تثبيت Supervisor على توزيعات أوبنتو و دبيان، بالإضافة إلى كيفية تكوينه وإدارته بفعالية لضمان استمرارية العمليات والتطبيقات الحيوية دون انقطاع.

1. مقدمة عن Supervisor

Supervisor هو أداة قوية ومفتوحة المصدر لإدارة وتنظيم العمليات التي تعمل في الخلفية على أنظمة لينكس و يونيكس. يتيح للمستخدمين تشغيل ومراقبة وإعادة تشغيل العمليات (أو الخدمات) بشكل آلي عند تعطلها. يدير Supervisor العمليات باستخدام ملفات تكوين قابلة للتخصيص، كما يوفر واجهات متعددة، بما في ذلك واجهة سطر الأوامر وواجهة ويب.

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

2. تثبيت Supervisor على توزيعات أوبنتو ودبيان

Supervisor متاح من خلال مستودعات APT الافتراضية في كل من أوبنتو و دبيان، مما يسهل عملية التثبيت.

2.1 تثبيت Supervisor على أوبنتو

لتثبيت Supervisor على أوبنتو، يجب أولاً تحديث قائمة الحزم المتاحة ومن ثم تثبيت الحزمة نفسها عبر الأوامر التالية:

  1. تحديث مستودعات النظام:

    bash
    sudo apt update
  2. تثبيت Supervisor:

    bash
    sudo apt install supervisor

عند تنفيذ هذه الأوامر، سيقوم APT بتحميل الحزم الضرورية وتثبيتها بشكل تلقائي، بما في ذلك supervisord (الخدمة الرئيسية) وملفات التكوين اللازمة.

2.2 تثبيت Supervisor على دبيان

عملية تثبيت Supervisor على دبيان مماثلة تمامًا لتلك التي على أوبنتو. فقط قم بتحديث الحزم وتثبيت Supervisor عبر الأوامر التالية:

  1. تحديث المستودعات:

    bash
    sudo apt update
  2. تثبيت Supervisor:

    bash
    sudo apt install supervisor

بعد تثبيت Supervisor على كل من أوبنتو و دبيان، سيتم تشغيل الخدمة تلقائيًا عند بدء النظام، ويمكن التحقق من حالتها عبر الأمر:

bash
sudo systemctl status supervisor

3. إدارة Supervisor باستخدام أوامر سطر الأوامر

يتم إدارة Supervisor من خلال الأوامر التي تسمح بتشغيل وإيقاف العمليات، بالإضافة إلى مراقبتها. فيما يلي بعض الأوامر الأساسية لإدارة Supervisor:

  • تشغيل الخدمة:
    لتشغيل خدمة supervisord (المعروفة أيضًا بالعملية الرئيسية):

    bash
    sudo systemctl start supervisor
  • إيقاف الخدمة:
    لإيقاف supervisord:

    bash
    sudo systemctl stop supervisor
  • إعادة تشغيل الخدمة:
    لإعادة تشغيل supervisord:

    bash
    sudo systemctl restart supervisor
  • تمكين الخدمة عند بدء التشغيل:
    لضمان بدء تشغيل supervisord مع كل تشغيل للنظام:

    bash
    sudo systemctl enable supervisor
  • تعطيل الخدمة عند بدء التشغيل:
    لتعطيل بدء تشغيل supervisord عند بدء تشغيل النظام:

    bash
    sudo systemctl disable supervisor

4. تكوين Supervisor

لكل عملية أو خدمة تريد إدارة مراقبتها عبر Supervisor، يجب إنشاء ملف تكوين مخصص لهذه الخدمة. تقع ملفات التكوين عادة في /etc/supervisor/conf.d/. لشرح كيفية تكوين خدمة جديدة في Supervisor، نتبع الخطوات التالية:

  1. إنشاء ملف تكوين جديد في /etc/supervisor/conf.d/:
    على سبيل المثال، لتشغيل تطبيق ويب يعتمد على Python أو أي تطبيق آخر، نقوم بإنشاء ملف تكوين كالتالي:

    bash
    sudo nano /etc/supervisor/conf.d/myapp.conf
  2. إضافة محتويات ملف التكوين:
    محتويات ملف التكوين عادة ما تكون مشابهة لما يلي:

    ini
    [program:myapp] command=/usr/bin/python3 /path/to/myapp.py autostart=true autorestart=true stderr_logfile=/var/log/myapp.err.log stdout_logfile=/var/log/myapp.out.log
    • command: يحدد الأمر أو السكربت الذي سيشغل التطبيق.

    • autostart: يحدد ما إذا كان يجب بدء التطبيق تلقائيًا عند بدء supervisor.

    • autorestart: يحدد ما إذا كان يجب إعادة تشغيل التطبيق تلقائيًا إذا فشل.

    • stderr_logfile و stdout_logfile: تحديد ملفات السجلات الخاصة بالأخطاء والإخراج.

  3. تحديث Supervisor بملفات التكوين الجديدة:
    بعد إضافة ملف التكوين، يجب أن يقوم Supervisor بإعادة تحميل ملفات التكوين للتعرف على التطبيقات الجديدة:

    bash
    sudo supervisorctl reread sudo supervisorctl update
  4. بدء الخدمة الجديدة:
    لتشغيل التطبيق الذي تم تكوينه، استخدم الأمر التالي:

    bash
    sudo supervisorctl start myapp

5. مراقبة العمليات باستخدام Supervisor

تتيح لك Supervisor مراقبة حالة التطبيقات التي تديرها بسهولة عبر أوامر سطر الأوامر.

  • عرض حالة جميع البرامج:
    لعرض حالة جميع العمليات التي يديرها Supervisor:

    bash
    sudo supervisorctl status
  • عرض حالة برنامج معين:
    لعرض حالة برنامج معين:

    bash
    sudo supervisorctl status myapp
  • إعادة تشغيل عملية معينة:
    لإعادة تشغيل عملية معينة في حال حدوث مشكلة أو تعديلات على تكوينها:

    bash
    sudo supervisorctl restart myapp
  • إيقاف عملية معينة:
    لإيقاف عملية معينة يديرها Supervisor:

    bash
    sudo supervisorctl stop myapp

6. الوصول إلى واجهة الويب الخاصة بـ Supervisor

إذا كنت بحاجة إلى مراقبة وإدارة Supervisor من واجهة رسومية، يمكنك تكوين واجهة الويب الخاصة به. عادة، يتم تكوين هذه الواجهة عبر إضافة إعدادات إلى ملف supervisord.conf:

  1. تعديل ملف التكوين:
    افتح /etc/supervisor/supervisord.conf وأضف التالي:

    ini
    [inet_http_server] port=127.0.0.1:9001 username=user password=pass

    هذا يتيح الوصول إلى واجهة الويب عبر http://localhost:9001 باستخدام بيانات الدخول المحددة (اسم المستخدم وكلمة المرور).

  2. إعادة تشغيل supervisord:
    بعد التعديل على ملف التكوين، يجب إعادة تشغيل supervisord:

    bash
    sudo systemctl restart supervisor

7. التحديثات والصيانة

من الأمور الهامة التي يجب أن تكون على دراية بها عند استخدام Supervisor هو تحديثه بشكل دوري. يمكن تحديث Supervisor من مستودعات APT باستخدام الأمر:

bash
sudo apt update sudo apt upgrade supervisor

الخاتمة

تعد Supervisor أداة أساسية في بيئات الخوادم لضمان استقرار العمليات والتطبيقات. من خلال توفير أداة لإدارة العمليات بمرونة، وتسجيل الأخطاء، وإعادة تشغيل الخدمات التلقائي، أصبح Supervisor حلًا موثوقًا لكل من يحتاج إلى مراقبة تطبيقات وخدمات الخلفية على أوبنتو و دبيان. باستخدام الأوامر المناسبة وتعديل ملفات التكوين، يمكن للمسؤولين ضمان عمل التطبيقات بأعلى مستوى من الكفاءة والموثوقية.