Pemantauan jarak jauh nagios: NRPE Vs. SSH

8

Kami menggunakan Nagios untuk memantau beberapa (~ 130) server. Kami memantau CPU, Disk, RAM dan beberapa hal lain di setiap server. Saya selalu menggunakan SSH untuk menjalankan perintah jarak jauh, semata-mata karena hanya memerlukan sedikit atau tidak ada konfigurasi tambahan pada server jarak jauh, cukup instal nagios-plugins, buat pengguna nagios dan tambahkan kunci SSH, yang semuanya telah saya otomatiskan menjadi skrip shell. Saya tidak pernah benar-benar mempertimbangkan implikasi kinerja menggunakan SSH melalui NRPE.

Saya tidak terlalu peduli dengan hit beban pada server Nagios (Ini mungkin terlalu spesifik untuk apa yang dilakukannya, itu tidak pernah lebih dari 10% CPU), tapi kami menjalankan setiap pemeriksaan jarak jauh setiap 30 detik dan setiap server memiliki 5 pemeriksaan berbeda dilakukan. Saya berasumsi SSH membutuhkan lebih banyak sumber daya untuk setiap pemeriksaan tetapi apakah ada perbedaan besar? (Yaitu cukup perbedaan untuk menjamin beralih ke NRPE).

Jika ada bantuan, kami memantau campuran server fisik (Biasanya dengan 8, 12 atau 16 core fisik) dan instance Amazon EC2 menengah / besar.

Noda
sumber

Jawaban:

6

Saya selalu percaya keuntungan administrasi SSH (saya menggunakan push_check ) melebihi beban tambahan apa pun. CPU modern sangat cepat sehingga biaya mengenkripsi beberapa byte sangat minim, sehingga turun untuk menjalankan dua proses (SSH dan skrip cek) vs satu (skrip cek dipecat oleh NRPE).

Untuk skrip cek yang ditulis dalam bahasa yang diinterpretasikan, saya akan mengharapkan biaya untuk mengaktifkan penerjemah (Perl, Python, Bash) melebihi biaya CPU untuk memulai sesi SSH. Mengingat CPU modern, mesin Anda lebih cenderung terbatas pada disk atau memori daripada terbatas pada CPU.

Asalkan mesin Nagios Anda dapat mengatasi - ia harus mengatur 20 koneksi SSH setiap detik - saya akan berbuat salah di sisi kenyamanan.

Tidak benar-benar jawaban untuk pertanyaan Anda, lebih dari argumen bahwa hidup ini terlalu singkat untuk dikhawatirkan :)

Dan
sumber
6

NRPE adalah plugin nagios, mudah untuk menginstal dan akan mengatur cek pada file konfigurasi probe. Hanya ada satu hal buruk tentang nrpe, Anda harus menginstalnya di setiap server yang ingin Anda pantau, di linux itu sangat sederhana, hanya yum / apt-get install nrpe, tetapi pada windows server Anda perlu menginstalnya melalui .exe , dan terkadang Anda harus me-reboot server Anda.

Saya pikir SSH bukan cara yang paling optimal untuk menggunakan nagios. NRPE mungkin jauh lebih efisien.

Di sini, di dokumentasi nagios ada kalimat ini:

"Menggunakan SSH lebih aman daripada addon NRPE, tetapi itu juga membebankan overhead (CPU) yang lebih besar pada monitor dan mesin jarak jauh. Ini dapat menjadi masalah ketika Anda mulai memantau ratusan atau ribuan mesin. Banyak admin Nagios memilih untuk menggunakan menggunakan addon NRPE karena beban lebih rendah yang dikenakannya. "

ada dokumentasinya. Ini adalah .pdf

Sedangkan saya, saya menggunakan protokol snmp, yang mudah digunakan, dan tidak perlu pihak ketiga diinstal di server.

Anarko_Bizounours
sumber
Saya memang melihat ke SNMP tapi kami memantau hal-hal seperti database / statistik aplikasi yang saya pikir tidak dapat diatur untuk menggunakan SNMP. Saya tidak terlalu khawatir tentang keamanan pemantauan, SSH dipilih murni untuk menghindari konfigurasi tambahan. Seperti ketika kita ingin menambahkan / mengubah perintah dengan SSH kita hanya mengubah konfigurasi NAGIOS tetapi dengan NRPE kita perlu menambahkannya ke nrpe.conf di server jarak jauh juga.
Corengan
itu benar, nrpe sedikit mengganggu karena Anda perlu menambahkan .conf ke server jauh. Sedangkan untuk SNMP, Anda akan dapat melakukan apapun yang Anda inginkan (jika saya tidak salah), Anda dapat membuat prob sendiri dengan perl dan melalui snmp menggunakan probe Anda, ini lebih mudah daripada nrpe karena Anda tidak perlu mengubah .conf pada server jauh, dan kurang serakah dari SSH. Nah setelah itu hanya sudut pandang dan untuk apa Anda akan menggunakan nagios. Nrpe adalah kompromi yang baik antara ssh dan snmp, setidaknya bagi saya. Semoga harimu menyenangkan.
Anarko_Bizounours
3

Selain saran yang diberikan dalam jawaban lain, sudahkah Anda mempertimbangkan untuk mengaktifkan ControlMasterfile .ssh / config nagios untuk memanfaatkan sepenuhnya multiplexing ssh ?

Dengan kata lain koneksi SSH Anda akan 'tetap' jadi biaya overhead untuk membangunnya minimal karena ini hanya akan terjadi sekali. Ini masih akan menjamin privasi dengan enkripsi, dan melindungi Anda dari meninggalkan port TCP terbuka di server (meskipun firewall). Plus, Anda dapat membatasi apa yang dilakukan pengguna melalui ssh dengan membatasi perintah yang dapat dijalankannya

lorenzog
sumber
0

Saya tidak punya masalah selain mencoba mengkompilasi NRPE pada berbagai OS. SSH telah bekerja dengan lancar dan efisien dan jauh lebih mudah untuk dihapus.

heybails
sumber
4
Ini sepertinya lebih merupakan masalah dengan sistem yang Anda kerjakan daripada NRPE - Saya bukan penggemar Nagios, tetapi NRPE adalah kode yang cukup sederhana dan saya tidak pernah memiliki masalah mengompilasinya ...
voretaq7