GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Monit di CentOS 8 / RHEL 8

Monit adalah alat pemantauan proses sumber terbuka untuk sistem operasi Linux yang membantu Anda memantau proses sistem. Setiap kali layanan/proses mati, secara otomatis melakukan pemeliharaan dan perbaikan proses tertentu dan memastikannya kembali online.

Monit juga dapat digunakan untuk mengelola dan memantau program, file, direktori, sistem file, pemeriksaan jaringan TCP/IP, pemeriksaan protokol, dan dapat menggunakan SSL untuk pemeriksaan tersebut.

Itu masuk ke file lognya dan memberi tahu pengguna melalui pesan yang dapat disesuaikan.

Panduan ini akan membantu Anda mengatur Monit di CentOS 8 / RHEL 8.

Instal Monit

Instal alat build yang diperlukan karena Monit belum dikemas sebagai rpm untuk CentOS 8 / RHEL 8.

dnf install -y git gcc glibc make glibc-devel kernel-header autoconf automake libtool bison flex libzip-devel pam-devel openssl openssl-devel

Kloning kode sumber Monit untuk kompilasi.

git clone https://bitbucket.org/tildeslash/monit.git

Kompilasi Monit dengan serangkaian perintah berikut.

cd monit./bootstrap./configuremakemake install

Konfigurasi Monit

Fungsionalitas

Salin file monitrc dari sumber yang diunduh ke direktori /etc.

cp monitrc /etc/

Kami akan membuat beberapa perubahan pada file konfigurasi Monit untuk kebutuhan kami.

vi /etc/monitrc

Secara default, Monit diatur untuk memeriksa layanan pada interval 30 detik. Interval ini dapat dimodifikasi dengan mengubah baris di bawah ini.

setel daemon 30

Anda dapat mengatur server email untuk menerima peringatan di kotak masuk Anda.

setel server surat mx.itzgeek.local port 25
Peringatan email dapat dikustomisasi menggunakan templat bawaan yang ditemukan di file konfigurasi itu sendiri. Lihat peringatan email dengan Monit di bagian bawah artikel ini untuk informasi lebih lanjut.

Pengaturan log dapat diubah dengan menggunakan file berikut.

setel log /var/log/monit.log

Pastikan untuk menghapus komentar pada baris di bawah ini. Kami akan menempatkan file pemantauan layanan di sini.

