نصب و تنظیم MRTG در لینوکس (ابزارهای مانیتورینگ )

MRTG ابزاریست پرکاربرد و رایگان جهت بدست آوردن میزان مصرفی ترافیک , CPU , RAM و مورد های بسیار دیگر.
MRTG میزان مصرف را بصورت صفحات وب همراه با عکس هایی با فرمت PNG ایجاد می کند.
از MRTG می توان برای مانیتورینگ اکثر سخت افزارهای شبکه با قابلیت SNMP و تقریبا تمامی سیستم عامل ها بهره گرفت.
در این آموزش به شیوه نصب و تنظیم MRTG در لینوکس های بر پایه دبین و ردهت می پردازیم.

 

نصب MRTG و بسته های مورد نیاز در دبین :

 

PersianAdmins:#apt-get install   apache2   mrtg
 

نصب MRTG و بسته های مورد نیاز در ردهت :
PersianAdmins:#yum install   httpd*   mrtg

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

۱-مایکروسافت
همانند هر سرویس ویندوز دیگر به آسانی قابل انجام است, کافیست به

Computer management==>Services and Aplications==>Services


بروید و سرویس SNMP را فعال و Community مورد نظر با اجازه دسترسی لازم که در اینجا Read only می باشد را تنظیم کنید.
به شکل زیر توجه کنید:

برای مشاهده در سایز واقعی بر روی عکس کلیک کنید

۲-سیسکو

config term
 snmp-server community public ro 15
 access-list 15 permit X.X.X.X(ip-mrtg)
 

۳-لینوکس
الف-نصب در دبین

PersianAdmins:#apt-get  install  snmp  snmpd
 
ب-نصب در ردهت

*PersianAdmins:#yum  install  net-snmp

حال تغییرات زیر را در فایل etc/snmp/snmpd.conf/ انجام دهید :
قبل از هر چیز از یک کپی از فایل تهیه می کنیم تا در صورت نیاز از آن استفاده کنیم

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.default
 
سپس این خطوط را پیدا کرده

com2sec paranoid default public
#com2sec readonly default public
#com2sec readwrite default private
وبه این شکل تغییر دهید
#com2sec paranoid default public
com2sec readonly 127.0.0.1 public
#com2sec readwrite default private

و در آخر سرویس را مجدد راه اندازی کنید
PersianAdmins:#/etc/init.d/snmpd   restart
برای تست درست بودن تنظیمات مثلا بر روی روتر سیسکو بدین شکل عمل می کنیم :

PersianAdmins:#snmpwalk -v1 -c public 192.168.0.1

 

دایرکتوری که خروجی فایل های وب MRTG در آن قرار می گیرد را می سازیم:

PersianAdmins:#mkdir   /var/www/mrtg
 
تنظیم MRTG :
در حالت پیش فرض تنظیمات MRTG را در فایل etc/mrtg.cfg/ انجام می دهیم ولی شما می توانید از هر فایل دیگری با هر نامی استفاده کنید.
فرض کنید می خواهید ترافیک اینترفیس های روتر را آنالیز کنید و نموداری از میزان مصرف شبکه خود بدست آورید , برای این هدف بدین شکل عمل می کنیم :

PersianAdmins:#cfgmaker 
 public@192.168.۰.۱ --global 'workdir:/var/www/mrtg' --output /etc/mrtg.cfg
با استفاده از این دستور تنظیمات بصورت خودکار صورت می پذیرد و از این روش برای بدست آوردن نمودار مصرف اینترفیس ها در هر دستگاه و سیستم عاملی میتوان استفاده کرد.

دستور زیر را اجرا کنید و در صورت نمایش خطا , آنرا چندین مرتبه اجرا کنید:

PersianAdmins:#/usr/bin/mrtg  /etc/mrtg.cfg 
توجه داشته باشید که اگر متغیر LANG بر روی UTF-8 تنظیم شده است باید از دستور زیر استفاده کنید :

