Nagios یک ابزار متنباز برای مانیتورینگ و پایش زیرساختهای فناوری اطلاعات محسوب میشود. این ابزار در ابتدا برای سیستمعامل لینوکس طراحی شد اما امکان پایش سیستمها و تجهیزات مبتنی بر لینوکس، ویندوز و یونیکس را نیز فراهم میکند. مانیتورینگ Nagios به صورت دورهای پارامترهای مهم اپلیکیشنها، شبکه و منابع سرورها را بررسی میکند. این ابزار میتواند میزان مصرف حافظه، فضای دیسک، بار پردازنده، تعداد پردازشهای در حال اجرا و فایلهای لاگ را پایش نماید. همچنین امکان مانیتورینگ سرویسهایی مانند SMTP، POP3، HTTP و سایر پروتکلهای رایج شبکه را فراهم میکند.
در مانیتورینگ Nagios دو نوع بررسی وجود دارد که شامل بررسی فعال و بررسی غیرفعال میشود. در بررسی فعال، فرایند پایش توسط خود Nagios آغاز خواهد شد اما در بررسی غیرفعال، نتایج توسط برنامههای خارجی به سامانه مانیتورینگ ارسال میشود.
Nagios در سال ۱۹۹۹ با نام NetSaint منتشر شد و توسط Ethan Galstad توسعه یافت. این پروژه بعدها با مشارکت توسعهدهندگان مختلف به یک پروژه متنباز تبدیل شد. شرکت Nagios Enterprises نیز محصولات متعددی مانند Nagios XI، Log Server، Network Analyzer و Fusion را بر پایه فناوری Nagios Core ارائه میکند.

تصویر(1)
مانیتورینگ Nagios چگونه کار میکند؟
کاربران میتوانند توسط رابط خط فرمان یا در نسخههای دارای رابط کاربری، با مانیتورینگ Nagios کار کنند. داشبورد Nagios نمایی کلی از وضعیت منابع و پارامترهای تحت مانیتورینگ ارائه میدهد. برای هر پارامتر میتوان مقادیر آستانه تعیین کرد تا در صورت عبور شاخص از مقدار مشخصشده، مانیتورینگ Nagios به صورت خودکار هشدار ارسال کند. این هشدارها میتوانند از طریق ایمیل یا پیامک برای مدیران ارسال گردند تا مشکلات در کوتاهترین زمان شناسایی شوند. همچنین سیستم کنترل دسترسی امکان تعیین سطح دسترسی کاربران مختلف را بر اساس نقش آنها فراهم میکند.

