Cara Menyiapkan NRPE untuk Pemantauan Sisi Pelanggan

Cara Menyiapkan NRPE untuk Pemantauan Sisi Pelanggan

NRPE, atau NAGIOS Remote Plugin Executor, adalah perkhidmatan sampingan pelanggan dari persediaan pemantauan. Pelayan pemantauan akan menghantar arahan kepada pelanggan, yang mendengarkan secara pasif apabila tidak mendapat kerja yang perlu dilakukan. Atas arahan masuk, nrpe memeriksa konfigurasi tempatan, dan melaksanakan plugin yang dikonfigurasikan dengan arahan, kemudian menghantar kembali hasilnya ke pelayan untuk diproses. Anda boleh membaca lebih lanjut mengenai pemasangan sisi pelayan dalam panduan pemasangan Nagios, sementara panduan ini akan memberi tumpuan kepada pihak klien.

Dalam tutorial ini anda akan belajar:

  • Cara Memasang NRPE pada Pengagihan Berdasarkan Debian/Red Hat
  • Cara mengkonfigurasi NRPE untuk menerima arahan dari pelayan
  • Cara mengkonfigurasi cek tersuai di sisi pelayan dan klien
NRPE - Executor Plugin Jauh Nagios

Keperluan perisian dan konvensyen yang digunakan

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Ubuntu 18.04, Fedora 30
Perisian Nagios 4.3.4, NRPE 3.2.1
Yang lain Akses istimewa ke sistem linux anda sebagai akar atau melalui sudo perintah.
Konvensyen # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Memasang NRPE pada Pengagihan Berdasarkan Debian/Red Hat

Memasang perisian yang diperlukan adalah mudah. Kami akan meliputi Ubuntu, OpenSuse, Fedora dan RHEL.

Memasang NRPE di Ubuntu

Di Ubuntu, proses ini adalah satu pelapis. Pakej Daemon NRPE, yang dipanggil Nagios-nrpe-server, berada di repositori lalai.

# apt-get memasang nagios-nrpe-server

Sekiranya Ubuntu, fail konfigurasi utama adalah /etc/nagios/nrpe.cfg, Direktori yang disertakan secara lalai adalah /etc/nagios/nrpe.d/, yang boleh digunakan untuk konfigurasi drop-in. Pakej ini juga menambah fail konfigurasi tempatan yang kosong /etc/nagios/nrpe_local.cfg untuk kemudahan. Yang terakhir ini tidak termasuk dalam rpm pengagihan berasaskan.



Memasang NRPE di OpenSuse

Pada versi OpenSuse baru -baru ini, perisian NRPE juga dibungkus dalam repositori lalai. Jadi pemasangannya adalah satu arahan Linux.

# zyper di nrpe

Tidak seperti distro lain, OpenSuse meletakkan fail konfigurasi utama ke jalan /etc/nrpe.cfg.

Memasang NRPE di Fedora

Projek fedora juga pakej nrpe, Oleh itu, ia harus dapat dicapai dari repositori lalai. Kami hanya akan menggunakan DNF untuk pemasangan.

# DNF Pasang NRPE

Fail konfigurasi utama akan /etc/nagios/nrpe.cfg, dan direktori termasuk lalai adalah /etc/nrpe.d/.

Memasang NRPE di Red Hat Enterprise Linux

Sekiranya Rhel, nrpe Pakej tidak berada di repositori lalai. Anda perlu mengaktifkan repositori epel untuk memasang pakej dari sana.

Anda boleh mengikuti langkah -langkah yang diterangkan dalam panduan untuk membolehkan repositori EPEL, atau mengimport dan menerbitkan kandungan repositori EPEL, jika anda mempunyai persekitaran tertutup dengan pengedaran perisian dalaman. Dalam kedua -dua cara, selepas repositori tersedia untuk mesin klien, proses pemasangan adalah sama seperti di atas.

# yum pasang nrpe

Fail konfigurasi berada di tempat yang sama seperti dalam kes fedora.

