Bagaimana cara mengelola ketergantungan Nagios pada kelompok besar?

8

Saya menggunakan konfigurasi nagios yang cukup besar (sekitar 4000 layanan), tanpa ketergantungan apa pun. Ini menghasilkan kekacauan pemberitahuan yang sangat besar ketika terjadi kesalahan.

Saya mencoba mencari praktik terbaik dengan Nagios Dependencies, tetapi semua yang saya temukan di web adalah pemahaman dasar dengan satu contoh. Yang saya butuhkan adalah informasi yang lebih dalam, praktik terbaik tentang cara mengelola file konfigurasi seperti itu.

Contoh: Pada sekelompok 100 server dengan apache mendengarkan masing-masing, saya memantau jumlah proses apache dan port tcp mendengarkan 80. Saya ingin membuat satu bergantung pada yang lain, tetapi depend_hostgroup_name tidak akan melakukan trik seperti itu mengakibatkan semua layanan "proses cek" bergantung pada setiap layanan "check_http".

Pertanyaannya adalah: Bagaimana Anda mengelola dependensi Anda? Apakah Anda menggunakan skrip untuk menghasilkannya?

Falken
sumber
1
Orang ini memiliki masalah yang sama: dimmeria.com/node/1804 bagi saya kelihatannya scripting / templating adalah satu-satunya cara :( Saya harap seseorang melakukannya sebelum saya sehingga saya tidak perlu melakukannya.
Falken

Jawaban:

2

Setuju bahwa itu cukup sulit dilakukan tanpa scripting.

Untuk setiap perintah pemeriksaan layanan, saya telah mendefinisikan (dalam tabel db) apa yang biasanya tergantung, yang menyelamatkan saya dari keharusan mengkonfigurasi secara manual setiap ketergantungan layanan. Host dependensi saya lakukan dengan tangan, tetapi melakukan penemuan alamat mac pada switch melalui skrip adalah sesuatu yang akan membantu mengotomatisasi itu.

contoh:

"check_http_content" akan bergantung pada "check_http" yang akan bergantung pada "check_ping".
"check_cisco_ifstate" akan bergantung pada "check_snmp_ok" yang tergantung pada "check_ping"

Jika Anda membangun konfigurasi dari database menggunakan skrip, ini tidak terlalu sulit untuk diterapkan. Jika tidak, Anda ingin menulis parser untuk membaca file konfigurasi Anda, dan menyisipkan dependensi berdasarkan aturan.

Saya tidak bisa membayangkan memiliki implementasi nagios yang cukup besar tanpa memiliki basis data konfigurasi tempat Anda membangun konfigurasi, memungkinkan Anda untuk menambahkan abstraksi Anda sendiri ketika nagi tidak memilikinya, dan membuat hidup lebih sederhana dengan banyak cara lain.

Michael Mittelstadt
sumber