DevOps

مانیتورینگ سرور با Zabbix، Prometheus و Grafana

مانیتورینگ سرور یعنی مصرف منابع و وضعیت سرویس ها همیشه اندازه گیری شود و وقتی چیزی از حد معمول خارج شد، خودتان زودتر از مشتری خبردار شوید. تیم فنی پیکوهاست Zabbix یا Prometheus با Grafana را روی سرور شما راه اندازی و هشدارها را تنظیم می کند.

در یک نگاه

مانیتورینگ سرور یعنی اندازه گیری مداوم CPU، رم، دیسک، شبکه و سرویس ها و ارسال هشدار هنگام عبور از آستانه. وقتی بعد از خرابی تازه باخبر می شوید به آن نیاز دارید. تیم فنی پیکوهاست Zabbix یا Prometheus و Grafana، بررسی uptime و هشدار تلگرام یا ایمیل را راه اندازی می کند.

سطح های خدمت

دامنه کار را با توجه به وضعیت سرور شما انتخاب می کنیم؛ قیمت هر سطح بعد از بررسی گفته می شود.

چه کارهایی انجام می شود

Zabbix

نصب سرور Zabbix، agent روی هر میزبان و قالب های آماده برای لینوکس و سرویس ها

Prometheus

نصب Prometheus، node_exporter روی سرورها و در صورت نیاز exporter برای MySQL، Nginx یا Docker

Grafana

اتصال به منبع داده و ساخت داشبورد برای CPU، رم، دیسک، شبکه و سرویس ها

Uptime

بررسی دوره ای در دسترس بودن سایت یا پورت و زمان پاسخ از بیرون یا داخل سرور

هشدار

ارسال اعلان به تلگرام یا ایمیل برای هر آستانه تعریف شده

آستانه ها

تعیین مقدارهای هشدار و بحرانی بر اساس رفتار واقعی سرور شما

چه زمانی به این خدمت نیاز دارید

  • سایت گاهی کند یا قطع می شود و نمی دانید علت چه بوده، چون در آن لحظه چیزی ثبت نشده است.
  • دیسک یا رم سرور چند بار ناگهان پر شده و می خواهید پیش از آن مطلع شوید.
  • چند سرور یا چند سرویس دارید و هر کدام را جداگانه چک کردن وقت می گیرد.
  • می خواهید بعد از تغییر تنظیمات یا افزودن بار جدید اثر آن را روی منابع ببینید.
  • برای تصمیم درباره ارتقای سرور به عدد واقعی نیاز دارید و نه حدس.

مراحل کار

  1. ۱

    در تیکت تعداد سرورها، سیستم عامل، سرویس های مهم و کانال دلخواه هشدار را می نویسید.

  2. ۲

    تیم فنی ابزار مناسب را پیشنهاد می کند و روی یک سرور مانیتورینگ نصب می کند.

  3. ۳

    agent یا exporter روی سرورهای هدف نصب و فقط پورت های لازم باز می شود.

  4. ۴

    داشبورد و بررسی uptime ساخته می شود و داده ها چند ساعت جمع آوری می شود.

  5. ۵

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

  6. ۶

    توضیح خواندن داشبورد و تغییر آستانه ها به شما تحویل داده می شود.

چه چیزی از شما لازم داریم

  • فهرست سرورها با آدرس، سیستم عامل و نقش هر کدام.
  • دسترسی مدیریتی که از طریق فیلدهای خصوصی تیکت یا یک حساب موقت داده می شود. رمز root را در متن عادی تیکت ننویسید. حساب موقت بعد از اتمام کار حذف می شود.
  • فهرست سرویس ها و آدرس هایی که باید بررسی شوند، مثل سایت، API یا پورت پایگاه داده.
  • مقصد هشدار: ایمیل یا یک گروه تلگرام که ربات هشدار در آن عضو می شود.
  • اگر سرور پشت فایروال است، اعلام این که چه پورت هایی را می شود برای مانیتورینگ باز کرد. مورد مرتبط در محافظت با فایروال آمده است.

چه چیزی تحویل می دهید و چه چیزی تضمین نمی شود؟

تحویل شامل سیستم مانیتورینگ نصب شده، داشبوردهای اصلی، بررسی uptime، هشدارهای تنظیم شده و یک راهنمای کوتاه برای افزودن سرور یا سرویس تازه است.

چند محدودیت واقعی وجود دارد. مانیتورینگ مشکل را برطرف نمی کند و فقط خبر می دهد. اگر خود سرور مانیتورینگ از کار بیفتد یا اینترنت آن قطع شود، هشدار نمی رسد، برای همین بررسی از یک نقطه بیرونی هم توصیه می شود. آستانه ها بر پایه رفتار فعلی سرور تنظیم می شوند و با تغییر بار باید دوباره بازبینی شوند. پاسخ به هشدار و رفع علت آن در این خدمت نیست و در سرور مدیریت شده پوشش داده می شود.

سوالات پرتکرار

Zabbix بهتر است یا Prometheus؟
هر دو کار می کنند. Zabbix با رابط و قالب آماده سریع تر شروع می شود. Prometheus با Grafana در پروژه های کانتینری و زیرساخت پویا رایج تر است. انتخاب به تعداد سرورها و سلیقه تیم شما بستگی دارد.
هشدار روی تلگرام چطور کار می کند؟
یک ربات تلگرام ساخته می شود و ابزار مانیتورینگ هنگام عبور از آستانه پیام را به گروه یا حساب شما می فرستد. توکن ربات فقط روی سرور مانیتورینگ ذخیره می شود.
مانیتورینگ روی سرور من فشار می آورد؟
agent و exporter ها سبک هستند، ولی مصرف صفر ندارند. اگر سرور شما منابع بسیار محدودی دارد، پیش از نصب مصرف را بررسی و در صورت لزوم فاصله جمع آوری داده را بیشتر می کنیم.
داده ها چقدر نگهداری می شوند؟
مدت نگهداری قابل تنظیم است و به فضای دیسک سرور مانیتورینگ بستگی دارد. در تنظیم اولیه با شما هماهنگ می شود. اگر به دنبال کاهش مصرف و زمان پاسخ هستید، بهینه سازی سرعت هم بعد از دیدن داده ها تصمیم دقیق تری می دهد. مستندات رسمی را در مستندات Zabbix می توانید ببینید.