Amaran
Sentiasa melakukan ujian berhati -hati sebelum membolehkan repositori baru ke persekitaran pengeluaran. Dalam kes ini, Epel mungkin mengandungi pakej yang dapat dilihat sebagai kemas kini untuk pakej red hat, mengakibatkan perubahan perisian yang tidak dijangka pada sistem ketika menjalankan kemas kini penuh.

Mengkonfigurasi NRPE untuk menerima arahan dari pelayan

Untuk mengkonfigurasi perkhidmatan pelanggan, kami boleh menggunakan fail konfigurasi utama, tetapi saya cadangkan menggunakan fail tersuai dan meletakkannya ke dalam direktori yang dimasukkan ke dalam fail konfigurasi utama. Dengan cara ini kemas kini yang datang dari peningkatan pakej nrpe.cfg boleh digunakan tanpa perubahan pada konfigurasi tersuai kami.

Kami juga boleh memasukkan fail konfigurasi tersuai kami sendiri dalam pakej tersuai kami, dengan itu membolehkan mengemas kini konfigurasi pemantauan klien dengan cara yang berpusat dan automatik. Mengingati itu, kami akan mengkonfigurasi pelanggan /etc/nrpe.d/adat.cfg mengenai semua pengagihan dalam contoh berikut.

NRPE tidak menerima arahan yang lain ketika itu localhost Secara lalai. Ini kerana alasan keselamatan. Untuk membenarkan pelaksanaan arahan dari pelayan, kita perlu menetapkan alamat IP pelayan sebagai alamat yang dibenarkan. Dalam kes kami pelayan adalah pelayan Nagios, dengan alamat IP 10.101.20.34. Kami menambah perkara berikut kepada konfigurasi pelanggan kami:

dibenarkan_hosts = 10.101.20.34


Pelbagai alamat atau nama host boleh ditambah, dipisahkan oleh koma. Perhatikan bahawa logik di atas memerlukan alamat statik untuk pelayan pemantauan. Menggunakan DHCP Pada pelayan pemantauan pasti akan memecahkan konfigurasi anda, jika anda menggunakan alamat IP di sini. Perkara yang sama berlaku pada senario di mana anda menggunakan nama host, dan pelanggan tidak dapat menyelesaikan nama hos pelayan.

Mengkonfigurasi cek tersuai di sisi pelayan dan klien

