โปรแกรมที่ต้องติดตั้งและเซ็ตอัพให้ใช้งานได้ก่อน ได้แก่ Cacti, Apache Web Server, MySQL Server, SNMP, PHP
1. เช็คก่อนครับว่า Asterisk 1.4 รองรับ SNMP หรือยัง
เข้า Asterisk Console แล้วพิมพ์คำสั่ง
- โค้ด: เลือกทั้งหมด
module show like snmp
ดังตัวอย่าง
sip*CLI> module show like snmp
Module Description Use Count
res_snmp.so SNMP [Sub]Agent for Asterisk 0
1 modules loaded
ถ้าเห็นชื่อโมดูล res_snmp.so แสดงขึ้นมา (ดังตัวอย่าง) แสดงว่า Asterisk รองรับ SNMP แล้ว ให้ข้ามไปขั้นตอนที่ 4 ได้เลย แต่ถ้าไม่เห็นชื่อโมดูลก็แสดงว่า Asterisk ยังไม่รองรับ SNMP (แต่ต้องเช็คให้ชัวร์นะครับว่าในไฟล์ modules.conf ไม่ได้สั่ง noload res_snmp.conf ไว้)
2. ติดตั้ง SNMP
3. คอมไพล์ Asterisk 1.4 ให้รองรับ SNMP
3.1 ไปที่ไดเร็คตอรี่ Source Code ของ Asterisk 1.4
สมมติว่าเก็บ Source Code ของ Asterisk ไว้ที่ไดเร็คตอรี่ cd /usr/src/asterisk-1.4.26.3 นะครับ
- โค้ด: เลือกทั้งหมด
cd cd /usr/src/asterisk-1.4.26.3
make clean
./configure --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --localstatedir=/var
make menuselect
3.2 เช็คว่าได้อินาเบิล Resource Modules SNMP หรือยัง
เลื่อน Curser มาที่ "Resource Modules" แล้วกด Enter
ด้านหน้าของ res_snmp ต้องมีเครื่องหมาย * แต่ถ้าเป็นเครื่องหมาย XXX แสดงว่าเรายังไม่ได้ติดตั้ง Centos ให้รองรับ SNMP
กดปุ่ม Esc และปุ่ม s เพื่อบันทึก
3.3 ทำขั้นตอนต่อไป
- โค้ด: เลือกทั้งหมด
make
make install
ถ้าไม่ได้เป็นการติดตั้ง Asterisk 1.4 ใหม่ ห้ามใช้คำสั่ง make samples นะครับ เดี๋ยวคอนฟิกหายหมด
3.4 ก๊อปไฟล์คอนฟิก res_snmp.conf
- โค้ด: เลือกทั้งหมด
cd /usr/src/asterisk-1.4.26.3/doc
cp res_snmp.conf.sample /etc/asterisk/res_snmp.conf
ถ้าใน doc/ ไม่มีไฟล์ res_snmp.conf.sample ก็เช็คใน /etc/asterisk อาจจะมีอยู่แล้วก็ได้ (เวอร์ชั่น 1.4 Release หลังๆ เวลาเราติดตั้งมันจะก๊อบไฟล์ res_snmp.conf ไปไว้ใน /etc/asterisk ให้เลย)
4. ก๊อปปี้ไฟล์ Asterisk MIB และ Digium MIB
- โค้ด: เลือกทั้งหมด
cd /usr/src/asterisk-1.4.26.3/doc
cp *-mib.txt /usr/share/snmp/mibs
เวอร์ชั่น 1.4 Release หลังๆ ชื่อไฟล์เปลี่ยนเป็น asterisk-mib.txt และ digium-mib.txt นะครับ
5. แก้ไขไฟล์ /etc/snmp/snmpd.conf
- โค้ด: เลือกทั้งหมด
cd /etc/snmp
mv snmpd.conf snmpd.conf.bak
vi snmpd.conf
rocommunity password
master agentx
agentXSocket /var/agentx/master
agentXPerms 0660 0660 nobody asterisk
com2sec local localhost password
com2sec mynetwork 192.168.4.55 password
group MyROGroup any local
group MyROGroup any mynetwork
view all included .1
access MyROGroup "" any noauth 0 all none none
โดยที่ password เป็น Community Name ครับเปรียบเสมือนกับเป็น Password ซึ่งถ้ามีใครส่ง SNMP มาแต่ใส่ Community Name มาไม่ถูกต้องมันก็จะไม่ยอมรับ ตั้งได้ตามใจชอบครับ, 192.168.4.55 เป็น IP Address ที่ Asterisk จะยอมรับให้ส่ง SNMP มาสอบถามข้อมูล ซึ่งถ้าเราลงโปรแกรม Cacti ที่เราจะใช้เป็นตัวดึงข้อมูล SNMP และนำมาแสดงเป็นกราฟบนเครื่องเดียวกันกับ Asterisk แล้วหล่ะก็ไม่ต้องมีบรรทัดนี้ก็ได้นะครับเพราะว่าเรามีบรรทัดที่เป็น localhost อยู่แล้ว
หรือจะใส่แบบนี้ก็ได้นะครับ ผมรัน asterisk ด้วย root
- โค้ด: เลือกทั้งหมด
syslocation Bangkok
rocommunity sipserver
master agentx
agentXSocket /var/agentx/master
agentXPerms 0660 0660 nobody root
com2sec local localhost sipserver
group MyROGroup any local
access MyROGroup "" any noauth 0 all none none
6. รีสตาร์ท snmpd
- โค้ด: เลือกทั้งหมด
service snmpd restart
7. แก้ไข Permission ของไดเร็คตอรี่ /var/agentx
- โค้ด: เลือกทั้งหมด
chmod 755 /var/agentx
8. สร้างไฟล์สคริปต์ที่จะเรียก Cacti ไปดึงข้อมูล SNMP จาก Asterisk
- โค้ด: เลือกทั้งหมด
vi /usr/sbin/cacti_snmp_poller.sh
ใส่ 3 บรรทัดข้างล่างนี้ครับ
MIBS=+ASTERISK-MIB
export MIBS
php /var/www/html/cacti/poller.php
9. ตั้งเวลาการดึงข้อมูลด้วย crontab
ให้ดึงข้อมูลทุก 5 นาที
- โค้ด: เลือกทั้งหมด
crontab -e
เพิ่ม 2 บรรทัดนี้เข้าไป
#cacti snmp
*/5 * * * * /usr/sbin/cacti_snmp_poller.sh > /dev/null 2>&1
10. แก้ไขคอนฟิก SNMP ของ Asterisk
- โค้ด: เลือกทั้งหมด
vi /etc/asterisk/res_snmp.conf
[general]
subagent=yes
enabled=yes
11. รีสตาร์ท Asterisk
- โค้ด: เลือกทั้งหมด
service asterisk start
12. เทสดูว่าสามารถดึงข้อมูล SNMP จาก Asterisk ได้หรือไม่
- โค้ด: เลือกทั้งหมด
export MIBS=+ASTERISK-MIB
snmpwalk -On -c password -v 2c localhost .1.3.6.1.4.1.22736
ถ้าเวอร์คจะปรากฏข้อมูลตามนี้ครับ
.1.3.6.1.4.1.22736.1.1.1.0 = STRING: 1.4.26.3
.1.3.6.1.4.1.22736.1.1.2.0 = Gauge32: 10426
.1.3.6.1.4.1.22736.1.2.1.0 = Timeticks: (2834080) 7:52:20.80
.1.3.6.1.4.1.22736.1.2.2.0 = Timeticks: (2834080) 7:52:20.80
.1.3.6.1.4.1.22736.1.2.3.0 = INTEGER: 25918
.1.3.6.1.4.1.22736.1.2.4.0 = STRING: /var/run/asterisk/asterisk.ctl
.1.3.6.1.4.1.22736.1.3.1.0 = INTEGER: 146
.1.3.6.1.4.1.22736.1.4.1.0 = INTEGER: 40
.1.3.6.1.4.1.22736.1.4.2.0 = STRING: us
.1.3.6.1.4.1.22736.1.4.3.1.1.1 = INTEGER: 1
.1.3.6.1.4.1.22736.1.4.3.1.1.2 = INTEGER: 2
.1.3.6.1.4.1.22736.1.4.3.1.1.3 = INTEGER: 3
.1.3.6.1.4.1.22736.1.4.3.1.1.4 = INTEGER: 4
.1.3.6.1.4.1.22736.1.4.3.1.1.5 = INTEGER: 5
.1.3.6.1.4.1.22736.1.4.3.1.1.6 = INTEGER: 6
.1.3.6.1.4.1.22736.1.4.3.1.1.7 = INTEGER: 7
.1.3.6.1.4.1.22736.1.4.3.1.1.8 = INTEGER: 8
.1.3.6.1.4.1.22736.1.4.3.1.1.9 = INTEGER: 9
.1.3.6.1.4.1.22736.1.4.3.1.1.10 = INTEGER: 10
.1.3.6.1.4.1.22736.1.4.3.1.1.11 = INTEGER: 11
.1.3.6.1.4.1.22736.1.4.3.1.1.12 = INTEGER: 12
.1.3.6.1.4.1.22736.1.4.3.1.1.13 = INTEGER: 13
.1.3.6.1.4.1.22736.1.4.3.1.1.14 = INTEGER: 14
.1.3.6.1.4.1.22736.1.4.3.1.1.15 = INTEGER: 15
.1.3.6.1.4.1.22736.1.4.3.1.1.16 = INTEGER: 16
.1.3.6.1.4.1.22736.1.4.3.1.1.17 = INTEGER: 17
.1.3.6.1.4.1.22736.1.4.3.1.1.18 = INTEGER: 18
.1.3.6.1.4.1.22736.1.4.3.1.1.19 = INTEGER: 19
.1.3.6.1.4.1.22736.1.4.3.1.1.20 = INTEGER: 20
.1.3.6.1.4.1.22736.1.4.3.1.1.21 = INTEGER: 21
.1.3.6.1.4.1.22736.1.4.3.1.1.22 = INTEGER: 22
.1.3.6.1.4.1.22736.1.4.3.1.1.23 = INTEGER: 23
.1.3.6.1.4.1.22736.1.4.3.1.1.24 = INTEGER: 24
.1.3.6.1.4.1.22736.1.4.3.1.1.25 = INTEGER: 25
.1.3.6.1.4.1.22736.1.4.3.1.1.26 = INTEGER: 26
.1.3.6.1.4.1.22736.1.4.3.1.1.27 = INTEGER: 27
.1.3.6.1.4.1.22736.1.4.3.1.1.28 = INTEGER: 28
.1.3.6.1.4.1.22736.1.4.3.1.1.29 = INTEGER: 29
.1.3.6.1.4.1.22736.1.4.3.1.1.30 = INTEGER: 30
.1.3.6.1.4.1.22736.1.4.3.1.1.31 = INTEGER: 31
.1.3.6.1.4.1.22736.1.4.3.1.1.32 = INTEGER: 32
.1.3.6.1.4.1.22736.1.4.3.1.1.33 = INTEGER: 33
.1.3.6.1.4.1.22736.1.4.3.1.1.34 = INTEGER: 34
.1.3.6.1.4.1.22736.1.4.3.1.1.35 = INTEGER: 35
.1.3.6.1.4.1.22736.1.4.3.1.1.36 = INTEGER: 36
.1.3.6.1.4.1.22736.1.4.3.1.1.37 = INTEGER: 37
.1.3.6.1.4.1.22736.1.4.3.1.1.38 = INTEGER: 38
.1.3.6.1.4.1.22736.1.4.3.1.1.39 = INTEGER: 39
.1.3.6.1.4.1.22736.1.4.3.1.1.40 = INTEGER: 40
.1.3.6.1.4.1.22736.1.4.3.1.2.1 = STRING: at
.1.3.6.1.4.1.22736.1.4.3.1.2.2 = STRING: au
.1.3.6.1.4.1.22736.1.4.3.1.2.3 = STRING: bg
.1.3.6.1.4.1.22736.1.4.3.1.2.4 = STRING: br
.1.3.6.1.4.1.22736.1.4.3.1.2.5 = STRING: be
.1.3.6.1.4.1.22736.1.4.3.1.2.6 = STRING: ch
.1.3.6.1.4.1.22736.1.4.3.1.2.7 = STRING: cl
.1.3.6.1.4.1.22736.1.4.3.1.2.8 = STRING: cn
.1.3.6.1.4.1.22736.1.4.3.1.2.9 = STRING: cz
.1.3.6.1.4.1.22736.1.4.3.1.2.10 = STRING: de
.1.3.6.1.4.1.22736.1.4.3.1.2.11 = STRING: dk
.1.3.6.1.4.1.22736.1.4.3.1.2.12 = STRING: ee
.1.3.6.1.4.1.22736.1.4.3.1.2.13 = STRING: es
.1.3.6.1.4.1.22736.1.4.3.1.2.14 = STRING: fi
.1.3.6.1.4.1.22736.1.4.3.1.2.15 = STRING: fr
.1.3.6.1.4.1.22736.1.4.3.1.2.16 = STRING: gr
.1.3.6.1.4.1.22736.1.4.3.1.2.17 = STRING: hu
.1.3.6.1.4.1.22736.1.4.3.1.2.18 = STRING: il
.1.3.6.1.4.1.22736.1.4.3.1.2.19 = STRING: in
.1.3.6.1.4.1.22736.1.4.3.1.2.20 = STRING: it
.1.3.6.1.4.1.22736.1.4.3.1.2.21 = STRING: lt
.1.3.6.1.4.1.22736.1.4.3.1.2.22 = STRING: jp
.1.3.6.1.4.1.22736.1.4.3.1.2.23 = STRING: mx
.1.3.6.1.4.1.22736.1.4.3.1.2.24 = STRING: my
.1.3.6.1.4.1.22736.1.4.3.1.2.25 = STRING: nl
.1.3.6.1.4.1.22736.1.4.3.1.2.26 = STRING: no
.1.3.6.1.4.1.22736.1.4.3.1.2.27 = STRING: nz
.1.3.6.1.4.1.22736.1.4.3.1.2.28 = STRING: ph
.1.3.6.1.4.1.22736.1.4.3.1.2.29 = STRING: pl
.1.3.6.1.4.1.22736.1.4.3.1.2.30 = STRING: pt
.1.3.6.1.4.1.22736.1.4.3.1.2.31 = STRING: ru
.1.3.6.1.4.1.22736.1.4.3.1.2.32 = STRING: se
.1.3.6.1.4.1.22736.1.4.3.1.2.33 = STRING: sg
.1.3.6.1.4.1.22736.1.4.3.1.2.34 = STRING: th
.1.3.6.1.4.1.22736.1.4.3.1.2.35 = STRING: uk
.1.3.6.1.4.1.22736.1.4.3.1.2.36 = STRING: us
.1.3.6.1.4.1.22736.1.4.3.1.2.37 = STRING: us-o
.1.3.6.1.4.1.22736.1.4.3.1.2.38 = STRING: tw
.1.3.6.1.4.1.22736.1.4.3.1.2.39 = STRING: ve
.1.3.6.1.4.1.22736.1.4.3.1.2.40 = STRING: za
.1.3.6.1.4.1.22736.1.4.3.1.3.1 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.2 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.3 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.4 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.5 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.6 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.7 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.8 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.9 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.10 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.11 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.12 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.13 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.14 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.15 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.16 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.17 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.18 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.19 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.20 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.21 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.22 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.23 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.24 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.25 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.26 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.27 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.28 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.29 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.30 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.31 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.32 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.33 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.34 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.35 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.36 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.37 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.38 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.39 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.3.40 = STRING:
.1.3.6.1.4.1.22736.1.4.3.1.4.1 = STRING: Austria
.1.3.6.1.4.1.22736.1.4.3.1.4.2 = STRING: Australia
.1.3.6.1.4.1.22736.1.4.3.1.4.3 = STRING: Bulgaria
.1.3.6.1.4.1.22736.1.4.3.1.4.4 = STRING: Brazil
.1.3.6.1.4.1.22736.1.4.3.1.4.5 = STRING: Belgium
.1.3.6.1.4.1.22736.1.4.3.1.4.6 = STRING: Switzerland
.1.3.6.1.4.1.22736.1.4.3.1.4.7 = STRING: Chile
.1.3.6.1.4.1.22736.1.4.3.1.4.8 = STRING: China
.1.3.6.1.4.1.22736.1.4.3.1.4.9 = STRING: Czech Republic
.1.3.6.1.4.1.22736.1.4.3.1.4.10 = STRING: Germany
.1.3.6.1.4.1.22736.1.4.3.1.4.11 = STRING: Denmark
.1.3.6.1.4.1.22736.1.4.3.1.4.12 = STRING: Estonia
.1.3.6.1.4.1.22736.1.4.3.1.4.13 = STRING: Spain
.1.3.6.1.4.1.22736.1.4.3.1.4.14 = STRING: Finland
.1.3.6.1.4.1.22736.1.4.3.1.4.15 = STRING: France
.1.3.6.1.4.1.22736.1.4.3.1.4.16 = STRING: Greece
.1.3.6.1.4.1.22736.1.4.3.1.4.17 = STRING: Hungary
.1.3.6.1.4.1.22736.1.4.3.1.4.18 = STRING: Israel
.1.3.6.1.4.1.22736.1.4.3.1.4.19 = STRING: India
.1.3.6.1.4.1.22736.1.4.3.1.4.20 = STRING: Italy
.1.3.6.1.4.1.22736.1.4.3.1.4.21 = STRING: Lithuania
.1.3.6.1.4.1.22736.1.4.3.1.4.22 = STRING: Japan
.1.3.6.1.4.1.22736.1.4.3.1.4.23 = STRING: Mexico
.1.3.6.1.4.1.22736.1.4.3.1.4.24 = STRING: Malaysia
.1.3.6.1.4.1.22736.1.4.3.1.4.25 = STRING: Netherlands
.1.3.6.1.4.1.22736.1.4.3.1.4.26 = STRING: Norway
.1.3.6.1.4.1.22736.1.4.3.1.4.27 = STRING: New Zealand
.1.3.6.1.4.1.22736.1.4.3.1.4.28 = STRING: Philippines
.1.3.6.1.4.1.22736.1.4.3.1.4.29 = STRING: Poland
.1.3.6.1.4.1.22736.1.4.3.1.4.30 = STRING: Portugal
.1.3.6.1.4.1.22736.1.4.3.1.4.31 = STRING: Russian Federation / ex Soviet Union
.1.3.6.1.4.1.22736.1.4.3.1.4.32 = STRING: Sweden
.1.3.6.1.4.1.22736.1.4.3.1.4.33 = STRING: Singapore
.1.3.6.1.4.1.22736.1.4.3.1.4.34 = STRING: Thailand
.1.3.6.1.4.1.22736.1.4.3.1.4.35 = STRING: United Kingdom
.1.3.6.1.4.1.22736.1.4.3.1.4.36 = STRING: United States / North America
.1.3.6.1.4.1.22736.1.4.3.1.4.37 = STRING: United States Circa 1950/ North America
.1.3.6.1.4.1.22736.1.4.3.1.4.38 = STRING: Taiwan
.1.3.6.1.4.1.22736.1.4.3.1.4.39 = STRING: Venezuela / South America
.1.3.6.1.4.1.22736.1.4.3.1.4.40 = STRING: South Africa
.1.3.6.1.4.1.22736.1.5.1.0 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.3.0 = INTEGER: 6
.1.3.6.1.4.1.22736.1.5.4.1.1.1 = INTEGER: 1
.1.3.6.1.4.1.22736.1.5.4.1.1.2 = INTEGER: 2
.1.3.6.1.4.1.22736.1.5.4.1.1.3 = INTEGER: 3
.1.3.6.1.4.1.22736.1.5.4.1.1.4 = INTEGER: 4
.1.3.6.1.4.1.22736.1.5.4.1.1.5 = INTEGER: 5
.1.3.6.1.4.1.22736.1.5.4.1.1.6 = INTEGER: 6
.1.3.6.1.4.1.22736.1.5.4.1.2.1 = STRING: Local
.1.3.6.1.4.1.22736.1.5.4.1.2.2 = STRING: Phone
.1.3.6.1.4.1.22736.1.5.4.1.2.3 = STRING: Console
.1.3.6.1.4.1.22736.1.5.4.1.2.4 = STRING: H323
.1.3.6.1.4.1.22736.1.5.4.1.2.5 = STRING: Agent
.1.3.6.1.4.1.22736.1.5.4.1.2.6 = STRING: SIP
.1.3.6.1.4.1.22736.1.5.4.1.3.1 = STRING: Local Proxy Channel Driver
.1.3.6.1.4.1.22736.1.5.4.1.3.2 = STRING: Standard Linux Telephony API Driver
.1.3.6.1.4.1.22736.1.5.4.1.3.3 = STRING: OSS Console Channel Driver
.1.3.6.1.4.1.22736.1.5.4.1.3.4 = STRING: The NuFone Network's Open H.323 Channel Driver
.1.3.6.1.4.1.22736.1.5.4.1.3.5 = STRING: Call Agent Proxy Channel
.1.3.6.1.4.1.22736.1.5.4.1.3.6 = STRING: Session Initiation Protocol (SIP)
.1.3.6.1.4.1.22736.1.5.4.1.4.1 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.4.2 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.4.3 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.4.4 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.4.5 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.4.6 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.1 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.2 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.3 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.4 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.5 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.5.6 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.6.1 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.6.2 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.6.3 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.6.4 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.6.5 = INTEGER: false(2)
.1.3.6.1.4.1.22736.1.5.4.1.6.6 = INTEGER: true(1)
.1.3.6.1.4.1.22736.1.5.4.1.7.1 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.4.1.7.2 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.4.1.7.3 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.4.1.7.4 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.4.1.7.5 = Gauge32: 0
.1.3.6.1.4.1.22736.1.5.4.1.7.6 = Gauge32: 0
13. ข้อมูลที่ต้องนำไปคอนฟิก Cacti
ข้อมูล SNMP ของ Asterisk 1.4 จะน้อยกว่า Asterisk 1.6 นะครับ โดยข้อมูลที่เราพอจะดึงมาจาก Asterisk 1.4 ด้วย SNMP มีดังต่อไปนี้
.1.3.6.1.4.1.22736.1.5.1.0 -> total active channels
.1.3.6.1.4.1.22736.1.5.4.1.7.1 ->iax2
.1.3.6.1.4.1.22736.1.5.4.1.7.2 ->sip
.1.3.6.1.4.1.22736.1.5.4.1.7.3 ->agent
.1.3.6.1.4.1.22736.1.5.4.1.7.4 ->h323
.1.3.6.1.4.1.22736.1.5.4.1.7.5 ->zap/dahdi
.1.3.6.1.4.1.22736.1.5.4.1.7.6 ->console
.1.3.6.1.4.1.22736.1.5.4.1.7.7 ->localproxy
ตัวเลขข้างล่างที่ขึ้นต้นด้วย .1.3.6.1. ... เรียกว่า OID นะครับ ย่อมาจาก Object Identifier เป็นตัวเลขที่โปรแกรม SNMP Server (ดังเช่นโปรแกรม Cacti) จะส่งไปยัง SNMP Agent (ดังเช่น Asterisk) เพื่อให้ส่งข้อมูลมาให้ แต่ละ OID จะไม่เหมือนกันครับโดยจะแตกต่างกันไปตามยี่ห้ออุปกรณ์ รุ่น และพารามิเตอร์ที่ต้องการจะดู
เอาหล่ะครับเมื่อเรารู้ OID แล้ว และ SNMP ก็เวอร์คแล้ว ลำดับต่อไปคือการคอนฟิก Cacti เพื่อดึงข้อมูล SNMP มาแสดงเป็นกราฟ
Asterisk 1.4 + SNMP + Cacti ตอนที่ 2