سیستم مانیتورینگ ZABBIX

سیستم مانیتورینگ zabbix

مقدمه:

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

لذا امروزه استفاده از ابزارهای حرفه‌ای مانیتورینگ یکی از الزامات اساسی واحدهای فناوری و اطلاعات محسوب می‌گردد.

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

تاریخچه zabbix

نرم‌افزار زبیکس ابتدا به صورت یک نرم‌افزار درون سازمانی در یک بانک توسط الکسی ولادیشو در سال 1998 ایجاد شد. 3 سال بعد در سال 2001 اولین نسخه آزمایشی آن یعنی نسخه آلفا ZABBIX1.0 تحت پروانه عمومی همگانی گنو منتشر شد. و در سال 2004 اولین نسخه رسمی و  پایدار  ZABBIX1.0 انتشار یافت. از همان سال زبیکس با استمرار در به روز رسانی سیستم خود طی 16 مرحله اقدام به به‌روزرسانی کرده است. آخرین به‌روز رسانی این نرم افزار نسخه ZABBIX6.4 بوده است که در 22 آگوست 2023 منتشر شد.

سیستم مانیتورینگ زبیکس

سیستم مانیتورینگ ZABBIX یکی از قوی ترین و شناخته شده ترین سیستم‌های مانیتورینگ در دنیا می‌باشد که از سال 2001 اولین نسخه آن به بازار عرضه شده و تا امروز به عنوان یکی از سیستم‌های پیشرو در صنعت مانیتورینگ شبکه و نرم‌افزارها، نسخه‌های بسیاری را روانه بازار نموده است.

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

zabbix 1

افتخارات زبیکس

سیستم مانیتورینگ ZABBIX این افتخار را دارد که دو بار نامزد دریافت جایزه بهترین سیستم مانیتورینگ از موسسه گارتنر گردد که این امر پیشتازی این سیستم در بین دیگر سیستم‌های مانیتورینگ را به خوبی روشن می‌سازد.

جلوگیری هوشمندانه از آسیب دیدن تجهیزات و اطلاعات حیاتی

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

دسترسی و نظارت‌های همیشگی بر عملکردها در زبیکس

سیستم مانیتورینگ ZABBIX یکی از بهترین و کامل‌ترین راه‌حل‌های مورد نیاز در  زمینه Availability and Performance Monitoring می‌باشد. در این سیستم امکانات متعددی به صورت پیش فرض در اختیار کاربران قرار دارد که از این طریق راه‌اندازی سیستم مانیتورینگ سریع‌تر و آسان‌تر صورت می‌پذیرد.

پشتیبانی از تمام زبان‌های برنامه‌نویسی دنیا

کاربران در سیستم مانیتورینگ ZABBIX می‌توانند به راحتی نیازهای خود را تحت عنوان یک ماژول به ZABBIX اضافه نمایند. برای این کار سیستم مانیتورینگ ZABBIX تمام زبان‌های برنامه‌نویسی موجود را پشتیبانی می‌کند و کاربران هیچ محدودیتی در استفاده از زبان‌های برنامه‌نویسی برای استفاده از این قابلیت ZABBIX ندارند.

زبیکس یک سیستم Open Source

علاوه بر این، Open Source بودن این سیستم باعث شده تا اطمینان کاربران، به خصوص کاربرانی که دارای اطلاعات حساس در سازمان خود می‌باشند به این سیستم افزایش یابد.

این سیستم دارای ویژگی‌های بسیار منحصربه‌فردی در حوزه مانیتورینگ و هشدار‌های کاربردی و متنوع در زمان وقوع یک رویداد و نیز قابلیت‌های ویژه در UI می‌باشد که بسیاری از این ویژگی‌ها در دیگر سیستم‌های مانیتورینگی که بعضا به صورت Closed Source می‌باشند وجود ندارد.

گستردگی شرکای تجاری زبیکس در سراسر جهان

سیستم مانیتورینگ ZABBIX دارای تعداد زیادی Partner در سراسر جهان می‌باشد. در این میان نام شرکت های بزرگی از جمله IBM، Novell، Red Hat،Ubuntu  و VMware به عنوان شرکای  استراتژیک شرکت ZABBIX نشان‌دهنده اعتبار این سیستم مانیتورینگ در دنیا می‌باشد. گستردگی نمایندگی‌های زبیکس در سراسر دنیا یکی از نقاط‌قوت این سیستم در زمینه‌ی محبوبیت و کارایی بالا نسبت به تمامی سیستم های مانیتورینگ در جهان است. جالب است که بدانید در منطقه خاورمیانه اولین نمایندگی این سیستم را یک شرکت ایرانی به نام سدید آفرین در سال 2010 توانست به نام خود ثبت کند و هم‌اکنون نیز به عنوان تنها نمایندگی رسمی زبیکس در ایران مشغول به فعالیت است.

ساختار سیستم مانیتورینگ Zabbix :

به صورت کلی می‌توان توانمندی‌های سیستم مانیتورینگ ZABBIX را به چهار بخش تقسیم کرد:

  • رصد اطلاعات
  • هشدار وقوع یک رخداد
  • عکس العمل هوشمندانه
  • گزارش

1_ رصد اطلاعات:

توانایی یک سیستم مانیتورینگ در رصد اطلاعات و دریافت داده های مورد نیاز (Data Gathering) یکی از مهمترین بخش‌های این سیستم می‌باشد. به خصوص زمانی که قرار است مانیتورینگ سازمان‌های بزرگی مانند بانک‌ها، ISP ها و یا هر شرکت دیگری که دارای تجهیزات و نرم‌افزارهای بسیار متنوعی می‌باشند انجام شود، تنوع روش‌های جمع‌آوری اطلاعات می‌تواند به عنوان اصلی‌ترین نقاط‌قوت یک سیستم مانیتورینگ محسوب گردد.

از این رو سیستم مانیتورینگ ZABBIX به عنوان یکی از ابزارهای شناخته شده در مانیتورینگ شبکه، زیرساخت، تجهیزات و سرویس‌های سازمان، تمام تلاش خود را برای ایجاد روش‌های متنوع جمع‌آوری اطلاعات انجام داده و بر این اساس می‌تواند از طریق روش‌های بسیار کارآمد و متنوع نسبت به جمع‌آوری اطلاعات از شبکه اقدام نماید.

از جمله مهمترین قابلیت‌های این سیستم در جمع‌آوری اطلاعات، می‌توان به موارد زیر اشاره نمود:

  • Auto Discovery
  • Low Level Discovery
  • synthetic monitoring
  • Prometheus monitoring
  • IoT Monitoring
  • Distributed Monitoring
  • Trapping Mechanisms
  • Polling Mechanisms
  • High Performance Agent
  • Agent less Monitoring
  • Database Monitoring (ODBC)
  • Web Monitoring (CURL)
  • JMX (Java Management Extensions) Monitoring
  • Hardware Monitoring (IPMI, SIM, …)
  • SNMP Monitoring (All Versions)
  • IT Services Monitoring
  • Virtualization Monitoring
  • External Check
  • WMI Monitoring
  • Log Monitoring
  • Custom Monitoring

بخش زیر به صورت خلاصه به توضیح هر کدام از ویژگی‌های ذکر شده پرداخته است:

Auto Discovery:

