Bagaimana saya bisa mendapatkan FreeNAS dan pfSense untuk melaporkan lebih banyak menggunakan SNMP?

10

Saya memiliki dua server yang menjalankan varian FreeBSD: Satu adalah router pfSense dan satu adalah server FreeNAS 8. Kedua server ini menjalankan SNMP, dan saya mengumpulkan dan membuat grafik informasi mereka menggunakan server Cacti ketiga.

Data SNMP dari server pfSense dan server FreeNAS tidak termasuk penggunaan memori, penggunaan CPU, atau Load Average.

Grafik lalu lintas untuk server pfSense terlihat bagus. Laporan penggunaan disk dari server FreeNAS terlihat cantik. Saya hanya tidak mendapatkan data untuk penggunaan memori, penggunaan CPU, atau Load Average. Saya tahu kedua server ini harus mampu menyediakan data ini, karena di admin web pfSense dan freeNAS saya dapat melihat grafik. Tapi saya lebih suka memiliki semua grafik di Cacti untuk kemudahan manajemen.

Bagaimana saya bisa mendapatkan server pfSense saya untuk menyediakan penggunaan memori, penggunaan CPU, dan data Load Average melalui SNMP? Bagaimana saya bisa mendapatkan server FreeNAS saya untuk menyediakan penggunaan memori, penggunaan CPU, dan data Load Average melalui SNMP? Saya menganggap prosedur yang sama akan bekerja untuk kedua server.

Josh
sumber

Jawaban:

11

Setelah banyak penelitian tentang ini saya menemukan apa masalahnya. Baik pfSense dan FreeNAS menyediakan dukungan SNMP melalui daemon SNMP begemot FreeBSD (bsnmpd) . Untuk menyediakan penggunaan memori, penggunaan CPU, dan informasi Load Average, daemon SNMP begemot perlu memiliki modul tambahan, snmp_ucd.sodimuat.

Saya menemukan utas forum berikut menjelaskan untuk memuat snmp_ucd.so, namun tidak ada pada dua sistem saya.

Untuk mengatasi ini, saya membuat mesin virtual dan menginstal FreeBSD 8.3 di atasnya. Di dalam mesin virtual ini, saya menggunakan sistem Port FreeBSD untuk mengunduh dan membangun snmp_ucd.sopustaka yang diperlukan menggunakan:

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

Setelah itu, saya biasa scpmenyalin /usr/local/lib/snmp_ucd.sodari mesin virtual FreeBSD ke server pfSense saya dan juga server FreeNAS saya.

Saya kemudian menggunakan GUI FreeNAS untuk menambahkan parameter Auxiliary berikut :

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

Screencap dari FreeNAS

Ini menambahkan baris secara otomatis ke /etc/snmpd.configpada server FreeNAS dan saya bisa mendapatkan grafik!

Server pfSense lebih rumit karena tidak memungkinkan saya untuk menerapkan perubahan menggunakan GUI, dan skrip pfSense akan secara otomatis membangun kembali /etc/snmpd.config, menimpa perubahan saya. Agar pfSense berfungsi, saya harus mengedit /etc/inc/services.inc. Sebelum baris yang berbunyi:

fwrite($fd, $snmpdconf);

Saya menambahkan yang berikut:

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



EOD;

Kemudian, menonaktifkan dan mengaktifkan kembali SNMP menerapkan perubahan dan grafik penggunaan CPU berfungsi sekarang! Perubahan itu hampir pasti tidak akan bertahan pada peningkatan pfSense, tetapi saya tidak dapat menemukan cara yang lebih mudah dan lebih stabil untuk menerapkan perubahan tersebut.

Josh
sumber