ฉันจะรับ FreeNAS และ pfSense เพื่อรายงานเพิ่มเติมโดยใช้ SNMP ได้อย่างไร


10

ฉันมีเซิร์ฟเวอร์สองตัวที่ใช้งาน FreeBSD: หนึ่งตัวคือเราเตอร์ pfSense และอีกอันคือเซิร์ฟเวอร์ FreeNAS 8 เซิร์ฟเวอร์ทั้งสองนี้เรียกใช้ SNMP และฉันกำลังรวบรวมและสร้างกราฟข้อมูลโดยใช้เซิร์ฟเวอร์ Cacti ตัวที่สาม

ข้อมูล SNMP จากทั้งเซิร์ฟเวอร์ pfSense และเซิร์ฟเวอร์ FreeNAS ไม่รวมถึงการใช้หน่วยความจำการใช้งาน CPU หรือ Load Average

กราฟปริมาณการใช้งานสำหรับเซิร์ฟเวอร์ pfSense ดูดี รายงานการใช้ดิสก์จากเซิร์ฟเวอร์ FreeNAS ดูสวยงาม ฉันไม่ได้รับข้อมูลใด ๆ สำหรับการใช้งานหน่วยความจำการใช้งาน CPU หรือโหลดเฉลี่ย ฉันรู้ว่าเซิร์ฟเวอร์ทั้งสองนี้ควรจะสามารถให้ข้อมูลนี้ได้เนื่องจากใน pfSense และผู้ดูแลเว็บฟรีของ NAS ฉันสามารถดูกราฟได้ แต่ฉันต้องการมีกราฟทั้งหมดใน Cacti เพื่อความสะดวกในการจัดการ

ฉันจะรับเซิร์ฟเวอร์ pfSense ของฉันเพื่อให้การใช้งานหน่วยความจำการใช้งาน CPU และโหลดข้อมูลเฉลี่ยผ่าน SNMP ได้อย่างไร ฉันจะรับเซิร์ฟเวอร์ FreeNAS ของฉันเพื่อให้การใช้งานหน่วยความจำการใช้งาน CPU และโหลดข้อมูลเฉลี่ยผ่าน SNMP ได้อย่างไร ฉันคิดว่ากระบวนการเดียวกันนี้จะทำงานกับเซิร์ฟเวอร์ทั้งสอง

คำตอบ:


11

หลังจากการวิจัยมากมายเกี่ยวกับเรื่องนี้ฉันค้นพบว่าปัญหาคืออะไร ทั้งสอง pfSense และ FreeNAS ให้การสนับสนุน SNMP ผ่านFreeBSD BEGEMOT SNMP ภูต (bsnmpd) เพื่อจัดเตรียมการใช้งานหน่วยความจำการใช้งาน CPU และข้อมูลค่าเฉลี่ยโหลด begemot SNMP daemon จำเป็นต้องมีโมดูลเพิ่มเติมsnmp_ucd.soโหลด

ฉันพบกระทู้ในฟอรัมต่อไปนี้เพื่ออธิบายการโหลดsnmp_ucd.soแต่มันไม่ได้ปรากฏในสองระบบของฉัน

ในการแก้ไขปัญหานี้ฉันได้สร้างเครื่องเสมือนและติดตั้ง FreeBSD 8.3 ไว้แล้ว ภายในเครื่องเสมือนนี้ฉันใช้ระบบ FreeBSD Ports เพื่อดาวน์โหลดและสร้างไลบรารี่ที่ต้องการsnmp_ucd.soโดยใช้:

cd /usr/ports/net-mgmt/bsnmp-ucd
make all install clean 
cd /usr/ports/net-mgmt/bsnmptools
make all install clean

หลังจากนั้นฉันเคยscpคัดลอก/usr/local/lib/snmp_ucd.soจากเครื่องเสมือน FreeBSD ไปยังเซิร์ฟเวอร์ pfSense ของฉันรวมถึงเซิร์ฟเวอร์ FreeNAS ของฉัน

ฉันใช้ FreeNAS GUI เพื่อเพิ่มพารามิเตอร์ Auxiliaryต่อไปนี้:

begemotSnmpdModulePath."ucd" = "/mnt/Garrison/jail/usr/local/lib/snmp_ucd.so"

หน้าจอของ FreeNAS

สิ่งนี้เพิ่มบรรทัดโดยอัตโนมัติ/etc/snmpd.configในเซิร์ฟเวอร์ FreeNAS และฉันสามารถรับกราฟได้!

เซิร์ฟเวอร์ pfSense มีความยุ่งยากมากขึ้นเนื่องจากไม่อนุญาตให้ฉันใช้การเปลี่ยนแปลงโดยใช้ GUI และสคริปต์ pfSense จะสร้างใหม่โดยอัตโนมัติ/etc/snmpd.configเขียนทับการเปลี่ยนแปลงของฉัน ที่จะได้รับ pfSense /etc/inc/services.incทำงานผมต้องแก้ไข ก่อนบรรทัดที่อ่าน:

fwrite($fd, $snmpdconf);

ฉันเพิ่มต่อไปนี้:

    //Josh Additions: Make load avg and CPU usage work:
    $snmpdconf .= <<<EOD
# Josh additions:
begemotSnmpdModulePath."ucd" = "/usr/local/lib/snmp_ucd.so"



EOD;

จากนั้นให้ปิดใช้งานและเปิดใช้งาน SNMP อีกครั้งโดยใช้การเปลี่ยนแปลงและกราฟการใช้งาน CPU ทำงานทันที! การเปลี่ยนแปลงนั้นจะไม่คงอยู่ในการอัพเกรด pfSense แต่ฉันไม่สามารถหาวิธีที่ง่ายกว่าและเสถียรกว่านี้ในการใช้การเปลี่ยนแปลง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.