این قابلیت عبارت است از شناسایی اتوماتیک تمام دستگاه‌ها، سرورها و حتی نرم‌افزارهای شبکه، به شکلی که دیگر نیازی به تعریف جداگانه هر کدام از Client ها نمی‌باشد. این قابلیت در ZABBIX امکان کشف اتوماتیک تجهیزات با استفاده از پروتکل‌های متداول را ایجاد می‌نماید. در نتیجه مدیران شبکه و مانیتورینگ با استفاده از تعریف Rule های متنوع و انعطاف‌پذیر می‌توانند به صورت اتوماتیک تمام Client های مورد نظر را به سیستم مانیتورینگ اضافه کرده و در زمان صرفه‌جویی نمایند.

Low Level Discovery:

یکی از ویژگی‌های خاص این سیستم Low Level Discovery می‌باشد. این قابلیت در این سیستم مانیتورینگ این امکان را در اختیار مدیران IT می‌گذارد که بتوانند اطلاعات بسیار جزیی و سطح پایین از سیستم‌های مانیتور شده را بدست بیاورند. نوع فایل سیستم Client ها یکی از مواردی است که این سیستم به صورت هوشمند قابلیت شناسایی آن را دارد و یا نوع کارت شبکه و برخی از سخت‌افزارهای Client ها مواردی است که در این نوع از Discovery قرار می‌گیرد. همچنین این نوع از Discovery بهترین روش برای شناسایی اتوماتیک Virtual Machine, VMware vCenter, VMware vSphere ها می‌باشد.

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

Synthetic monitoring:

این روش جمع‌آوری اطلاعات یکی از قابلیت‌های فوق‌العاده‌ی زبیکس است که در نسخه‌ی ۵.۲ به این سیستم اضافه شده است. این قابلیت به شما این امکان را می‌دهد که بتوانید نسبت به مانیتورینگ یک فرآیند اقدام کرده و در طول یک فرآیند مانیتورینگ نسبت به شرایط مختلف تصمیم‌گیری‌های متفاوتی را انجام دهید. به عنوان مثال، امروزه بسیاری از سیستم‌های نرم‌افزاری به قابلیت API مجهز شده‌اند و از این طریق می‌توان از نرم‌افزاری مختلف اطلاعات متنوعی را دریافت کرد. در اکثر این سیستم‌ها، روش احراز هویت به صورت دو مرحله‌ای بوده و این کار مانیتورینگ را سخت می‌کند. با استفاده از Synthetic monitoring در زبیکس شما می‌توانید فرآیندهای چند مرحله ای را با یک آیتم مانیتور نمایید.

Prometheus Monitoring:

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

IoT Monitoring:

امروزه حضور فناوری اینترنت اشیاء در تمام صنایع و فعالیت‌های به صورت واضح قابل مشاهده است. کمتر کسی می‌تواند منکر تاثیرات شگرف این فناوری در زندگی روزمره‌ی انسان‌ها گردد. همزمان با رشد استفاده از این فناوری در دنیا، نیاز به کنترل زیرساخت‌ها و همچنین سنسورهای استفاده شده در این فناوری به وضوح حس می‌شود.

زبیکس از نسخه‌ی ۵.۲، پشتیبانی از پروتکل‌های حوزه‌ی اینترنت اشیاء مانند MQTT, Modbus را به صورت رسمی اعلام کرد. بنابراین از طریق این ویژگی، علاوه بر پوشش مانیتورینگ بسترهای اینترنت اشیاء، امکان مانیتورینگ صنایع هم امکان‌پذیر شده است.

Distributed Monitoring:

سیستم مانیتورینگ ZABBIX این قابلیت را دارد که به صورت متوسط ۱۰۰۰۰۰ دستگاه را به صورت هم‌زمان روی یک سرور مانیتور نماید. این عدد شاید برای بسیاری از سازمان‌ها کاملا مناسب باشد ولی برای برخی دیگر از سازمان‌ها نیاز به مانیتور شدن بیش  از ۱۰۰۰۰۰ دستگاه وجود دارد.

برای حل این مشکل ZABBIX اقدام به ارائه راه‌حلی تحت عنوان طراحی مجزا و لایه‌ای نموده است. در این طراحی به ازای مجموعه‌ای از Client ها یک سرور خاص (Proxy) در نظر گرفته می‌شود که اطلاعات را از Client ها دریافت کرده و پس از پردازش اولیه، آن را برای سرور مرکزی ارسال می‌نماید. در نتیجه با استفاده از این نوع طراحی می‌توان به هر میزان که نیاز باشد از سرورهای Proxy استفاده کرد و عملا نگرانی از بابت تعداد Client ها وجود نخواهد داشت.

zabbix 2

در این نوع طراحی علاوه بر امکان کنترل تعداد زیادی از تجهیزات و سرویس‌ها به صورت هم‌زمان، امکان دسته‌بندی مناطق مانیتورینگ و مدیریت هرچه بهتر آن‌ها بر اساس هر Proxy نیز به سیستم مانیتورینگ اضافه می‌شود.

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

لذا این امر علاوه بر کاهش پهنای‌باند مصرفی و نیز کاهش تعداد Connection هایی که در هر زمان باید از طریق سرور مرکزی کنترل گردد، این امکان را برای مدیران شبکه سازمان ایجاد می‌نماید که بتوانند از طریق اعمال سیاست‌های امنیتی خاص، نسبت به ارتقاء سطح امنیت بستر ارتباطی بین مرکز و شعبات اقدامات لازم را صورت دهند. از جمله به کارگیری Firewall  ها که باید پورت‌های مجاز در آن‌ها تعریف و به کار گرفته شود.

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

Trapping Mechanisms:

استفاده از روش Trapping جهت آگاهی از بروز یک رویداد در شبکه از مهمترین و به‌روز ترین روش‌های ممکن در Network Manager ها و سیستم‌های مانیتورینگ می‌باشد. استفاده از این روش باعث می‌شود بدون ارسال درخواست از سمت سرور ZABBIX، اطلاعات سیستم‌ها در صورت بروز هر گونه تغییر به سمت سرور ارسال گردد . این در حالیست که Load روی بستر شبکه به نسبت روش‌های سنتی به شدت کاهش یافته و امکان استفاده بهینه از پهنای باند شبکه محیا می‌شود. علاوه بر این استفاده از این روش در جمع آوری اطلاعات باعث می‌شود که Load سرور ZABBIX به شدت کاهش یافته و کارایی آن افزایش یابد.

سیستم مانیتورینگ ZABBIX به روش‌های مختلفی از جمله SNMP, Agent از این مکانیزم استفاده می‌نماید.

Polling Mechanisms:

زمانی که یکی از Client ها از طریق روش Trapping اعلام وقوع یک رویداد را به سمت سرور مانیتورینگ ارسال می‌کند سرور مانیتورینگ با توجه به گزارش ارسالی از سمت Client یک سری سوالات مرتبط با رویداد به وجود آمده را به صورت هوشمند به سمت Client ارسال می‌کند و اطلاعات بیشتری را جهت پردازش نهایی درخواست می‌نماید. این کار در سیستم ZABBIX از طریق روش Polling صورت می‌پذیرد. Polling هم مانند Trapping از روش‌های جمع‌آوری اطلاعات در سیستم‌های مانیتورینگ می‌باشد که در آن ابتدا درخواست اطلاعات جدید از سمت سرور ZABBIX به سمت Client ارسال شده و Client تغییرات رخ داده را در پاسخ ارسال می‌نماید.

