วันเสาร์ที่ 26 พฤษภาคม พ.ศ. 2555

การติดตั้ง MRTG แบบบ้านๆเลย


เนื่องจากมีการแจ้งเข้ามาว่าอินเตอร์เน็ตช้า จึงมีการ monitor เำืพื่อทำการตรวจสอบ
ฝ่ายเทคโนได้ใช้ MRTG ในการ Monitoring

ก่อนอื่นทำการตรวจสอบก่อนว่าโปรแกรม net-snmp ได้ติดตั้งแล้วหรือไม่
# pkg_info | grep net-snmp

ถ้ายังไม่ได้ก็ติดตั้งโปรแกรม net-snmp ผ่านทาง Port
# whereis net-snmp

net-snmp: /usr/ports/net-mgmt/net-snmp
# cd /usr/ports/net-mgmt/net-snmp
# make config
# make install clean

คัดลอกไฟล์ปรับแต่งค่าใหม่
# cp /usr/local/share/snmp/snmpd.conf  /usr/local/etc/ 

หรือสร้างไฟล์ /usr/local/etc/snmpd.conf เองเลยง่ายที่สุด โดยมีคำสั่งดังนี้
syslocation  "Authen Server"
syscontact  azimuthotg@gmail.com
rocommunity  public
disk  /

แก้ไขไฟล์ /etc/rc.conf เพิ่มคำสั่งนี้ลงไป  เพื่อถ้ามีการรีบูทจะได้สามารถใช้ได้เลย
snmpd_enable="YES" 
snmpd_conffile="/usr/local/etc/snmpd.conf"
snmptrapd_enable="YES"
บันทึกแล้วออกจากไฟล์

Start การทำงานของ net-snmp และ snmptrap
# /usr/local/etc/rc.d/snmpd start
# /usr/local/etc/rc.d/snmptrapd start

ลองทดสอบการใช้งานของ SNMP ดูว่าทำงานหรือเปล่า มีข้อมูลปรากฎหรือเปล่า
# snmpwalk -v 2c -c public 127.0.0.1

ในส่วนของ snmp ก็หมดเพียงแค่นี้ เอาไว้ส่งข้อมูลไปให้ mrtg แสดงกราฟ

ครั้งนี้มาติดตั้ง MRTG

#whereis mrtg
/usr/ports/net-mgmt/mrtg

# cd /usr/ports/net-mgmt/mrtg
# make config
# make install clean
ตัวเลือกใ้ช้ค่าเดิมทั้งหมดไม่ต้องลงอารายเพิ่ม

สร้างไฟล์ .cfg ของเครื่องที่เราต้องการ monitoring บ้างคนอาจมีหลายเครื่อง ก็ตั้งชื่อแตกต่างกันออกไป
# /usr/local/bin/cfgmaker public@127.0.0.1 > /usr/local/etc/mrtg/127001.cfg

แก้ไขไฟล์ /usr/local/etc/mrtg/127001.cfg  ที่เราได้มา
WorkDir: /usr/local/www/mrtg
Options[_]: growright, bits, nobanner
Refresh: 300
Interval: 5
EnableIPv6: no
RunAsDaemon: Yes

บันทึกแล้วออก



ทำการสั่งให้ MRTG ไปเก็บค่า snmp ตามที่เราต้องการ ดังนี้
# /usr/local/bin/mrtg /usr/local/etc/mrtg/127001.cfg


สร้าง soft link ตั้งชื่อตามต้องการในที่นี้ใช้ mrtg
# ln -s /usr/local/www/mrtg /usr/local/www/apache22/data/mrtg


เริ่มการทำงานของ MRTG 
# /usr/local/etc/rc.d/mrtg_daemon start

คราวนี้เราต้องสร้างหน้าที่ร่วม mrtg ของเครื่องทั้งหมดที่เราต้องการ monitoring
โดยเราจะสร้างไฟล์ index.html เพียงเครื่องเดียวก่อน

# mkdir -p /usr/local/www/mrtg
# /usr/local/bin/indexmaker --columns=1 --width=600 --height=150 --output=/usr/local/www/mrtg/index.html /usr/local/etc/mrtg/mrtg.cfg
# chown -R mrtg:mrtg /usr/local/www/mrtg
# chown -R mrtg:mrtg /usr/local/etc/mrtg


ตามประสบการณ์ เราจะได้แค่ 1 index.html เท่านั้น
ถ้าเราต้องการ monitor server ตัวอื่น ก็ต้องทำ .cfg ของ server นั้นๆ
#/usr/local/bin/cfgmaker public@202.xx.xx.xx > /usr/local/etc/mrtg/202xxxxxx.cfg

# /usr/local/bin/mrtg /usr/local/etc/mrtg/202xxxxxx.cfg

ไฟล์ทั้งหมดจะไปอยู่รวมกันใน /usr/local/www/mrtg
แก้ไขไฟล์ index.html
# pico /usr/local/www/mrtg/index.html
เพิ่มคำสั่งข้างล่าง โดยหมายเลขจะต้องตรงกับไฟล์ .cfg ที่เราทำ

<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=10>
<tr>
<td><DIV><B>Traffic Analysis for 202.xx.xx.xx -- nGate </B></DIV>
<DIV><A HREF="202.xx.xx.xx_2.html"><IMG BORDER=1 ALT="202.xx.xx.xx_2 Traffic Graph" SRC="202.xx.xx.xx_2-day.png" WIDTH="600" HEIGHT="150"></A><BR>
<SMALL><!--#flastmod file="202.29.55.73.html" --></SMALL></DIV>
</td></tr>
<tr>
<td></td>
</tr>
</TABLE>
บันทึกแแล้วออก
ทดสอบเรียกไฟล์ index.html ดูว่าแสดงผลหรือเปล่า ส่วนนี้ใช้ภาษา HTML ธรรมดา
ผู้ที่มีความสามารถ สามารถตกแต่งให้หน้า index.html ตามต้องการ

แก้ไขไฟล์ /etc/rc.conf

mrtg_daemon_enable="YES"

ทั้งหมด อาจไม่ถูกต้องแต่เป็นขั้นตอน ลำดับเพื่อไม่ไห้ลืมครับ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น