Untuk menunjukkan kapasia persediaan pemantauan kami, katakan kami ingin mengetahui sama ada sistem postfix tempatan menyampaikan surat kepada pelanggan untuk pengguna akar. Mel boleh mengandungi a Cronjob output, beberapa laporan, atau sesuatu yang ditulis kepada Stderr dan dihantar sebagai mel secara lalai. Contohnya, abrt menghantar laporan kemalangan ke akar Secara lalai pada kemalangan proses. Kami tidak menyiapkan relay mel, tetapi kami masih ingin tahu jika mel tiba. Mari tulis cek tersuai untuk memantau itu.

  1. Sekeping teka -teki pertama kami adalah cek itu sendiri. Pertimbangkan skrip bash sederhana berikut yang dipanggil check_unread_mail:
    #!/bin/bash user = root if ["$ (command -v finger >>/dev/null; echo $?) "-gt 0]; maka echo" tidak diketahui: jari utiliti tidak dijumpai "keluar 3 fi jika [" $ (id "$ user" >> /dev /null; echo $?) "-gt 0]; maka echo" tidak diketahui: pengguna $ pengguna tidak wujud "keluar 3 fi ## periksa mel jika [" $ (finger -pm "$ user" | tail -n 1 | grep -ic "no mel.")" -gt 0]; Kemudian echo "OK: Tiada Mel yang belum dibaca untuk Pengguna $ Pengguna" Keluar 0 Else Echo "Amaran: Mail belum dibaca untuk Pengguna $ User" Keluar 1 FI
    Salinan

    Pemeriksaan mudah ini menggunakan jari utiliti untuk menyemak surat yang belum dibaca untuk pengguna akar. Output jari -pm boleh berubah mengikut versi dan dengan itu pengedaran, jadi beberapa pelarasan mungkin diperlukan.

    Contohnya di Fedora 30, garis terakhir output jari -pm adalah "Tidak ada surat.", Tetapi pada OpenSuse Leap 15.1 Ia akan "tidak ada surat."(Perhatikan surat kes atas). Dalam kes ini grep -i mengendalikan perbezaan ini, tetapi ia menunjukkan dengan baik bahawa apabila bekerja dengan pengagihan dan versi yang berbeza, beberapa kerja tambahan mungkin diperlukan.

  2. Kita perlukan jari Untuk membuat pemeriksaan ini berfungsi. Nama pakej adalah sama pada semua pengagihan, jadi kami boleh memasangnya dengan Apt, zyper, DNF atau yum.
  3. Kita perlu menetapkan cek yang boleh dilaksanakan:
    # chmod +x check_unread_mail
  4. Kami akan meletakkan cek ke dalam /usr/lib64/nagios/plugin direktori, tempat biasa untuk pemeriksaan NRPE. Kami akan merujuknya kemudian.
  5. Kami akan memanggil arahan kami check_mail_root. Mari letakkan baris lain ke dalam konfigurasi pelanggan tersuai kami, di mana kami memberitahu nrpe Apa yang kami terima, dan apa yang perlu dilakukan apabila perintah yang diberikan tiba:
    perintah [check_mail_root] =/usr/lib64/nagios/plugins/check_unread_mail
  6. Dengan ini konfigurasi pelanggan kami selesai. Kami boleh memulakan perkhidmatan pada pelanggan dengan sistemd. Nama perkhidmatan adalah Nagios-nrpe-server mengenai derivatif debian, dan sederhana nrpe pada pengagihan lain.
    # Systemctl Mula Nagios-Nrpe-Server # Systemctl Status Nagios-Nrpe-Server ● Nagios-nrpe-server.Perkhidmatan-Nagios Remote Plugin Executor Loaded: Loaded (/lib/Systemd/System/Nagios-nrpe-server.perkhidmatan; didayakan; Pratetap Vendor: Diaktifkan) Aktif: Aktif (Running) Sejak Tue 2019-09-10 13:03:10 CEST; Dokumen 1min 51s yang lalu: http: // www.Nagios.Org /Dokumentasi utama PID: 3782 (NRPE) Tugas: 1 (Had: 3549) Kumpulan: /Sistem.slice/nagios-nrpe-server.perkhidmatan └─3782/usr/sbin/nrpe -c/etc/nagios/nrpe.CFG -F SZEPT 10 13:03:10 Sistem Ujian Mail-Test [1]: Memulakan Executor Plugin Jauh Nagios. Szept 10 13:03:10 NRPE-Ujian Mail-Ujian [3782]: Memulakan Daemon Szept 10 13:03:10 NRPE-Ujian Mail-Client [3782]: Mendengarkan pelayan pada 0.0.0.0 port 5666. Szept 10 13:03:10 NRPE-Ujian Mail-Test [3782]: Mendengarkan pelayan pada :: port 5666. Szept 10 13:03:10 NRPE-Ujian Mail-Test [3782]: Mendengarkan Sambungan di Port 5666


  7. Sekarang kita dapat mengkonfigurasi sisi pelayan. Sekiranya kita belum memilikinya, kita dapat menentukan perintah yang memanggil jauh nrpe contoh dengan arahan kerana ia adalah hujah tunggal:
    # Perintah ini menjalankan program $ arg1 $ tanpa argumen menentukan perintah command_name check_nrpe_1arg command_line $ user1 $/check_nrpe -h $ hostaddress $ -t 60 -c $ arg1 $ 2>/dev/null
    Salinan
  8. Kami juga menentukan pelanggan sebagai tuan rumah:
    Tentukan Host Gunakan Linux-Server Host_name Mail-Test-Client Alias ​​Mail-Test-Client Alamat Mail-Test-Client
    Salinan

    Alamat boleh menjadi alamat IP atau nama host. Dalam kes kemudian kita perlu memastikan ia dapat diselesaikan oleh pelayan pemantauan.

  9. Kami boleh menentukan perkhidmatan di hos di atas menggunakan arahan sampingan Nagios dan arahan sampingan pelanggan:
    Tentukan Perkhidmatan Gunakan perkhidmatan host_name-test-client-client generic-service os: belum dibaca mel untuk check_command check_nrpe_1arg!check_mail_root
    Salinan

    Pelarasan ini boleh diletakkan pada sebarang fail konfigurasi yang dibaca oleh pelayan Nagios pada permulaan, tetapi ia adalah amalan yang baik untuk menyimpan fail konfigurasi.

  10. Kami mengesahkan konfigurasi Nagios baru kami:
    # nagios -v/etc/nagios/nagios.cfg

    Jika "perkara kelihatan baik -baik saja", kita boleh menggunakan konfigurasi dengan tambah nilai pelayan:

    # Systemctl Reload Nagios