High Performance Agent:

یکی از قابلیت‌های اصلی این سیستم مانیتورینگ استفاده از Agent های با کارایی بالا می‌باشد. به شکلی که هر کدام از این Agent ها این قابلیت را دارا می‌باشند داده‌های بسیار متنوع و کاربردی را جهت مانیتورینگ و کنترل Client ها به سمت سرور ارسال نمایند.

ویژگی مهم و منحصر به فرد این سیستم این است که به ازای تمام سیستم‌عامل‌ها Agent خاص آن سیستم‌عامل وجود داشته و هیچ گونه نگرانی از بابت تفاوت در سیستم‌عامل Client ها وجود ندارد. لذا این سیستم در سمت Client ها بر روی سیستم عامل‌های Windows, Linux, Unix, Solaris, FreeBSD, Open BSD ,OS X ,…  قابل اجرا می‌باشد.

zabbix3

وجود Agent   برای سیستم‌عامل‌های مختلف، این امکان را به مدیران IT  سازمان می‌دهد که به جای استفاده جزیره‌ای از سیستم‌های مانیتورینگ متفاوت، بتوانند با استفاده از سیستم مانیتورینگ ZABBIX به صورت یکجا تمام سیستم‌ها، تجهیزات و سرورهای خود را فارغ از اینکه از چه سیستم عاملی استفاده می‌نمایند، کنترل کرده و نظارت خاص بر روی هر یک از آن‌ها داشته باشند.

طراحی خاص هر Agent برای سیستم‌عامل‌ها، امکان مانیتورینگ خاص هر کدام از سیستم‌عامل‌ها را نیز برای مدیران IT  سازمان ایجاد می‌نماید. به عنوان مثال مانیتور کردن event log در سیستم‌عامل ویندوز، موردی است که خاص این سیستم‌عامل می‌باشد و سیستم‌های دیگر مکانیزم Log خاص خودشان را دارند.

علاوه بر این استفاده از Agent  های کاملا متنوع و کاربردی روی سیستم‌عامل‌های مختلف به ارتقاء سطح امنیت اطلاعات رد و بدل شده بین Client و Server کمک می‌کند. چرا که استفاده از روش سنتی دریافت اطلاعات نظیر SNMP V1,2 از لحاظ امنیتی دارای نقاط ضعف بسیاری می‌باشد که این امر عملا باعث شده است که بسیاری از سازمان‌ها ترجیح دهند از روش‌های دیگر برای جمع‌آوری اطلاعات استفاده نمایند.

هر Agent در سیستم مانیتورینگ ZABBIX می‌تواند آیتم‌های بسیار متنوعی را مانیتور کرده و برای سرور ZABBIX ارسال نماید. از جمله اطلاعات مربوط به فایل سیستم‌ها، وضعیت سرویس‌ها، وضعیت شبکه و کارایی آن، فایل‌ها، اطلاعات سخت‌افزاری و نرم‌افزاری و بسیاری موارد دیگر که به صورت Built-in درون هر کدام از Agent ها قرار دارد.

علاوه بر موارد ذکر شده در صورتی که آیتمی مد نظر یک سازمان باشد که قبلا امکان مانیتور کردن آن در Agent های ZABBIX پیاده سازی نشده باشد، یک ویژگی به نام User Parameter در سیستم مانیتورینگ ZABBIX وجود دارد که این ویژگی، امکان اضافه کردن آیتم مورد نظر را به کاربران می دهد به شکلی که می‌توانند آیتم مورد نظر را در کوتاه‌ترین زمان ممکن و از طریق Scripting و Programming با اکثر زبان‌های متداول برنامه‌نویسی مانند C,C++, Python, PHP, Perl, Shell, Java, PowerShell, C#, …   به سیستم مانیتورینگ ZABBIX اضافه نمایند.

لذا این ویژگی یکی از قابلیت‌های منحصربه‌فرد ZABBIX بوده به شکلی که قابلیت گسترش‌پذیری این نرم‌افزار را تا حد زیادی افزایش  داده است.

Agentless Monitoring:

علاوه بر پشتیبانی از Agent توسط سیستم مانیتورینگ ZABBIX، به علت اینکه گاهی ممکن است امکان استفاده از Agent روی تمام سیستم‎های یک سازمان به هر علتی مقدور نباشد، این سیستم تعداد زیادی از قابلیت‌های اصلی مانیتورینگ را به صورت Agent Less و بدون نیاز به Agent ارائه می‌دهد.

طراحی این سیستم به گونه‌ای است که می‌تواند بسیاری از سرویس‌های اصلی مانند web Server, FTP, SSH,SMTP, IMAP, POP و بسیاری از سرویس‌های خاص دیگر را بدون نیاز به Agent و یا دیگر روش‌های مانیتورینگ، کنترل نموده و نتیجه را تجزیه و تحلیل نماید.

External Check:

همانطور که در بخش Agentless Monitoring مطرح شد، گاهی اوقات امکان استفاده از Agent در برخی از شبکه‌ها و یا سازمان‌ها بر روی Client ها موجود نمی‌باشد. مشاهده فرمودید که برای رفع این مشکل یکی از راه حل‌های پیشنهادی ZABBIX استفاده از Agentless Monitoring است. اما Agentless Monitoring نیز محدودیت‌های خاص خودش را دارد. به شکلی که از این ویژگی فقط می‌توان برای سرویس‌هایی در شبکه استفاده کرد که پورت آن‌ها در شبکه توسط سیستم ZABBIX قابل شناسایی و دسترسی باشد.

اما گاهی نیاز داریم که اطلاعاتی را که قبلا با استفاده از Agent و بدون نیاز به دسترسی به پورت خاصی در شبکه می‌توانستیم مانیتور نماییم، این بار بدون استفاده از Agent به دست آوریم که در این حالت بهترین راه‌حل استفاده از ویژگی External Check سیستم مانیتورینگ ZABBIX می‌باشد.

این ویژگی به کاربران این امکان را می‌دهد که بتوانند از روی سرور مستقیما با دستگاه مقصد ارتباط برقرار نموده و بدون استفاده از Agent اقدام به دریافت اطلاعات از آن نماید.

Database Monitoring:

امروزه Database ها یکی از ستون‌های اصلی IT سازمان‌ها می‌باشند . به شکلی که کمتر سازمانی وجود دارد که حتی یک Database کوچک نداشته باشد این در حالیست که سازمان‌هایی نظیر بانک‌ها و یا سازمان‌های بزرگ دولتی و یا خصوصی از Database های بسیار بزرگ و پیچیده‌ای استفاده می‌نمایند که اطلاعاتی همچون اطلاعات مالی کارمندان، اطلاعات مالی پروژه‌ها، اطلاعات پرسنلی کارمندان، اطلاعات مهم مشتریان و … در خود نگه می‌دارند. با توجه به اهمیت این اطلاعات نیاز به کنترل و نظارت دائمی Database‌ها به شدت احساس می‌شود.