sertakan /etc/monit.d/*

Antarmuka Web

Monit juga menyediakan antarmuka web untuk memantau dan mengelola layanan yang dikonfigurasi. Secara default, Monit mendengarkan pada port 2812, tetapi perlu diatur.

Edit file konfigurasi Monit /etc/monitrc.

vi /etc/monitrc

Cari port httpd 2812, ubah entri berikut.

DARI:

set httpd port 2812 dan gunakan alamat localhost # hanya terima koneksi dari localhost izinkan localhost # izinkan localhost terhubung ke server dan izinkan admin:monit # minta pengguna 'admin' dengan kata sandi 'monit' #dengan ssl { # aktifkan SSL /TLS dan atur jalur ke sertifikat server # pemfile:/etc/ssl/certs/monit.pem #}

KEPADA:

setel port httpd 2812 dan gunakan alamat 0.0.0.0 # hanya terima koneksi dari localhost (lepaskan jika Anda menggunakan M/Monit) izinkan 0.0.0.0/0 # izinkan localhost terhubung ke server dan izinkan admin:monit # meminta pengguna 'admin' dengan kata sandi 'monit' #with ssl { # aktifkan SSL/TLS dan setel jalur ke sertifikat server # pemfile:/etc/ssl/certs/monit.pem #}

Dari pengaturan di atas, Monit akan mendengarkan pada port 2812 di semua antarmuka. Pengguna admin akan dapat mengakses antarmuka web dari jaringan mana pun.

Pengaturan Sistem

Sekarang kita akan membuat file systemd untuk memulai Monit secara otomatis pada startup sistem.

vi /lib/systemd/system/monit.service

Gunakan pengaturan di bawah ini.

 # File ini adalah template systemd untuk layanan monit. Untuk # mendaftarkan monit dengan systemd, tempatkan file monit.service # ke direktori /lib/systemd/system/ dan kemudian mulai # menggunakan systemctl (lihat di bawah). # # Aktifkan monit untuk memulai saat boot:# systemctl aktifkan monit.service # # Mulai monit segera:# systemctl start monit.service # # Hentikan monit:# systemctl stop monit.service # # Status:# systemctl status monit.service [Unit ] Description=Utilitas pemantauan proaktif untuk sistem unix After=network.target Documentation=man:monit(1) https://mmonit.com/wiki/Monit/HowTo [Service] Type=simple KillMode=process ExecStart=/usr /local/bin/monit -I ExecStop=/usr/local/bin/monit quit ExecReload=/usr/local/bin/monit reload Restart =on-abnormal StandardOutput=null [Install] WantedBy=multi-user.target  

Muat ulang daemon systemd.

systemctl daemon-reload

Mulai layanan Monit.

systemctl start monit

Auto-start Monit saat start-up.

systemctl aktifkan monit

Firewall

Konfigurasikan firewall untuk mengizinkan akses ke antarmuka web Monit, yang berjalan pada port 2812.

firewall-cmd --permanent --add-port=2812/tcpfirewall-cmd --reload

Akses antarmuka web Monit

Buka browser web Anda dan buka URL di bawah ini.

http://your.ip.addr.ess:2812

ATAU

http://your.fq.dn:2812

Gunakan nama pengguna dan kata sandi yang disebutkan di langkah sebelumnya.

Halaman beranda Monit akan terlihat seperti ini:

Konfigurasikan layanan untuk pemantauan dengan Monit

Setelah antarmuka web siap, kami dapat mulai menyiapkan layanan lain yang ingin Anda pantau.

mkdir /etc/monit.d/

Anda dapat menempatkan file konfigurasi di bawah direktori /etc/monit.d/.

Konfigurasikan layanan untuk syslog.

vi /etc/monit.d/syslogmonitor

Gunakan informasi di bawah ini.

periksa proses SysLog dengan pidfile /var/run/rsyslogd.pidstart program ="/usr/bin/systemctl start rsyslog.service"stop program ="/usr/bin/systemctl stop rsyslog.service"

Layanan konfigurasi untuk HTTP.

vi /etc/monit.d/httpdmonitor

Gunakan informasi di bawah ini.

periksa proses HTTPD dengan pidfile /var/run/httpd/httpd.pidstart program "/usr/bin/systemctl start httpd.service"stop program "/usr/bin/systemctl stop httpd.service"jika protokol port 80 gagal http lalu mulai ulang

Setelah dikonfigurasi, uji sintaks Monit

monit -t

Keluaran:

Kontrol sintaks file OK

Muat ulang Monit untuk menerapkan perubahan.

systemctl reload monit

Akses antarmuka web. Anda akan melihat layanan baru yang baru saja kami konfigurasikan.

Mengklik layanan akan memberi Anda informasi lebih lanjut tentang layanan tertentu. Di sini, Anda dapat melakukan tindakan seperti memulai, menghentikan, dan memulai ulang layanan, dan juga menonaktifkan pemantauan.

Uji Pemantauan

Sekarang hentikan layanan HTTP untuk pengujian kami.

systemctl stop httpd

Tunggu selama 30 detik, Monit akan memulai syslog secara otomatis. Anda dapat menemukannya di log Monit.

cat /var/log/monit.log

Keluaran:

[EST Jan 27 20:37:03] error :proses 'HTTPD' tidak berjalan[EST Jan 27 20:37:03] info :'HTTPD' mencoba memulai ulang[EST Jan 27 20:37:03] info :'HTTPD' start:'/usr/bin/systemctl start httpd.service'[EST 27 Jan 20:37:38] info :Proses 'HTTPD' berjalan dengan pid 25270

Peringatan Email dengan Monit

Ada templat peringatan standar yang tersedia di Monit untuk memperingatkan administrator sistem ketika layanan tertentu gagal. Untuk demo ini, kami akan menggunakan relai lokal (server email) untuk memperingatkan pengguna root.

Edit file konfigurasi.

vi /etc/monitrc

Anda dapat memperbarui template peringatan di bawah ini sesuai kebutuhan Anda.

mengatur format surat { dari:Monit  subjek:peringatan monit -- $EVENT $SERVICE pesan:$EVENT Layanan $SERVICE Tanggal:$DATE Tindakan:$ACTION Host:$HOST Deskripsi:$DESCRIPTION Karyawan setia Anda, Monit}

Setel alamat penerima di sini untuk menerima peringatan tentang semua jenis tindakan

setel peringatan root@localhost

Setel alamat penerima di sini agar tidak waspada saat layanan dimulai ulang oleh pengguna.

setel peringatan root@localhost bukan pada { instance, action }

Terakhir, atur konfigurasi server email agar Anda dapat menerima email.

setel server email localhost

Di sini, saya menggunakan relai lokal dnf install -y sendmail &&systemctl start sendmail sehingga kami dapat membaca peringatan email melalui terminal untuk mengonfirmasi mekanisme peringatan.

Muat ulang layanan.

systemctl reload monit

Lihat Peringatan

Monit telah mengirim email ke pengguna root tentang proses HTTP.

cat /var/spool/mail/root

Keluaran:

Ke:[email protected]:peringatan monit -- Tidak ada HTTPDDTanggal:Sel, 28 Jan 2020 01:44:05 GMTX-Mailer:Monit 5.27.0MIME-Version:1.0Content-Type:text/ polos; charset=utf-8Content-Transfer-Encoding:8bitMessage-Id:<[email protected]>Tidak ada Layanan HTTPD Tanggal:Sen, 27 Jan 2020 20:44:05 Tindakan:mulai ulang Host:centos8.itzgeek .local Deskripsi:proses tidak berjalan Karyawan setia Anda, Monit @ ITzGeekDari [email protected] Sen 27 Jan 20:44:47 2020Jalur Kembali:Diterima:dari centos8.itzgeek.local (localhost [127.0.0.1] ) oleh centos8.itzgeek.local (8.15.2/8.15.2) dengan ESMTP id 00S1ilKL026285 untuk ; Sen, 27 Jan 2020 20:44:47 -0500Dari:"Monit" Ke:[email protected]:peringatan monit -- Ada HTTPDDTanggal:Sel, 28 Jan 2020 01:44 :47 GMTX-Mailer:Monit 5.27.0MIME-Versi:1.0Jenis Konten:teks/polos; charset=utf-8Content-Transfer-Encoding:8bitMessage-Id:<[email protected]>Ada Layanan HTTPD Tanggal:Sen, 27 Jan 2020 20:44:47 Tindakan:alert Host:centos8.itzgeek.local Deskripsi :proses berjalan dengan pid 26069 Karyawan setia Anda, Monit @ ITzGeek

ATAU

Gunakan mutt dnf install -y mutt, klien email untuk melihat peringatan.

Kesimpulan

Itu saja. Kami telah berhasil mengonfigurasi Monit di CentOS 8 / RHEL 8.


Cent OS
  1. Cara menginstal phpMyAdmin di RHEL 8 / CentOS 8

  2. Cara Menginstal Icinga 2 di CentOS 8 / RHEL 8

  3. Cara Menginstal Monit di CentOS 6

  1. Cara Menginstal P7Zip di RHEL 8 / CentOS 8

  2. Cara menginstal ntfs-3g di RHEL 8 / CentOS 8

  3. Cara Menginstal PHP-mbstring di RHEL 8 / CentOS 8

  1. Cara menginstal phantomjs di RHEL 8 / CentOS 8

  2. Cara menginstal Dropbox di RHEL 8 / CentOS 8

  3. Cara memasang kompas di RHEL 8 / CentOS 8