تصویر(2)
Nagios از مانیتورینگ مبتنی بر Agent و بدون Agent پشتیبانی میکند. در روش مبتنی بر Agent، نرمافزارهای کوچک روی سرورها یا تجهیزات نصب میشوند و اطلاعات موردنیاز را به سرور مدیریت Nagios ارسال میکنند. در روش بدون Agent یا Agentless، نیازی به نصب نرمافزار روی سیستم مقصد نیست و Nagios اطلاعات موردنیاز را از طریق پروتکلهای استاندارد و به صورت راه دور دریافت میکند.
هر دو روش امکان پایش مواردی مانند میزان استفاده از فایل سیستم (file system)، شاخصهای سیستمعامل، وضعیت سرویسها و پردازشها را فراهم میکنند. از Agent های شناختهشده Nagios میتوان به موارد زیر اشاره کرد:
- Nagios Remote Data Processor یا NRDP
- Nagios Cross Platform Agent یا NCPA
- ++NSClient
پلاگینهای Nagios
مانیتورینگ Nagios با استفاده از Agent مربوط به Nagios Remote Plugin Executor یا NRPE میتواند اسکریپتها و Plugin های مختلف را روی سیستمهای راه دور اجرا کند. NRPE امکان پایش شاخصهایی مانند لود سیستم، میزان مصرف حافظه و فضای دیسک را از راه دور فراهم میکند.
NRPE از دو بخش اصلی تشکیل شده که شامل افزونه check_nrpe در سرور مانیتورینگ و Agent مربوط به NRPE سیستم مقصد میشود. Nagios از طریق check_nrpe اطلاعات جمعآوریشده توسط Agent را دریافت و پردازش میکند و سپس آنها را برای تحلیل به Nagios Core ارسال مینماید. همچنین NRPE میتواند با Agent های ویندوز ارتباط برقرار کند و امکان پایش سیستمهای مبتنی بر ویندوز را فراهم سازد.
یکی از مهمترین مزیتهای مانیتورینگ Nagios، پشتیبانی گسترده Plugin ها محسوب میشود. این افزونهها به صورت ماژولهای مستقل توسعه مییابند و به کاربران اجازه میدهند منابع و پارامترهای موردنظر خود را برای پایش تعریف کنند. Plugin ها دستورات موردنیاز را از طریق خط فرمان اجرا مینمایند و نتایج را برای پردازش در اختیار Nagios Core قرار میدهند.
تیم توسعه مانیتورینگ Nagios حدود ۵۰ افزونه رسمی را ارائه و نگهداری میکند و جامعه کاربری آن نیز بیش از ۳ هزار افزونه را توسعه داده است. این افزونهها حوزههایی مانند سختافزار، نرمافزار، سرویسهای ابری، سیستمعاملها، امنیت، فایلهای لاگ و اتصالات شبکه را پوشش میدهند.
برای نمونه، Nagios در صورت استفاده کنار تجهیزات پایش شرایط محیطی، میتواند با کمک Plugin ها شاخصهایی مانند دما، رطوبت و فشار هوا را نیز جمعآوری و مانیتور کند.
ابزارهای Nagios
Nagios در کسبوکارهای کوچک و بزرگ، ارائهدهندگان خدمات اینترنت، مؤسسات آموزشی، سازمانهای دولتی، مراکز درمانی، شرکتهای تولیدی و مؤسسات مالی مورد استفاده قرار میگیرد. کاربران نیز میتوانند بر اساس نیاز خود به امکانات و پشتیبانی، از نسخههای رایگان یا تجاری این ابزار استفاده کنند.
Nagios Core
نرمافزاری که در ابتدا با نام Nagios شناخته میشد، امروزه با نام Nagios Core ارائه میشود. Nagios Core یک نرمافزار رایگان و متنباز برای مانیتورینگ سیستمهای IT، شبکهها و زیرساختها محسوب میگردد.
Nagios Core مجموعهای گسترده از قابلیتهای مانیتورینگ زیرساخت را ارائه میکند و از Plugin ها پشتیبانی مینماید تا کاربران بتوانند امکانات آن را متناسب با نیاز خود گسترش دهند. این نرمافزارهمچنین به عنوان هسته اصلی محصولات تجاری Nagios نیز مورد استفاده قرار میگیرد.
Nagios Core دارای یک رابط کاربری تحت وب اختیاری است که اطلاعاتی مانند وضعیت شبکه، اعلانها و فایلهای لاگ را نمایش میدهد. این ابزار میتواند در صورت بروز مشکل درون سرورها یا هاست ها، کاربران را مطلع کند و سرویسهای شبکهای مانند SMTP، HTTP و Ping را نیز پایش نماید.