سیستم مانیتورینگ ZABBIX این امکان را برای سازمان ایجاد می‌نماید که علاوه بر کنترل در دسترس بودن Database چگونگی عملکرد آن را نیز تحت نظر داشته باشد. از اطلاعات کلی مربوط به کارایی پایگاه‌داده و سیستم‌عامل آن گرفته تا عملکرد یک Schema و یا حتی عملکرد یک Table در سیستم مانیتورینگ ZABBIX  قابل کنترل هستند.

پشتیبانی از قابلیت ODBC در سیستم مانیتورینگ ZABBIX به کاربران این سیستم این امکان را می‌دهد که بتوانند اطلاعات مورد نظر خود در رابطه با Database های مختلف را با جزییات بیشتری دریافت نمایند.

به عنوان مثال چک کردن Database queue و یا اینکه یک Database چه میزان از حافظه سیستم را اشغال نموده است. با استفاده از ODBC می‌توان تا حد مانیتور کردن یک رکورد خاص از یک Table و یا حتی یک Field خاص از یک رکورد به جزییات یک Database دسترسی داشت و آن را کنترل نمود.

بدین ترتیب و با یک طراحی مناسب، می‌توان نظارت و کنترل خوب و کاربردی روی داده‌های حساس سازمان که درون Database ذخیره شده‌اند داشت و احتمال آسیب‌های وارده از طرف کاربران و یا سیستم‌های مخرب را به حداقل رساند.

Oracle, Postgresql, Mysql, Sql Server, Mariadb,DB2 از جمله Database هایی هستند که ZABBIX  می‌تواند آن‌ها را مانیتور نماید.

Web Monitoring:

امروزه اهمیت نرم‌افزارهای تحت وب در سازمان‎های مختلف گاهی از اهمیت Database ها بالاتر است. Website ها، پورتال‌ها، ویکی‌ها و تمام نرم‌افزارهایی که در بستر وب سرویس‌هایی را ارائه می‌نمایند علاوه بر اینکه می‌توانند شامل اطلاعات مهم سازمان باشند به عنوان آبروی سازمان در دنیای مجازی به حساب می‌آیند. هیچ سازمانی نیست که اهمیت اعتبار و آبروی خود را به عنوان مهمترین سرمایه در نظر نداشته باشد.

سیستم مانیتورینگ ZABBIX این امکان را به مدیران NOC  و SOC یک سازمان می‌دهد که موارد مختلفی از جمله Response Time، سرعت Download و در دسترس‌بودن یک وب‌سایت را مورد نظارت و ارزیابی قرار دهند.

zabbix 4

ZABBIX   این امکان را به کاربران می‌دهد که بتوانند تک تک صفحات وب‌سایت خود را به صورت جداگانه کنترل نماید، تا جایی که می‌تواند برای کنترل صفحات وب‌سایت خود، سناریو تعریف کنند و حتی در صفحاتی که نیاز به Login دارند، با وارد کردن Username و  Password به آن صفحات وارد شده و وضعیت آن‌ها را تحلیل نماید.

JMX Monitoring:

ZABBIX از یک مولفه با نام Zabbix Java Gateway در سیستم خود پشتیبانی می‌کند که در نوع خود از اهمیت فراوانی برخوردار است. این ویژگی که به زبان Java نوشته شده و به ZABBIX اضافه شده است، امکان مانیتور کردن نرم‌افزارهای مبتنی بر Java را از طریق تکنولوژی JMX یا Java Management Extensions ایجاد می‌نماید.

بدین صورت که ZABBIX درخواست مورد نظر را از طریق ارسال JMX Counter مناسب به سمت ZABBIX Java Gateway  ارسال می‌نماید و ZABBIX Java Gateway  جواب‌ها را بدون نیاز به هیچ نرم‌افزار دیگری، از نرم‌افزارهای مبتنی بر Java دریافت کرده و به سمت سرور ارسال می‌نماید.

zabbix 5

Hardware Monitoring:

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

در نتیجه اطلاعاتی مانند درجه حرارت، سرعت فن، وضعیت هارد دیسک و … به راحتی و بدون نیاز به سیستم‌عامل قابل دریافت است. این ویژگی این امکان را به مدیران مانیتورینگ می‌دهد که حتی در مواقعی که سیستم‌عامل غیرفعال شده و یا خاموش است، اطلاعات مورد نیاز را از دستگاه مورد نظر دریافت کنند و حتی می‌توانند تحت شبکه و مستقل از سیستم‌عامل یک دستگاه را روشن و یا خاموش نمایند.

علاوه بر این امکان کنترل تجهیزات HP با استفاده از SIM به طور کامل در ZABBIX پشتیبانی شده است.

SNMP Monitoring:

استفاده از پروتکل SNMP جهت دریافت اطلاعات از Client ها، به عنوان یکی از عمومی ترین و پرکاربردترین روش‌های جمع آوری اطلاعات محسوب می‌شود. سیستم مانیتورینگ ZABBIX  تمام نسخه‌های پروتکل SNMP را به طور کامل پشتیبانی می‌کند. 

سیستم مانیتورینگ ZABBIX علاوه بر پشتیبانی کامل از SNMP v1,2، به طور کامل پروتکل SNMP v3  را پشتیبانی کرده و راه‌حل‌های ویژه‌ای را جهت مانیتورینگ در این بستر ارائه نموده است .

IT Services Monitoring:

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

بنابراین در مجموع استفاده از این ویژگی در ZABBIX قابلیت‌های زیر را برای کاربران این سیستم ایجاد می‌نماید:

  • توانایی مشاهده کلیه رخداد هایی که در زیرساخت عملیاتی در جریان است.
  • امکان تعریف شاخص های کلیدی کارایی KPI در جهت پایش و تحلیل سطح سرویس.
  • توانایی کنترل قابلیت زیرساخت در وضعیت مطلوب از طریق اعمال سیاست‌های دوره‌ای.
  • توانایی خودکارسازی فرآیند مدیریت زیرساخت در حال گسترش.
  • امکان ارائه گزارش‌های لحظه‌ای از اجزای متشکله سطح سرویس.
  • سنجش توان منابع سیستم در ساعات و یا روزهای قابل تنظیم و در فواصل زمانی قابل تنظیم.
  • امکان اندازه‌گیری میزان پاسخگویی سیستم‌ها بر مبنای توافقات سطح سرویس SLA .

Virtualization Monitoring:

مانیتورینگ مجازی سازی در ZABBIX این امکان را به کاربران این سیستم می‌دهد که بتوانند به صورت خودکار نسبت به کنترل و مانیتورینگ  Hypervisor و نیز ماشین‌های مجازی‌ای که در روی یک سرور مجازی راه‌اندازی شده‌اند اقدام نماید.

علاوه بر این ZABBIX با استفاده از قابلیت‌هایی مانند LLD  (Low Level Discovery) می تواند به صورت کاملا خودکار سرورهای مجازی را شناسایی کرده و از طریق آن نسبت به شناسایی ماشین‌های مجازی و اعمال تنظیمات مانیتورینگ بر روی هر یک از آنها اقدام نماید.

zabbix 6

بنابراین فقط کافیست که ابتدا Hypervisor به ZABBIX معرفی گردد و پس از آن ZABBIX تمام VM های موجود روی Hypervisor تعریف شده را به صورت خودکار شناسایی کرده و به سیستم مانیتورینگ اضافه می‌نماید.

