Memantau Suhu Ruangan secara Efisien dengan Raspberry Pi dan Nagios
Selama beberapa bulan terakhir saya telah mengimplementasi dan membangun solusi pemantauan untuk sistem pengembangan dan produksi kami. Karena nagios adalah solusi pemantauan yang paling disukai / dibenci, saya merasa tertarik untuk mempelajari cara kerjanya. Setelah berjuang dengan izin pengguna, aturan firewall, dependensi yang rusak, dan dasarnya setiap masalah yang dapat muncul, saya akhirnya memiliki sistem Nagios yang berfungsi. Karena saya suka bootstrap dan membuat konfigurasi semudah mungkin, saya meluangkan waktu untuk menginstal Adagios untuk berada di atas Nagios. Saya sangat merekomendasikannya karena ini membuat menangani Nagios jauh lebih menyenangkan dan terlihat jauh lebih bagus.
Sekarang ke hal yang menyenangkan: seiring berjalannya waktu, saya suka menggunakan raspberry pi di mana saja. Mereka kecil, menguras sedikit daya, dan memiliki cukup input untuk memasang sensor. Baru-baru ini saya menggulir melalui r/sysadmin ketika saya menemukan posting berikut Bulan lalu petugas kebersihan melukai server favorit saya. Itu membuat saya berpikir… sekarang setelah saya memantau ruang disk, penggunaan memori, beban CPU, mungkin saya harus mulai memantau suhu ruang server.
Alat yang Diperlukan
- Raspberry Pi
- Resistor 4.7k ohm
- DS18B20
Penghubungan
Saya pertama kali menguji setup saya menggunakan breadboard dan kabel jumper sebelum menyolder apa pun. Jika itu bukan opsi untuk Anda, silakan menyolder resistor 4.7k ohm antara 3.3v (kabel merah) dan saluran data (kabel kuning).
Di bawah adalah diagram bagaimana semuanya harus dihubungkan yang diambil dari tutorial adafruit.
Menyiapkan NRPE
Agar nagios dapat memantau suhu, agent NRPE perlu diinstal pada Raspberry Pi. Berikut adalah panduan cepat untuk menginstal NRPE.
- Unduh dan ekstrak NRPE-2.x dari situs berikut:
https://sourceforge.net/projects/nagios/files/nrpe-2.x/
- Ekstrak isinya:
tar -zxvf nrpe-2.15.tar.gz
- Masuk ke direktori yang diekstrak:
cd nrpe-2.15/
- Anda perlu membuat tautan simbolis sehingga nrpe dapat menemukan perpustakaan SSL arm:
sudo rm /usr/lib/libssl.so
sudo ln -s /usr/lib/arm-linux-gnueabihf/libssl.so /usr/lib/libssl.so
- Jalankan proses konfigurasi, jika Anda kehilangan dependensi apa pun itu akan memberitahu Anda (selesaikan):
./configure
- Sebelum menginstal, buat pengguna dan grup nagios terlebih dahulu. Anda membutuhkan ini untuk proses instalasi. Pastikan untuk membangun dan menginstal sebagai root:
sudo useradd nagios
sudo make all
sudo make install
sudo make install-plugin
sudo make install-daemon
- Salin file konfigurasi contoh ke direktori instalasi NRPE:
sudo mkdir /usr/local/nagios/etc
sudo cp sample-config/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg
sudo chown -R nagios:nagios /usr/local/nagios/etc/
- Salin skrip init.d debian dan berikan izin yang dapat dieksekusi:
sudo cp init-script.debian /etc/init.d/nrpe
sudo chmod 700 /etc/init.d/nrpe
- Edit file konfigurasi nrpe.cfg dan pastikan untuk menambahkan server Nagios Anda ke allowed_hosts. Mari kita juga menambahkan perintah check_temp kita
- sudo vim /usr/local/nagios/etc/nrpe.cfg
> allowed_hosts=127.0.0.1,YOUR_NAGIOS_SERVER_IP_HERE
> command[check_temp]=/usr/local/nagios/libexec/check_temp.sh -w 30 -c 40 - Pastikan akses melalui port 5666 diizinkan nrpe 5666/tcp #nrpe
- Mulai layanan NRPE:
sudo service nrpe start
- Konfirmasikan apakah berjalan:
ps aux | grep nrpe
Perintah di atas harus menghasilkan sesuatu seperti ini:
[email protected]:/tmp/nrpe-2.15# ps aux | grep nrpe nagios 8869 0.0 0.2 4084 980 ? Ss 21:43 0:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
- Terakhir pastikan NRPE mulai saat reboot:
sudo update-rc.d nrpe defaults
Anda sekarang selesai dengan menginstal agent NRPE pada Raspberry Pi Anda sehingga saatnya untuk menginstal skrip check_temp.
Kode
Simpan skrip berikut sebagai check_temp.sh di dalam /usr/local/nagios/libexec/
Pastikan memiliki izin yang dapat dieksekusi: chmod +x /usr/local/nagios/libexec/check_temp.sh
Untuk detail lebih lanjut: Monitoring Room Temperatures with a Raspberry Pi and Nagios