Kesimpulan

Jika semuanya berfungsi, dalam beberapa minit kita akan melihat pelanggan baru kami muncul di laman web Nagios, dengan perkhidmatan baru "OS: Unread Mail for Root", dan dengan status sebagai "ok" hijau (iaitu, jika ada ' Surat yang belum dibaca untuk akar).

Laporan skrip di atas hanya memberi amaran jika surat baru tiba dengan tujuan: dalam persekitaran contoh, ia tidak dianggap sebagai isu kritikal, kemalangan aplikasi sepatutnya menghasilkan cara ralat kritikal sebelum mel tiba di dalamnya. Di latar belakang, pelayan Nagios melepasi perintah "check_mail_root" kepada pelanggan, di mana nrpe Melaksanakan skrip tersuai kami, yang menyediakan output "OK: Tiada Mail belum dibaca untuk Root Pengguna", dan Kod Keluar 0 (yang diterjemahkan oleh Nagios sebagai "OK" keadaan).

Persediaan mudah ini bertujuan untuk menunjukkan aliran arahan dan data dalam konfigurasi NAGIOS+NRPE, serta menerangkan cara asas untuk memperluaskan keupayaan pemantauan kami. Pemeriksaan Countles (dipanggil plugin) ditulis dalam pelbagai bahasa untuk penggunaan biasa, contohnya parsing logfile, cek pangkalan data, maklumat status webserver, dan sebagainya.

Ramai di antara mereka juga telah dibungkus di repositori yang disebutkan di atas, dan lebih banyak lagi boleh didapati di halaman Nagios rasmi. Walaupun mereka adalah sumber yang hebat apabila kita perlu memantau sesuatu yang baru, jangan ambil begitu sahaja bahawa mereka akan melakukan apa yang anda perlukan dari kotak. Tweaking konfigurasi mereka dan ujian yang teliti diperlukan dalam kes ini juga, dan jika anda mendapati bahawa sedikit pengubahsuaian boleh menambah beberapa ciri/bugfix yang hebat, jangan ragu untuk menyumbang kembali kepada komuniti pemantauan. Inilah cara ia dibina di tempat pertama, selepas semua.

Tutorial Linux Berkaitan:

  • Gelung bersarang dalam skrip bash
  • Pengoptimuman Prestasi Linux: Alat dan Teknik
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Ubuntu 20.04 Pemantauan Sistem dengan Widget Conky
  • Cara Menghantar Pemberitahuan Desktop Menggunakan Pemberitahuan-Send
  • Ubuntu 22.04 Pemantauan Sistem dengan Widget Conky
  • Alat Pemantauan Sistem Terbaik untuk Linux
  • Sistem Hung Linux? Cara melarikan diri ke baris arahan dan ..
  • Linux: Persediaan SSH