تصویر(3)
Nagios XI
Nagios XI نسخه توسعهیافته و پیشرفتهتر Nagios Core محسوب میشود و به عنوان نسخه سازمانی این ابزار طراحی شده است. XI علاوه بر قابلیتهای مانیتورینگ، امکاناتی مانند مدیریت پیکربندی و ابزارهای مدیریتی را نیز ارائه میکند.
در حالی که Nagios Core رایگان و متنباز است، استفاده Nagios XI به خرید مجوز از شرکت Nagios Enterprises نیاز دارد. این نسخه علاوه بر قابلیتهای Core، امکاناتی مانند ماشینهای مجازی از پیش پیکربندیشده، رابط تحت وب برای تنظیمات، نمودارهای عملکرد، اپلیکیشن موبایل، داشبوردهای مدیریتی، گزارشهای زمانبندیشده و پشتیبانی فنی ایمیلی را ارائه میکند.
Nagios XI میتواند بخشهای مختلف زیرساخت IT، از جمله برنامههای کاربردی، سیستمعاملها، شبکهها و شاخصهای عملکرد سیستم را پایش کند. این نسخه همچنین از Plugin ها پشتیبانی مینماید تا قابلیتهای مانیتورینگ آن متناسب با نیاز زیرساخت گسترش پیدا کند.
رقبای Nagios
Nagios در بازار ابزارهای مانیتورینگ با رقبای مختلفی مانند Zenoss، Zabbix، Microsoft SCOM و SolarWinds مواجه است. این ابزارها شامل راهکارهای متنباز و تجاری میشوند و قابلیتهای مختلفی برای پایش زیرساختهای فناوری اطلاعات ارائه میکنند.
Zenoss
Zenoss یک نرمافزار مانیتورینگ IT برای محیطهای ابری، مجازی و فیزیکی محسوب میشود. این ابزار میتواند سرورها، شبکهها، ماشینهای مجازی، پایگاههای داده و سایر تجهیزات و نرمافزارهای زیرساخت IT را پایش کند.
Zenoss نیز مانند Nagios در نسخههای مختلف ارائه میشود. Zenoss Core نسخه متنباز این ابزار محسوب میگردد و نسخههای تجاری و دارای پشتیبانی مانند Zenoss Service Dynamics و Zenoss as a Service نیز ارائه میشوند. Service Dynamics روی زیرساخت سازمان نصب میشود، در حالی که Zenoss as a Service به صورت Software as a Service یا SaaS ارائه میگردد.

تصویر(4)
Zabbix
Zabbix یک ابزار متنباز برای مانیتورینگ سیستمعاملهای لینوکس، یونیکس و ویندوز محسوب میشود که جهت جمعآوری اطلاعات از Agent ها استفاده میکند. این ابزار در کنار Agent ها، از پروتکلهای رایج برای مانیتورینگ بدون Agent نیز پشتیبانی میکند.
Zabbix میتواند منابع فیزیکی و ابری، ماشینهای مجازی، سرویسها و برنامههای کاربردی را پایش کند. این ابزار برای استقرار درون زیرساخت داخلی و استفاده در محیطهای ابری توسعه یافته است.
Microsoft SCOM
Microsoft System Center Operations Manager یا SCOM به کاربران اجازه میدهد تجهیزات و برنامههای کاربردی را از طریق یک کنسول مدیریتی واحد پیکربندی، مدیریت و پایش کنند.
SCOM میتواند سختافزار سرورها، سرویسهای سیستم، سیستمعاملها، Hypervisor ها و اپلیکیشن ها را مانیتور نماید. این ابزار نیز مانند Nagios از روشهای مبتنی بر Agent و بدون Agent برای جمعآوری اطلاعات پشتیبانی میکند و امکان استفاده از Plugin ها را فراهم میسازد.
SolarWinds
نرمافزار SolarWinds Server & Application Monitor برای پایش برنامههای کاربردی، سرورها و پایگاههای داده طراحی شده است. این ابزار امکاناتی مانند مانیتورینگ عملکرد، مدیریت سرورها، ارسال هشدار و تهیه گزارش را ارائه میکند.
Server & Application Monitor برای جمعآوری اطلاعات از روش مانیتورینگ بدون Agent نیز پشتیبانی میکند. همچنین امکان یکپارچهسازی آن با سایر محصولات SolarWinds وجود دارد و میتوان آن را در کنار سایر ابزارهای این شرکت مورد استفاده قرار داد.
جمعبندی
Nagios یکی از ابزارهای شناختهشده برای مانیتورینگ زیرساختهای IT، سرورها، شبکهها و سرویسها محسوب میشود که با پشتیبانی از Plugin ها و روشهای Agent و Agentless، انعطافپذیری و قابلیت توسعه مناسبی ارائه میکند. Nagios Core به عنوان نسخه رایگان و متنباز و Nagios XI نسخه تجاری و سازمانی ارائه میشوند. در کنار Nagios، ابزارهایی مانند Zabbix، Zenoss، SCOM و SolarWinds نیز از گزینههای مطرح برای مانیتورینگ و مدیریت زیرساختهای فناوری اطلاعات محسوب میگردند.