- ก่อนการใช้งาน cacti เราต้องตรวจสอบก่อนว่า snmp agent สามารถทำงานได้
- โดยใช้ snmpwalk
snmpwalk -c <cms> -v 1 <host> <.1>
snmpwalk -c public -v 1 localhost .1
- ซึ่งคำสั่งนี้จะเป็นการตรวจสอบทุกค่าที่ snmp agent จะให้ค่าได้
- ถ้าผลลัพธ์ของคำสั่งด้านบน ได้เยอะแสดงว่า snmp agent สามารถ get ค่าได้ทุกค่า (การ list ค่าทั้งหมดของคำสั่งจะใช้เวลาประมาณ 3 วินาที)
- แต่ถ้าได้น้อยแสดงว่า snmp agent ไม่สามารถ get ได้ทุกค่า ให้เราคอนฟิก snmpd.conf ซึ่งจะอยู่ตามพาธนี้ /etc/snmp/snmpd.conf
- และอีกปัญหาคือ เครื่องอื่นนอกจาก localhost ไม่สามารถ get ค่าได้ อันนี้ก็แก้ไขที่ /etc/snmp/snmpd.conf เช่นกัน
กรณีแรกไม่สามารถเข้าถึง SNMP Agent ได้
- ตอนเราเพิ่ม devices ถ้าพบประมาณ SNMP Error สีแดงดังภาพแสดงว่า snmp host ไม่สามารถเข้าถึงได้เนื่องจาก ยังไม่ start service snmp หรือ อาจาจะติด firewall ก็เป็นได้
กรณีเข้าถึง SNMP Agent ได้แต่ไม่มีค่า return กลับมา ทำให้ไม่สามารถสร้าง Graph ได้
- เมื่อคลิก debug จะพบประมาณภาพด้านล่างคือ No SNMP data returned
- เมื่อเราทดสอบ snmpwalk
snmpwalk -c public -v 1 localhost .1.3.6.1.2.1.2.2.1.1
- ไม่มีค่า return กลับมาแสดงว่า snmp agent ไม่อนุญาติสำหรับ MIB ID นี้
กรณี Add Data Query Name พบ 0 items, 0 rows
- แสดงว่า snmp agent ไม่อนุญาติสำหรับ MIB ID นี้เช่นกัน
Config snmpd.conf in Ubuntu 10.10
- /etc/snmp/snmpd.conf
- เปลี่ยน community string ประมาณบรรทัดที่ 52 ซึ่งค่าเริ่มต้นเป็น public ไม่ค่อยปลอดภัย
- ประมาณบรรทัดที่ 15 ซึ่งค่าเริ่มต้นจะอนุญาตให้เฉพาะ localhost เท่านั้นสามารถ get ค่าได้ อนุญาตให้ host อื่นๆ สามารถ get ค่าจาก snmp agent บน host นี้ได้ เราแค่ comment agentAddress udp:127.0.0.1:161 ไว้โดยใส่ sharp ด้านหน้าบรรทัด
- MIB ID อะไรบ้างที่ snmpagent สามารถ get ค่าได้ ในที่นี้ผู้เขียนไม่ทราบว่า MIB ID ของ interface stastics หรือ CPU load average หรือ อื่นๆ เป็น id อะไรกันบ้าง
- ผู้เขียนเลยใส่ .1 ไปด้วยคือ เปิดให้ get ทุก MIB ID
- เมื่อ config เรียบร้อยก็ restart service นิดหนึ่ง
- # system + hrSystem groups only ให้อยู่บรรทัด 44 และบนหัวมันให้เป็นบรรทัดว่างๆ 1 บรรทัด
- ลงมาบรรทัด 45 ค่อยเป็น .1
- ทดสอบวาง .1 ที่บรรทัดเดียวกันกับ # system รู้สึกว่า คอนฟิกมันใช้ไม่ได้ซะงั้นทำไม ก็ไม่ทราบได้
sudo /etc/init.d/snmpd restart
เพิ่มเติม
- จากข้อผิดพลาดดังกล่าวทำให้เราทราบว่า MIB ID ของ Interface stastics ของ linux คือ
.1.3.6.1.2.1.2.2.1.1
- ซึ่งค่าพวกนี้เราสามารถค้นหาได้จากไฟล์ php ของ cacti ไง
- อีกอย่างพาธเว็บไซต์ cacti จะอยู่ที่ /usr/share/cacti/site/
- สำหรับเปลี่ยรูปแบบหน้า login ให้แก้ไขที่ไฟล์ /usr/share/cacti/site/auth_login.php
Related