PersianAdmins:#env LANG=C /usr/bin/mrtg /etc/mrtg.cfg
نکته :
با استفاده از دستور export می توانید متغیرهای محیطی را مشاهده کنید.

حال فایل index را با این دستور ایجاد می کنیم :

PersianAdmins:#indexmaker --columns=1 /etc/mrtg.cfg > /var/www/mrtg/index.html
در صورتیکه از فایلی بجز etc/mrtg.cfg/ استفاده می کنید , می بایست این تنظیمات را در cron انجام دهید تا بروررسانی صورت پذیرد :


PersianAdmins:#nano /etc/cron.d/mrtg 

۰/۵  *  *  *  *  root env LANG=C /usr/bin/mrtg /etc/mrtg/other-file.cfg

از MRTG برای مانیتورینگ موردهای بسیاری می توان استفاده کرد.برای مثال با اعمال تنظیمات زیر می توانید لود CPU روتر سیسکو خود را بدست آورید :

# Router CPU load %
Target[cpu.1]:1.3.6.1.4.1.9.2.1.58.0&1.3.6.1.4.1.9.2.1.58.0: public@192.168.0.1 public@192.168.۰.۱
RouterUptime[cpu.1]: public@192.168.0.1 public@192.168.0.1
MaxBytes[cpu.1]: 100
Title[cpu.1]: CPU LOAD
PageTop[cpu.1]: <H1>CPU Load %</H1>
Unscaled[cpu.1]: ymwd
ShortLegend[cpu.1]: %
XSize[cpu.1]: 380
YSize[cpu.1]: 100
YLegend[cpu.1]: CPU Utilization
Legend1[cpu.1]: CPU Utilization in % (Load)
Legend2[cpu.1]: CPU Utilization in % (Load)
Legend3[cpu.1]:
Legend4[cpu.1]:
LegendI[cpu.1]:
LegendO[cpu.1]:  Usage
Options[cpu.1]: gauge
برای CPU در دبین و آبانتو :
Target[server.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:public@localhost + ssCpuRawSystem.0&ssCpuRawSystem.0:public@localhost + ssCpuRawNice.0&ssCpuRawNice.0:public@localhost
Title[server.cpu]: Server CPU Load
PageTop[server.cpu]: < H1 >CPU Load – System, User and Nice Processes< /H1 >
MaxBytes[server.cpu]: 100
ShortLegend[server.cpu]: %
YLegend[server.cpu]: CPU Utilization
Legend1[server.cpu]: Current CPU percentage load
LegendI[server.cpu]: Used
LegendO[server.cpu]:
Options[server.cpu]: growright,nopercent
Unscaled[server.cpu]: ymwd

برای RAM :
Target[localhost.mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.6.0:public@localhost
PageTop[localhost.mem]:Free Memory
WorkDir: /var/www/mrtg/memory
Options[localhost.mem]: nopercent,growright,gauge,noinfo
Title[localhost.mem]: Free Memory
MaxBytes[localhost.mem]: 1000000
kMG[localhost.mem]: k,M,G,T,P,X
YLegend[localhost.mem]: bytes
ShortLegend[localhost.mem]: bytes
LegendI[localhost.mem]: Free Memory:
LegendO[localhost.mem]:
Legend1[localhost.mem]: Free memory, not including swap, in bytes


حال برای مشاهده MRTG در بروزر بدین شکل عمل می کنیم :

http://mrtg-server-ip/mrtg

در آخر توصیه می کنم که دسترسی به دایرکتوری mrtg در وب سرور خود را محدود کنید.

اطلاعات بیشتر در :

http://oss.oetiker.ch/mrtg/3party.en.html

 

نگارنده : رضا بهروزی

منبع : پرشین ادمینز

ابوالفضل محمدی

درباره من

شاید این مطالب را هم دوست داشته باشید

پاسخ دهید

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