محیط‌های مجازی سازی‌ای که تاکنون توسط ZABBIX  مانیتور می‌شوند عبارتند از VMware, Hyperv, kvm, Xen

WMI Monitoring:

یکی از بهترین روش‌ها برای کنترل سیستم‌عامل ویندوز و همچنین سرویس‌هایی که در بستر این سیستم‌عامل پیاده‌سازی شده‌اند، استفاده از WMI است. خوشبختانه سیستم مانیتورینگ ZABBIX قابلیت دریافت اطلاعات از سیستم‌های ویندوزی بر اساس WMI را به صورت کامل پشتیبانی می کند. علاوه براین استفاده از اطلاعات Perf Counter های ویندوز نیز در ZABBIX به صورت کامل پیاده سازی شده است.

Log Monitoring:

یکی از جنبه‌های مهم در کشف علل وقوع یک مشکل در یک سرور، رجوع به Log های آن سرور می‌باشد. اما کنترل مداوم فایل‌های Log توسط کارمندان یک سازمان، بسیار طاقت فرسا و یا حتی غیرممکن می‌باشد. علاوه بر این وقوع خطای انسانی در کنترل خط به خط فایل‌های Log که بعضا حجم آنها بسیار زیاد می‌باشد، امری اجتناب‌ناپذیر است.

سیستم مانیتورینگ ZABBIX این امکان را دارد که به صورت مداوم تمام فایل‌های Log مربوط به سرورهای مختلف در سازمان را بدون محدودیت در نوع سیستم‌عامل و یا روش نگارش فایل Log جمع‌آوری کرده و سپس نسبت به آنالیز و تحلیل آن اقدام نماید. با استفاده از این قابلیت مدیران یک سازمان می‌توانند بدون نگرانی از بابت کنترل فایل‌های Log به فعالیت‌های اصلی خود در سازمان بپردازند.

علاوه براین سیستم مانیتورینگ ZABBIX می‌تواند با ارائه گراف‌های آماری از Log های تحلیل شده، سرعت شناسایی علل بروز مشکل در سازمان را افزایش داده و از این طریق میزان خرابی ها را به حداقل رساند.

Custom Monitoring:

این قابلیت یکی از ویژگی‌های منحصربه‌فرد سیستم مانیتورینگ ZABBIX است که بر این اساس می‌توان طیف وسیعی از تجهیزات و سرویس‌های مختلف را در یک سازمان کنترل کرد.

با استفاده از این قابلیت کاربران سیستم مانیتورینگ ZABBIX می‌توانند بدون محدودیت در زبان برنامه‌نویسی نسبت به گسترش سیستم مانیتورینگ ZABBIX اقدام نمایند و از این طریق تجهیزات و سرویس‌های خاص خود را به سیستم مانیتورینگ ZABBIX  اضافه نمایند.

2_ هشدار وقوع یک رخداد:

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

مهمترین نکاتی که در زیر سیستم هشدار باید در نظر گرفته شود می‌توان به موارد زیر اشاره نمود:

          1-2  فعال بودن این زیر سیستم به خودی خود در یک سیستم مانیتورینگ بسیار مهم و قابل توجه است. چرا که اگر این زیر سیستم در اثر حجم زیاد فعالیت‌ها غیرفعال گردد عملا مدیران IT سازمان از وضعیت سرویس‌ها و تجهیزات تحت کنترل سیستم مانیتورینگ بی خبر بوده و در صورت بروز هرگونه رخداد در شبکه نمی‌توانند عکس‌العمل به موقع و مناسبی نسبت به آن رخداد داشته باشند.

          2-2 تنوع روش‌های اعلام هشدار و نیز امکان اعلام هشدار در زمان‌های قابل تعریف توسط مدیران IT سازمان یکی از قابلیت‌های اصلی این زیر سیستم می‌باشد که می‌تواند در عکس العمل به موقع مدیران و مسئولان IT سازمان در مواجهه با مشکلات به وجود آمده نقش اساسی را ایفا نماید.

سیستم مانیتورینگ ZABBIX  در زمان شناسایی یک رخداد از طریق روش‌های زیر سعی در اطلاع‌رسانی به موقع به مدیران مربوطه داشته و در زمان‌هایی کاملا انعطاف‌پذیر نسبت به ارسال پیام اقدام می‌نماید :

Web based Frontend:

سیستم مانیتورینگ ZABBIX به صورت پیش‌فرض از یک رابط گرافیکی تحت‌وب جهت اعلام بروز مشکل استفاده می‌نماید.

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

zabbix 7

در نهایت در این سیستم سعی شده که کاربران با مراجعه به این رابط گرافیکی بتوانند تمام اطلاعات مورد نیاز خود را جهت آگاهی از مشکل به وجود آمده در کمترین زمان و به راحت‌ترین شکل ممکن به دست آورند.

zabbix 8

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

علاوه بر این امکان Voice Alerting در حالت‌های مختلف امکان کنترل بی‌وقفه را برای کاربران این سیستم ایجاد می‌نماید به شکلی زمانی که کاربران از صفحه گرافیکی غافل شده‌اند با اجرای زنگ هشدار آن‌ها را از وقوع یک مشکل در سیستم با خبر می‌گرداند.

zabbix 9

علاوه بر این امکان ایجاد صفحات متعدد که حاوی اطلاعات مختلف می‌باشند یکی از امکانات ویژه این سیستم است که به کاربران اجازه می‌دهد صفحات خاص خودشان را طراحی نموده و اطلاعات مورد نیاز خودشان را براساس نوع فعالیتی که دارند، در اختیار داشته باشند.

Email:

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

یکی از مواردی که شاید در استفاده از این سیستم به نظر برسد امنیت اطلاعات و داده‌هایی است که از طریق ایمیل ارسال می‌گردد. طبیعتا این تهدید در زمان استفاده از سیستم‌های ایمیل عمومی می‌تواند افزایش یابد . لذا ساکو با راه‌اندازی سرویس ایمیل خاص هر سازمان سعی در افزایش سطح امنیت این دسته از اطلاعات مهم سازمان داشته و نسبت به برطرف کردن این مشکل اقدام می‌نماید.

SMS:

یکی از بهترین راه حل ها جهت ارتباط با کاربران استفاده از SMS است. چرا که امروزه برای دسترسی به افراد مختلف استفاده از قابلیت‌های گوش‌های موبایل به عنوان یکی از بهترین راهکارها مطرح می‌شود.

از این رو سیستم مانیتورینگ ZABBIX در جهت افزایش سرعت و دقت انتقال اطلاعات در رابطه با مشکل به وجود آمده نسبت راه‌اندازی سیستم اعلام هشدار از طریق SMS اقدامات خوبی را صورت داده است. در این سیستم می‌توان به روش‌های مختلف از امکان ارسال SMS استفاده نمود.

یکی از این روش‌ها استفاده از مودم‌های GSM است که به سازمان این امکان را می‌دهد که بتوانند از طریق بستر SMS محلی نسبت به ارسال پیام هشدار برای کاربران خود اقدام نمایند.

روش دیگری که در سیستم مانیتورینگ ZABBIX تعبیه شده است، قابلیت استفاده از سرویس‌هایی است که SMS  را به صورت وب سرویس ارائه می‌نمایند.

روش دیگری که ارسال SMS را برای کاربران این سیستم مانیتورینگ امکان پذیر می‌نماید استفاده از سرویس‌های EZ Texting می‌باشد که به عنوان روشی دیگر در سیستم مانیتورینگ ZABBIX امکان استفاده از آن تعبیه شده است.

Jabber:

در سال 1998 یک تکنولوژی بسیار کاربردی جهت ارسال و دریافت پیام تحت عنوان Jabber ایجاد شد. به تدریج قابلیت‌های این سیستم در انتقال پیام‌های شرکت‌های بزرگی نظیر Google, Cisco, Microsoft, Facebook, AOL و بسیاری شرکت های دیگر را برای استفاده از این تکنولوژی در سیستم‌های انتقال پیام ترغیب نمود. البته امروزه این تکنولوژی تحت عنوان پروتکل XMPP نیز در دسترس می‌باشد.

استفاده از این پروتکل در بسیاری از نرم‌افزارهای IM این امکان را برای کاربران ایجاد می‌نماید که بتوانند به صورت Online با همدیگر در ارتباط بوده و پیام‌های خود را ارسال نمایند.

سیستم مانیتورینگ ZABBIX از این تکنولوژی جهت اعلام سریع و به موقع هشدار به کاربران مختلف استفاده می‌نماید. در واقع در این روش سیستم ZABBIX  می‌تواند با کاربرانی که به صورت Online در حال استفاده از نرم‌افزار Instant Messenger خود می‌باشند ارتباط برقرار کرده و اطلاعات مشکل به وجود آمده در شبکه را برای آنان ارسال نماید. در نتیجه این روش در کنار روش‌های دیگری که در بحث اعلام هشدار مطرح شد، یکی از کاربردی‌ترین روش‌هایی است که در ارتقاء سرعت و دقت اعلام خطر نقش مهمی را ایفا می‌نماید.

نظیر آنچه در استفاده از ایمیل جهت ارسال پیام‌ها مطرح شد، در این حالت نیز قابل بحث است. بدین معنا که استفاده از سرویس‌های (XMPP) Jabber  که به صورت عمومی در اختیار کاربران قرار گرفته است، تهدیدهای امنیتی مهمی را به سازمان تحمیل می‌کند و طبیعتا سازمان‌ها ارسال اطلاعات بر روی بستر عمومی ارسال پیام را هرگز نخواهند پذیرفت.

در این حالت نیز جهت برطرف سازی این مشکل، متخصصین ساکو  نسبت به راه اندازی سیستم Instant Messaging  خاص هر سازمان اقدام نموده که در این حالت نیاز به استفاده از سیستم‌های عمومی انتقال پیام برای سازمان‌های مختلف مرتفع خواهد شد.

Ticket:

بسیاری از سازمان‌ها جهت افزایش خدمات پشتیبانی به کاربران مختلف و یا مشتریان خود، از نرم‌افزارهای Ticketing استفاده می‌نمایند .

بنابراین یکی دیگر از روش های متنوع سیستم مانیتورینگ ZABBIX در ارسال پیام به سمت تیم پشتیبانی استفاده از سیستم Ticketing و ارسال پیام هشدار از طریق Ticket می باشد. بدین معنا که ZABBIX این قابلیت را دارد که در زمان شناسایی یک مشکل، آنرا از طریق ثبت Ticket در سیستم Help Desk به اطلاع تیم پشتیبانی برساند

Custom Alert:

در کنار تمام روش‌های ذکر شده جهت ارسال هشدار، کاربران می‌توانند روش سفارشی خودشان را جهت ارسال هشدار ایجاد کرده و به ZABBIX اضافه نمایند. در این حالت نیز هیچ‌گونه محدودیتی در نوع زبان برنامه‌نویسی و یا رسانه‌ای که جهت ارسال هشدار در نظر گرفته شده است، وجود ندارد.

همانطور که مشاهده می‌فرمایید سیستم مانیتورینگ ZABBIX سعی کرده است با استفاده از روش‌های بسیار متنوع و کاربردی درصد احتمال غافل شدن از یک مشکل را به حداقل رسانده و امکان انتخاب از بین سرویس‌های مختلف را برای کاربران مختلف ایجاد نماید.

علاوه بر اینکه می‌توان به صورت تکی از هر کدام از روش‌های ذکر شده استفاده نمود، این امکان در سیستم مانیتورینگ ZABBIX وجود دارد که به صورت ترکیبی از تمام روش‌ها در کنار هم استفاده نمود.

برای این منظور ZABBIX از قابلیتی به نام Flexible Notification استفاده می‌نماید که یکی از امکانات ویژه و کاربردی ZABBIX می‌باشد .

Flexible Notification:

این سیستم در کنار روش‌های مختلف اطلاع رسانی که ذکر شد از یک سیستم Scheduling بسیار کارآمد بهره می‌گیرد که از طریق آن می‌توان برای اطلاع رسانی در زمان‌های مختلف از روش‌های مختلف استفاده کرد. بدین معنا که می‌توان به ازای هر کاربر مشخص کرد از چه روش و یا روش‌هایی و در چه بازه‌های زمانی‌ای جهت انتقال پیام استفاده گردد. شکل زیر یک نمونه از Scheduling در سیستم ZABBIX می‌باشد:

zabbix 10

همانطور که در شکل فوق نشان داده شده است، تمام روش‌های ذکر شده می‌توانند به شکل کاملا مدیریت شده در کنار هم و در بازه‌های زمانی از پیش تعریف شده توسط مدیر سیستم نسبت به اعلام هشدار به کار گرفته شوند. تعداد مراحل و نیز بازه‌های زمانی هریک از روش‌ها کاملا قابل تعریف توسط مدیر سیستم بوده که این امر در افزایش سرعت پاسخگویی نقش بسزایی را ایفا می‌نماید.

3_ عکس‌العمل هوشمندانه:

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

استفاده از این قابلیت در سیستم‌های مانیتورینگ می‌تواند توانایی این سیستم‌ها را به شدت افزایش داده و در بسیاری مواقع سرعت، دقت و کارایی فعالیت‌های مورد نیاز جهت کنترل و یا رفع مشکلات را افزایش دهد.

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

در بخش قبل تمام روش های SMS, Jabber, Email, Ticket  جهت اعلام هشدار به کاربران به طور کامل پوشش داده شده است، اما به هر علت ممکن است هیچکدام از مدیران مربوطه در دسترس نبوده و مشکل به وجود آمده همچنان به قوت خود باقی باشد. در این حالت ZABBIX  یک راه‌حل فوق‌العاده دارد و آن این است که سرور مانیتورینگ از طریق شبکه با سیستمی که دچار مشکل شده ارتباط برقرار کرده و روی آن یک سری دستورات را اجرا می‌نماید که می‌تواند در نهایت منجر به رفع مشکل گردد. عملا از این طریق می‌توان با طراحی مناسب به یک راه حل کارآمد در جهت شناسایی مشکل و اطلاع‌رسانی به موقع رسید.

علاوه بر این همانطور که در بخش Low Level Discovery هم مطرح شد  این سیستم توانایی شناسایی خودکار سیستم‌عامل مقصد را داشته و می‌تواند به صورت خودکار تمام تنظیمات مورد نیاز جهت آن سیستم‌عامل را انجام دهد.

4_ گزارش:

نگهداری اطلاعات به صورت طولانی‌مدت و نیز استفاده از بسترهای امن و بهینه جهت نگهداری اطلاعات از دیگر بخش‌های سیستم مانیتورینگ ZABBIX می‌باشد. ساختار طراحی‌شده برای پایگاه‌داده این سیستم این امکان را به کاربران این سیستم مانیتورینگ داده است که بتوانند اطلاعات جمع‌آوری شده از شبکه و تجهیزات و سرویس‌های سازمان را در بازه‌های زمانی بسیار طولانی‌مدت ذخیره کرده و علاوه بر آن امکان گزارش‌گیری با روش‌های بسیار متنوع جهت بررسی‌های دقیق‌تر را داشته باشند.

zabbix 11

در سیستم مانیتورینگ ZABBIX  می‌توان گزارش‌های بسیار متنوعی را تولید کرد و یا اینکه از گزارش‌ها و نمودارهای آماده سیستم استفاده نمود. در این گزارش‌ها امکان مقایسه دو یا چند مورد بر اساس شروط مختلف با هم امکان‌پذیر خواهد بود. این ویژگی برای کاربران سیستم این توانایی را ایجاد می‌نماید که بتوانند گزارش‌های کاربردی و کاملی را جهت ارائه  به مدیران سطوح بالاتر ایجاد نمایند.

zabbix 12

ارائه گزارش در قالب گراف‌ها، نقشه‌ها و داشبوردهای سفارشی از دیگر امکانات ZABBIX می‌باشد.

zabbix 13

علاوه بر موارد ذکر شده یکی از مهمترین گزارشاتی که یک سیستم مانیتورینگ باید بتواند برای مدیران سطوح بالاتر پیاده‌سازی نماید، نحوه فعالیت کاربران این سیستم می‌باشد. بدین معنی که باید به صورت کلی تعیین گردد که هر کاربر در چه بازه زمانی چه فعالیت‌هایی در سیستم مانیتورینگ انجام داده و در صورت بروز مشکل مسئولیت با چه کسی بوده است. برای این منظور سیستم مانیتورینگ ZABBIX از یک زیر سیستم احراز هویت استفاده می‌نماید که در آن پس از تعریف گروه‌ها و کاربران گروه‌ها، سطوح دسترسی برای آنها تعریف شده و پس از آن فعالیت‌های این کاربران در سیستم Log  می‌شود.

zabbix 14

Secure User Authentication:

در جهت ارتقا سطح امنیت سیستم مانیتورینگ، به عنوان یکی از حساس‌ترین سیستم‌های موجود در NOC و  Datacenter ها، کنترل کاربران مختلف باید با حساسیت بسیار زیادی صورت پذیرد. در سیستم مانیتورینگ ZABBIX سعی شده تا تمام آسیب‌پذیری‌های ممکن که می‌تواند راهی را جهت نفو‌ذ به سیستم برای کاربران مخرب باز کند کنترل شده و حتی گزارش حرکات مشکوک به مدیر سیستم ارسال گردد.

یکی از ویژگی‌های امنیتی که در این سیستم لحاظ شده است مربوط به بخش Login کاربران می‌باشد که از طریق Lockout Policy امکان حملاتی مانند Brute Force, Dictionary Attack را به صفر رسانده است. بدین شکل که در صورتی که کاربر مخرب به تعداد ۵ مرتبه اطلاعات مربوط به Login را اشتباه وارد نماید سیستم Login به صورت اتوماتیک قفل شده و ورود کاربران به مدت ۳۰ ثانیه امکان ناپذیر خواهد شد.

zabbix 15

آدرس IP و تعداد دفعات تلاش ناموفق برای ورود به سیستم پس از اولین Login توسط Admin در همان صفحه اول برای او نمایان خواهد شد .

Flexible User Permissions:

سیستم مانیتورینگ ZABBIX در جهت تقسیم‌بندی وظایف بین گروه‌های کاری مختلف، این قابلیت را دارد که بتوان در آن به تعداد نامحدود گروه‌های کاری و نیز کاربران مختلف ایجاد نمود. لذا این ویژگی برای سازمان‌های بزرگ که عملا دارای تعداد زیادی کاربر جهت کنترل سیستم‌های مانیتور شده هستند، بسیار با اهمیت و راه‌گشا می‌باشد.

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

در نتیجه مدیران NOC می‌توانند فعالیت‌های مانیتورینگ را به کاربر و یا گروهی از کاربران زیر مجموعه محول کرده و به نوعی تقسیم کار صورت پذیرد.

zabbix 16

علاوه بر این از طریق همین مکانیزم، ZABBIX می‌تواند گزارشات لازم مدیریتی را برای مدیران سطوح بالاتر ارائه نماید.

سایر ویژگی‌های ZABBIX:

مانیتورینگ داخلی ZABBIX:

سیستم مانیتورینگ ZABBIX جهت مانیتور کردن هرچه بهتر سیستم‌ها نیاز دارد تا خود به بهینه‌ترین حالت ممکن فعالیت کند. در همین خصوص ZABBIX از قابلیت مانیتور کردن تمامی Process‌های داخلی و Process های Data gathering خود برخوردار است.

Forecasting:

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

Anomaly Detection:

یکی از ویژگی‌های بسیار عالی که در زبیکس نسخه ی ۵.۲ اضافه شده است، قابلیت شناسایی شرایط ناهنجار می‌باشد. بسیاری از مواقع ممکن است با مشکلاتی مواجه شویم که قبلا حدود آستانه‌ی مناسبی برای آن لحاظ نشده است. زبیکس از طریق مقایسه رفتار یک KPI در بازه‌های زمانی متفاوت، می‌تواند وقوع یک ناهنجاری در سیستم را به صورت هوشمند شناسایی کرده و به کاربر اعلام نماید.

Percentile:

ZABBIX می‌تواند قابلیت آماری Percentile جهت تحلیل داده‌های دریافتی خود جهت در نتیجه ارائه ی گزارش های بهتر استفاده می‌کند.

Inventory:

با این قابلیت ZABBIX می‌توان تمامی مشخصات مربوط به سیستم‌های مانیتور شده را جمع آوری کرد و در زمان‌های مورد نیاز از آن‌ها برای جستجوی موارد درخواستی پرداخت.

نرم افزار موبایل:

ZABBIX دارای نرم‌افزار موبایل است تا بتوان در هر زمان از سیستم مانیتورینگ ZABBIX استفاده کرد.

امنیت سیستم مانیتورینگ ZABBIX:

یکی از موضوعاتی که همواره در تمام سیستم‌های نرم‌افزاری باید با حساسیت بالا مورد توجه قرار گیرد، امنیت آن سیستم می‌باشد. بر همین اساس در این بخش به بررسی وضعیت امنیت در سیستم مانیتورینگ ZABBIX از جنبه‌های مختلف پرداخته شده است.

در جهت بررسی دقیق و منطقی یک سیستم نرم‌افزاری ابهامات زیادی وجود دارد که یک سیستم نرم‌افزاری باید برای آنها پاسخ داشته باشد:

یک سیستم نرم افزاری بر روی چه بستری در حال کار می‌باشد؟

این سوال از این بابت اهمیت دارد که همیشه ارتقاء امنیت یک سیستم نرم‌افزاری فقط مربوط به خود آن سیستم نمی‌شود و اکثر اوقات ضعف در بخش‌های دیگر باعث بروز رخدادهای امنیتی می‌گردد.

سیستم مانیتورینگ ZABBIX  بر روی سیستم‌عامل‌هایی نصب و راه‌اندازی می‌شود که امروزه جهت ارتقاء سطح امنیت در بسیاری از سازمان‌ها و شرکت‌ها، طرح‌های بزرگی جهت مهاجرت بر این سیستم‌ها انجام می‌شود. لازم به یادآوری نیست که استفاده از سیستم‌های لینوکسی و یونیکسی، هم در ارتقاء کارایی سیستم و هم در ارتقاء سطح امنیت یک نرم‌افزار کاملا موثر می‌باشد.

امروزه استفاده از سیستم هایی نظیر FreeBSD و یا انواع لینوکس‌های مطرح دنیا، در بسیاری از شرکت های بزرگ نظیر Google, Yahoo, Facebook, Apple, Samsung, Oracle و بسیاری از شرکت‌های دیگر که شاید ذکر نام آنها خارج از حوصله این بخش باشد، موید این مطلب است که  جهت دستیابی به کارایی بیشتر و نیز امنیت بالاتر، استفاده از سیستم‌های ذکر شده اجتناب‌ناپذیر است.

به همین علت است که تولیدکنندگان سیستم مانیتورینگ ZABBIX  در طراحی خود، از ابتدا این سیستم را مطابق با استانداردهای امنیتی و کاربردی سیستم‌های Open source و نیز سیستم‌عامل‌های امن تولید کرده و در حال توسعه آن می‌باشند.

علاوه براین امکان استفاده از اکثر Database های بزرگ و معروف دنیا مانند Oracle, Postgresql, Mysql, به عنوان محل نگهداری اطلاعات در ZABBIX را می‌توان به عنوان یکی از مهمترین مزایای این سیستم در زمینه امنیت و نیز کارایی این سیستم دانست.

مزایای یک سیستم Open Source نسبت به سیستم‌های Close Source چیست؟

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

وجود Rootkit ها و یا کد‌های مخرب و یا جاسوس در یک نرم‌افزار زمانی می‌تواند موثر واقع گردد که قابل پیگیری و پایش نباشد، لذا از این منظر نیز سیستم مانیتورینگ ZABBIX به عنوان یکی از نرم‌افزارهایی که با استانداردهای Open Source ارائه شده است، از لحاظ امنیت اطلاعات، درجه اطمینان بالاتری را به خود اختصاص می‌دهد.

یک سیستم نرم‌افزاری توسط چه گروهی از کاربران و در چه وسعتی در حال استفاده می‌باشد؟

اینکه یک سیستم نرم‌افزاری توسط چه گروهی از کاربران و در چه محدوده‌ای در حال استفاده می‌باشد، نیز یکی دیگر از جنبه‌های مهم در تعیین سطح امنیت یک سیستم می‌باشد.

طبیعتا نرم‌افزاری که به صورت جهانی و در اکثر کشورهای دنیا در حال استفاده می‌باشد، علاوه بر کارایی، از لحاظ وجود مشکلات امنیتی با محک‌های جدی‌تری روبه‌رو است که این در تکامل لحظه به لحظه یک نرم‌افزار بسیار موثر است.

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

در نتیجه روزانه حجم وسیعی از مشکلات امنیتی روز دنیا توسط متخصصین و توسعه دهندگان این سیستم بررسی شده و راه‌حل‌های مناسب جهت رفع آن مشکل ارائه می‌گردد که این مورد در افزایش ضریب امنیت در ZABBIX بسیار تاثیرگذار بوده است.

آیا ارتباطات بین اجزای مختلف سیستم مانیتورینگ ZABBIX امن است؟

تمامی ارتباطات بین اجزای سیستم مانیتورینگ ZABBIX یعنی ارتباط بین سرور  ZABBIX با ‌Proxy‌ها، Agent‌ها و همین طور دستورات (Command-line) رمزگذاری می‌شود تا باعث محافظت از Data و عدم از دست رفتن آن شود. همچنین امکان احراز هویت بین مولفه‌های مختلف در ZABBIX فراهم شده است. اجزایی که Certificate معتبر و یا  Pre-shared Key  دارند، می‌توانند از امکان احراز هویت در ZABBIX استفاده نمایند. احراز هویت در ZABBIX به صورت متقابل انجام می‌شود، درست مانند زمانی که Agent با سرور ZABBIX ارتباط برقرار می‌کند و Certificate آن توسط سرور بررسی می‌شود، Agent هم می‌تواند به گونه‌ای تنظیم شود که صادرکننده Certificate سرور و موضوع آن را بررسی کند.

اطلاعات محرمانه در زبیکس چگونه نگهداری می‌شود؟

نگهداری اطلاعات محرمانه در زبیکس در دو سطح امکان پذیر است. سطح اول نگهداری اطلاعات محرمانه در زبیکس به صورت رمز شده می‌باشد. در این حالت اطلاعاتی که نباید توسط کاربران دیگر مشاهده شود، رمز شده و در رابط گرافیکی زبیکس امکان مشاهده‌ی آن وجود ندارد.

در سطح دوم این قابلیت در زبیکس وجود دارد که به سیستم‌های طراحی‌شده برای نگهداری اطلاعات محرمانه مانند Hashi Corp vault   متصل شده و اطلاعات محرمانه مورد نیاز خود را از آنها استعلام کرده و استفاده نماید. در این حالت اطلاعات محرمانه در زبیکس نگهداری نشده و امکان نشت این اطلاعات بسیار کاهش می‌یابد.

جمع بندی :

سیستم‌های مانیتورینگ یکی از ارکان اصلی NOC ها و حتی SOC ها می‌باشند. افزایش تعداد دستگاه‌های تحت شبکه و لزوم نظارت کارآمد بر این دستگاه‌ها، نیاز به استفاده از ابزارهای قدرتمند مانیتورینگ را روز به روز افزایش داده است. بر همین اساس است که امروزه بسیاری از استانداردهای امنیتی و نیز استانداردهای مربوط به طراحی و نگهداری شبکه، استفاده از سیستم‌های کنترلی نظیر سیستم‌های مانیتورینگ را به عنوان بخشی از الزامات خود در نظر گرفته‌اند.

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

سیستم مانیتورینگ ZABBIX  به عنوان یک سیستم مانیتورینگ Enterprise می‌تواند به صورت متمرکز در شبکه‌های بسیار گسترده مانند بانک‌ها که دارای شعب بسیار در تمام کشور می‌باشند و یا سازمان‌های بزرگ با تعداد سیستم‌های بسیار زیاد، تمام دستگاه‌های تحت شبکه را در پوشش مانیتورینگ خود قرار دهد و علاوه بر کنترل Availability, Performance در برخی از موارد دستگاه‌ها را از لحاظ امنیت اطلاعات نیز کنترل نماید (Security Monitoring). در این مستند تنها به بخشی از مهمترین ویژگی‌های این سیستم اشاره شد و البته توضیح تمام ویژگی‌ها و قابلیت‌های این سیستم جامع مانیتورینگ خارج از حوصله این مستند می‌باشد.