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

زبیکس (Zabbix) ؟زبیکس توسط Alexei Vladishev ایجاد و به دنیای OpenSource معرفی شد و توسط کمپانی Zabbix SIA پشتیبانی میشود یک نرم‌افزار متن باز برای مانیتورینگ شبکه‌ها و نرم‌افزارها در سطح سازمانی (Enterprise) است که این نرم‌افزار برای پایش و تشخیص وضعیت سرویس‌های شبکه‌ها، سرورها و دیگر سخت افزارهای شبکه طراحی شده است. زبیکس از MySQL ، PostgreSQL ، SQLite ، Oracle و IBM DB2 برای ذخیره سازی داده‌ها پشتیبانی میکند. برنامه نویسی سمت سرور از زبان C بهره میبرد و برنامه نویسی سمت کاربری آن از زبان PHP استفاده می کند .ه این نرم‌افزار برای پایش و تشخیص وضعیت سرویس‌های شبکه‌ها، سرورها و دیگر سخت افزارهای شبکه طراحی شده است. زبیکس از MySQL ، PostgreSQL ، SQLite ، Oracle و IBM DB2 برای ذخیره سازی داده‌ها پشتیبانی میکند. برنامه نویسی سمت سرور از زبان C بهره میبرد و برنامه نویسی سمت کاربری آن از زبان PHP استفاده می کند .ZABBIX یک نرم‌افزار عالی در سطح سازمانی است که برای مانیتورینگ دسترسی و کارایی زیرساخت‌های IT به کار می‌رود. با ZABBIX تقریبا هیچ محدودیتی در جمع آوری اطلاعات از شبکه وجود ندارد. سیستم مانیتورینگ شبکه ZABBIX یک سرویس مانیتورینگ کارآمد است، به طوری که می‌تواند در لحظه ده‌ها هزار سرور، ماشین مجازی، و تجهیزات شبکه را به طور هم‌زمان مانیتور کند.همراه با ذخیره سازی داده‌ها، ویژگی‌های نمایشی و گرافیکی (مانند نقشه‌ها، گراف‌ها، نمایش‌ها و …) راه‌های بسیار انعطاف پذیری با هدف آنالیز و هشدار را در اختیار می‌گذارد. می‌توانید در داده‌های دریافتی محدودیتی را تنظیم کنید و به محض اینکه از حدود این محدودیت‌ها رد شد، ZABBIX می‌تواند با ایمیل مدیر شبکه را از وقوع این رویداد مطلع سازد.?سیستم مانیتورینگ شبکه ZABBIX یکی از قویترین و شناخته شده ترین سیستم‌های مانیتورینگ در دنیا می‌باشد که از سال ۲۰۰۱ اولین نسخه آن به بازار عرضه شده و تا امروز به عنوان یکی از سیستم‌های پیشرو در صنعت مانیتورینگ شبکه و نرم افزارها، نسخه‌های بسیاری را روانه بازار نموده است.یکی از مهمترین مشخصات ZABBIX، متن باز بودن آن است که باعث شده تا اطمینان کاربران به خصوص کاربرانی که دارای اطلاعات حساس در سازمان خود می‌باشند به این سیستم افزایش یابد.زبیکس در ورژن های مختلفی به بازار عرضه شد که میتوان به نسخه های release شده زیر اشاره کرد :zabbix v1.8zabbix v2zabbix v2.4zabbix v3zabbix v3.2zabbix v3.4zabbix v4محیط و سربرگ های زبیکس :در تب Monitoring همه آن طلاعاتی که توسط زبیکس بصورت ویزوالی آماده شده است وجود دارد . مانند اطلاعات ردیفی – گراف – نقشه و غیره.در تب Inventory که سیستم مدیریت موجودی نام دارد و می توان یک نمایه کلی از هرچیز را با امکان دریافت اطلاعات کامل تر داشتدر قسمت Reports می توانیم گزارش های customize‌ شده مانند وضعیت زبیکس – گزارش های در دسترس بودن و یا Triggers top 100 را داشت .آیتم بعدی Configuration نام دارد که شامل configuration settings می باشد و برای کانفیگ نمودن ستینگ های hosts, host groups, templates, actions, maps و غیره استفاده می گردد . و فقط ادمین و سوپر ادمین می توانند این آپشن را ببینند .آخرین منو Administration نام دارد که برای توابع مدیریتی زبیکس مانند ایجاد یوزر و یا media types یا authentication و غیره استفاده می شود و فقط سوپر ادمین می تواند این گزینه را ببیند .?در این بخش قصد داریم تا به اصلی ترین ویژگی های زبیکس بپردازیم :یکی از مهمترین و اصلی ترین مباحث زبیکس ” جمع آوری داده ” می باشد که از طریق پرتکل های ارتباطی می توان به اطلاعات مورد نظر دست یافت در جمع آوری اطلاعات مباحث زیر مطرح هست که به توضیح برخی از Concept های آن میپردازیم : Data gatheringavailability and performance checks (چک کردن در دسترس یودن و عملکرد) support for SNMP (both trapping and polling), IPMI, JMX, VMware monitoring (پشتیبانی از پرتکل های معروف) از طریق پرتکل های ارتباطی مانند SNMP که دارای ورژن های ۱٫۲c.3 میباشد میتواند از device های شبکه مانند روترهای شبکه / مجازی ساز ها مانند ESXIvSphere / دستگاه های پشتیبانی UPS و . . . دریافت اطلاعات داشتSNMP :SNMP V1 ) که این ورژن Expire شده و مورد استفاده قرار نمیگیردSNMP V2C ) این ورژن با Community (در واقع پسوردی هست مه تا NMS آن را نداشته باشد نمیتواند با آن کار کند )کار میکند که خود به دو قسمت public و private تقسیم میشودNMS Server : سروری است که میتواند با پرتکل های ارتباطی دستگاه های شبکه را مدیریت کند و در راس کار قرار دارد?SNMP V3 ) ما معمولا از این ورژن استفاده نمیکنیم چون برای موارد خاص مورد استفادر قرار میگیردSNMP Authentication(UserName/Password , hash , md5 , SHA و . . .)SNMP Encryption(Data , AES , DES , 3DES و . . . )SNMP View(ساختار را بر اساس Tree نمایش میدهد ۱۲۳۴۵۶ که مثلا برای دسترسی به شاخه ۶ به آن اشاره میکند )JMX :با این پروتکل ارتباطی میتوان APP های سمن جاوا را مانیتور کرد بعد از نسخه ۲ یک قابلیت جدیدی که به زبان جاوا نوشته شده ، به نام Zabbix Java Gateway را اضافه کرده که امکان مانیتور کردن نرم افزارهای مبتنی بر Java را با استفاده از JMX (Java Management Extensions) ایجاد مینماید و Zabbix درخواست مورد نظر را از طریق ارسال JMX Counter مناسب به سمت Zabbix Java Gateway ارسال مینماید و Zabbix Java Gateway جواب ها را بدون نیاز به هیچ نرم افزار دیگری از نرم افزار های مبتنی بر Java دریافت کرده و به سمت سرور ارسال می نماید ، که دارای اهمیت زیادی میباشد.IPMI :با این پروتکی میتوان از راه دور تجهیزات شبکه را مانیتور کردAgent :یک نرم افزار است که روی سیستم میشند و با zabbix ارتباط برقرار میکند که توسط خود zabbix نوشته شده است Agent اطلاعات لازم را جمع آوري مينمايد و آنها را به زبيكس براي پردازش بيشتر ارسال مي نمايد. و در صورت خطا در هر يك از منابع سيستمي زبيكس هشدار لازم را به ادمين سرور ارسال مي نمايد ZABBIX Agent ها به دليل استفاده از منابع سيستمي بسيار كارآمد براي جمع آوري اطلاعات آماري مي باشند.custom checks (چک کردن های سفارشی) gathering desired data at custom intervals performed by server/proxy and by agents Flexible threshold definitionsآستانه انعطاف پذیری :you can define very flexible problem thresholds, called triggers, referencing values from the backend database میتواند با تعریف بخش Trigger میتوان فعالیت های زبیکس را تعریف کرد که اگر برای هر یک ار تجهیزاتی که در حال مانیتور شدن هستند در مواقع بروزبرای ما ارسال وضعیت کند که بطور مثال اگر RAM یا قطعه ای Fail شد که در این جدول Disaster بدترین شرایط است .به جدول زیر دقت کنید :SEVERITYDEFINITIONCOLOURNot classifiedUnknown severity.GreyInformationFor information purposes.Light blueWarningBe warned.YellowAverageAverage problem.OrangeHighSomething important has happened.Light redDisasterDisaster. Financial losses, etc.Red Highly configurable alertingهشدار های قابل تنظیم :sending notifications can be customized for the escalation schedule, recipient, media type Notifications روشي در زبيكس براي آگاه ساختن كاربران درباره event هايي كه رخ مي دهند مي باشد . كه نوع اطلاع رساني را مي توان از طريق Administration | Notifications مشخص نمود كه چه چيزي و در چه زماني و از طريق چه مديايي به كاربر منتقل گردد. میتوانید مشخص کنید در زمان برنامه ریزی شده برای شما اعلانی را ارسال کند در قسمت media type میتواند مشخص کنید که هشدار ها را بر چه اساس برای شما ارسال کند ایمیل , پیامک و …notifications can be made meaningful and helpful using macro variables میتوانید در قسمت macro توسط macro نویسی تنظیمات مخصوص به خود را بنویسیدautomatic actions include remote commands Real-time graphingmonitored items are immediately graphed using the built-in graphing functionality وضعیت رسیده را بدون هیچ تاخیری در غالب یک گراف برای شما ترسیم میکندWeb monitoring capabilitiesZabbix can follow a path of simulated mouse clicks on a web site and check for functionality and response time زبیکس قادر خواهد بود که انواع دیتابیس ها SQL Server , MySQL , PostgreSQL , Oracle که اطلاعات مهمی مانند اطلاعات مشتریان ، امور مالی و مانیتور کردن سرعت دانلود و آپلود یا در دسترس بودن سایت ها ، سرورها ، فروشگاه ها و … که در ان نگهداری میشود را مانیتور کند.زبیکس حتی به مدیران سایت این امکان را میدهد که تمامی صفحات وب سایت را به صورت جداگانه مانیتور کرده و صفحاتی هم که احتیاج به لاگین کردن دارند با وارد نمودن Username وPassword وارد آن شده و وضعیت انجا را تحلیل کند.Extensive visualisation optionsability to create custom graphs that can combine multiple items into a single view network maps custom screens and slide shows for a dashboard-style overview reports high-level (business) view of monitored resources Historical data storagedata stored in a database configurable history built-in housekeeping procedure Easy configurationadd monitored devices as hosts hosts are picked up for monitoring, once in the database apply templates to monitored devices Use of templatesgrouping checks in templates templates can inherit other templates زمانی برای مانبیتور کردن Host های که ایجاد کردیم باید از Zabbix templates استفاده نماييم . Template ها مجموعه اي از ماهيت هايي مانندitems, triggers, screens و غيره می باشد كه همگي باهم در مورد يك و يا چندين Host خاص اعمال مي گردند. و در نتيجه باعث صرفه جويي در زمانكانفيگ و يا اعمال تغييرات لازم مي گردند. از طريق Configuration | Templates اعمال مي گردند .Network discoveryautomatic discovery of network devices agent auto registration discovery of file systems, network interfaces and SNMP OIDs Fast web interfacea web-based frontend in PHP accessible from anywhere you can click your way through audit log Zabbix APIZabbix API provides programmable interface to Zabbix for mass manipulations, 3rd party software integration and other purposes براي گسترش زبيكس مي توان از Zabbix API استفاده نمود . API از پروتكل Remote Procedure Call) RPC) استفاده مي نمايد و مي تواند آبجكت هايي مانند hosts ، templates, groups را ايجاد ، آپديت و يا fetch نمايند .Permissions systemsecure user authentication certain users can be limited to certain views Full featured and easily extensible agentdeployed on monitoring targets can be deployed on both Linux and Windows Binary daemonswritten in C, for performance and small memory footprint easily portable Ready for complex environmentsremote monitoring made easy by using a Zabbix proxy اين يكي از خصوصيات زبيكس مي باشد . Proxy باعث كارايي و در دسترس پذير بودن اطلاعات از طرف سرور مي شود.ZABBIX Proxy يك روش ايده آل براي مانيتورينگ مركزي مكان هاي دور مخصوصا شبكه هايي كه ادمين محلي ندارند مي باشد.در اين حالت فقط پراكسي ها اطلاعات را جمع آوري مي نمايند .بنابراين پردازش ها روي سرورCPU و disk I/O كمتري را مصرف مي نمايند.منبع: وب سایت شخصی امید احمدیانی