Grup host dan template.
Template memungkinkan Anda menentukan kelas untuk host dan layanan Anda, mis. "Layanan normal", "layanan kritis", "host prioritas rendah". Mereka juga berfungsi sebagai cara yang berguna untuk membagi tanggung jawab jika Anda memiliki banyak tim dengan tanggung jawab yang berbeda, sehingga Anda dapat memiliki templat "host linux" dan templat "host windows", dengan masing-masing menentukan info kontak yang sesuai.
Anda dapat menggunakan beberapa templat pada satu sumber daya tunggal, sehingga Anda dapat menyusun templat ortogonal yang sesuai. Misalnya, Anda bisa memilikinya
host foo {
use windows-host,normal-priority-host
...
}
yang akan menarik info kontak (dan eskalasi) untuk tim Windows dan tingkat pemungutan suara dan ambang batas untuk host "normal".
Hostgroup memungkinkan Anda mengelompokkan semua cek untuk subset host Anda. Memiliki hal-hal seperti "baseline-linux-hosts" yang memeriksa beban, ruang disk, ssh
kemampuan, dan apa pun hal lain yang harus ada di setiap host yang Anda monitor. Tambahkan grup seperti "https-server" dengan cek untuk konektivitas HTTP, konektivitas HTTPS, dan tanggal kedaluwarsa sertifikat SSL; "fileservers" dengan pemeriksaan untuk aksesibilitas NFS dan SMB dan mungkin pemeriksaan disk yang lebih agresif; atau "mesin virtual" dengan pemeriksaan apakah alat aksesibilitas VM berjalan dengan benar.
Tempatkan setiap host dan hostgroup dalam file sendiri. File itu harus mengandung definisi host atau hostgroup terlebih dahulu, diikuti oleh definisi layanan yang berlaku untuknya.
Jika Anda menggunakan cfg_dir
arahan dalam nagios.cfg
file Anda , Nagios akan mencari secara rekursif melalui direktori itu. Manfaatkan itu. Untuk pengaturan cfg_dir=/etc/nagios/conf.d
, Anda dapat memiliki pohon direktori seperti berikut:
- /etc/nagios/conf.d/
- perintah.d /
- http.cfg
- nrpe.cfg
- smtp.cfg
- ssh.cfg
- hosts.d /
- host1.cfg
- host2.cfg
- host3.cfg
- hostgroups.d /
- hostgroup1.cfg
- hostgroup2.cfg
Saya cenderung membuat direktori untuk setiap jenis sumber daya (perintah, grup kontak, kontak, peningkatan, grup host, host, grup layanan, timeperiod) kecuali untuk layanan, yang dikelompokkan dengan host atau grup host yang menggunakannya.
Struktur yang tepat dapat bervariasi sesuai dengan kebutuhan organisasi Anda. Di pekerjaan sebelumnya, saya menggunakan subdirektori di bawah hosts.d
untuk setiap situs yang berbeda. Pada pekerjaan saya saat ini, sebagian besar definisi nagios host dikelola oleh Puppet, jadi ada satu direktori untuk host yang dikelola Puppet dan yang terpisah untuk host yang dikelola dengan tangan.
Perhatikan bahwa di atas juga membagi perintah menjadi beberapa file, umumnya dengan protokol. Dengan demikian, nrpe.cfg
berkas akan memiliki perintah check_nrpe
dan check_nrpe_1arg
, sementara http.cfg
bisa memiliki check_http
, check_http_port
, check_https
, check_https_port
, dan check_https_cert
. 1
Saya biasanya tidak memiliki banyak template, jadi saya biasanya hanya punya hosts.d/templates.cfg
file dan services.d/templates.cfg
file. Jika Anda menggunakannya lebih banyak, mereka dapat masuk ke file yang dinamai secara tepat dalam templates.d
direktori.
1 Saya juga ingin memiliki check_http_blindly
perintah, yang pada dasarnya check_http -H $HOSTADDRESS$ -I $HOSTADDRESS$ -e HTTP/1.
; mengembalikan OK bahkan jika mendapat kode respons 403.