نصب و تنظیم supervisor بر روی دبیان

توجه: برای دیدن فیلم آموزش نصب دبیان به اینجا بروید.

در این مقاله به آموزش نصب و تنظیم supervisor می پردازیم.

supervisor چیست و چگار میکند؟

در اکثر مواقع زمانی که یک سرویس دهنده در سیستم های لینوکسی از دسترس خارج میشود بصورت خودکار ریست یا راه اندازی نمی شود و تا زمانی که یک مدیر سیستم به آن برسد از دسترس خارج است. برای رفع این ایراد که در مواقع بسیار زیادی اتفاث می افتد ابزاری وجود دارد به نام supervisord که ما می توانیم سرویس های مورد نظرمان را به آن معرفی کنیم و در زمانی که این سرویس های معرفی شده از دسترس خارج شدن supervisord بدون دخالت مدیر سیستم آنها را بالا بیاورد.

حالا ما در این مقاله میخواهخیم نحوه نصب و تنظیم supervisord را برای رسیدن به این هدف آموزش دهیم.

در ابتدا با استفاده از دستور زیر اقدام به نصب supervisord میکنیم

apt-get install supervisor

بعد از اینکه نصبمان تمام شد با استفاده از دستور زیر اقدام به ریست کردن supervisord میکنیم تا ببین آیا نصب با موفقیت انجام شده یا خیر

service supervisor restart

در مرحله بعدی به توضیح تنظیمات و اضافه کردن سرویس هایی که میخواهیم در صورت از دسترس خارج شدن بصورت خودکار بالا بیایند می پردازیم.

نکته: ما در این آموزش یک برنامه ساختگی به نام nowlearn.sh در مسیر /home/nowlearn می سازیم. برای این منظور دستورات زیر را اجرا میکنیم.

vi /home/nowlearn/nowlearn.sh

#!/bin/bash
while true
do
# Echo current date to stdout
echo `date`
# Echo ‘error!’ to stderr
echo ‘error!’ >&2
sleep 1
done

chmod +x /home/nowlearn/nowlearn.sh

توجه: شما میتوانید از هر برنامه یا سرویسی که خودتان میخواهید استفاده کنید.

حالا نوبت به آن میرسد که برنامه ای که ساخته ایم را به supervisord معرفی کنیم .

برای این منظور به آدرس زیر میرویم

/etc/supervisor/conf.d

و یک فایل با نام دلخواه مانند nowlearn_script.conf را در این مسیر ایجاد میکنیم و تنظیمات را مانند زیر در آن قرار میدهیم

[program:nowlearn_script]
command=/home/nowlearn/nowlearn.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/nowlearn.err.log
stdout_logfile=/var/log/nowlearn.out.log

نکته: عبارت command مسیر کامل برنامه یا سرویس ما میباشد.

نکته: عبارات autostart و autorestart به ترتیب به supervisord میگوید که برنامه ساختکی ما را بصورت اتوماتیک استارت و ریستارت کند.

نکته: خطوط stderr_logfile و stdout_logfile مسیر فایل لاگ خطا و خروجی دستور را برای عیب یابی های احتمالی مشخص میکند.

حالا باید به supervisord بگوییم که یک برنامه اضافه شده و باید آن را بالا نگه دارد. برای این منظور دستور زیر را اجرا میکنیم

supervisorctl reread

و بعد دستور زیر را برای آپدیت شدن supervisord اجرا میکنیم

supervisorctl update

برای چک کردن status برنامه هایی که به supervisord معرفی کردیم از دستور زیر استفاده میکنیم

supervisorctl status

 

1 دیدگاه در n “نصب و تنظیم supervisor بر روی دبیان

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *