Memiliki atau mengelola sebuah server sangat diperlukan sebuah tools atau aplikasi untuk memantau resource yang digunakan dan up/down time supaya menghindari dari tidak bisa diaksesnya website atau aplikasi yang kita sajikan. Tools tersebut bisa berupa Monitoring, seperti tools yang akan kita bahas, yaitu Monit Server Monitoring.
Monit Server Monitoring
Monit adalah free open-source yang sangat berguna untuk memonitor dan mengatur proses pada server, file, directory, checksums, file system, permission, dan services seperti Apache, Nginx, MySQL, SSH, dan FTP secara otomatis.
Tentu, dengan adanya tools ini beserta fitur yang disediakan sangat membantu para System Administrator. Web Interface Monit juga sudah user friendly.
Cara Kerja Monit
Monit mempunyai kemampuan untuk memulai proses jika ada yang tidak berjalan, melakukan restart proses jika ada yang tidak merespon dan menghentikan proses jika resource-nya terlalu tinggi. Selain itu, bisa juga digunakan untuk memonitor directories, files, dan filesystem untuk merubah ukuran file, timestamp dan checksum. Tools ini juga memiliki log file dan alerts mengenai critical error dan recovery status yang terjadi.
Berikut akan kita bahas mengenai Cara Instalasi Monit Server Monitoring di CentOS 7, yang sebenarnya bisa diinstal juga pada RHEL, Fedora, Ubuntu, Linux Mint, maupun Debian.
Langkah Instalasi Monit di CentOS 7
BErikut ini adalah panduan install Monit Server Monitoring di CentOS 7:
Step 1 – Install Monit
Login sebagai root dan jalankan command di bawah ini.
$ yum install epel-release -y $ yum update -y $ yum install monit -y
Step 2 – Konfigurasi Monit
Tools ini mudah untuk dikonfigurasi, defaultnya memonitor services yang berjalan setia 2 menit dan menyimpan logs-nya ke /var/log/monit/
Monit berjalan di port 2812 menggunakan web server, untuk mengaktifkan interface webnya kamu perlu rubah konfigurasi filenya. Konfigurasinya ada /etc/monitrc
$ nano /etc/monit.conf
Ubah file konfigurasinya, masukkan IP Address atau nama domain server dan IP yang dapat dikoneksikan ke server. (x.x.x.x untuk IP Server, y.y.y.y untuk IP yang di-allow untuk connect ke server).
Kalau ingin siapapun bisa connect, comment pada allow y.y.y.y (Contoh: #allow y.y.y.y #allow localhost to connet to the server and).
Sebelum:
set httpd port 2812 and use address localhost # only accept connection from localhost allow localhost # allow localhost to connect to the server and allow admin:monit # require user 'admin' with password 'monit'
Sesudah:
set httpd port 2812 and use address x.x.x.x # only accept connection from localhost allow y.y.y.y. # allow localhost to connect to the server and allow admin:monit # require user 'admin' with password 'monit’
Step 3 – Restart Services
Setelah melakukan perubahan konfigurasi, restart services-nya.
$ service monit restart
Step 4 – Tambahkan Port di Firewall
Karena kami menggunakan CSF Firewall, maka perlu menambahkan port 2812 ke dalam Allow Incoming TCP Ports & Allow Outgoing TCP Ports, karena port tersebut bukan port default sehingga perlu di-allow secara manual.
$ nano /etc/csf/csf.conf
# Allow incoming TCP ports TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2812" # Allow outgoing TCP ports TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995,2812"
$ csf -r
Step 5 – Akses Monitoring Toolsnya.
Tampilan di atas adalah secara default, jika ingin menambahkan services lain untuk di monitoring maka perlu ikuti intruksi di bawah ini.
Baca Juga: Cara Install VestaCP di Ubuntu dan CentOS
Menambahkan Services Monitoring
Edit konfigurasi untuk menambahkan services dengan command di bawah ini.
$ nano /etc/monitrc
Kalau memakai Web Server Apache:
-
#Apache Services
check process apache with pidfile /var/run/httpd.pid Group apache start program = "/etc/init.d/httpd start" stop program = "/etc/init.d/httpd stop" If failed host 127.0.0.1 port 80 protocol http then restart If 5 restarts within 5 cycles then timeout
Kalau memakai Web Server Apache2:
-
#Apache2 Services
check process apache with pidfile /var/run/apache2.pid start program = "/etc/init.d/apache2 start” with timeout 60 seconds stop program = "/etc/init.d/apache2 stop"
Kalau memakai Web Server Nginx:
-
#Nginx Services
check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/nginx stop"
-
#MySQL Services
check process mysqld with pidfile /var/run/mysqld/mysqld.pid group mysql start program = "/etc/init.d/mysqld start" stop program = "/etc/init.d/mysql stop" if failed host 127.0.0.1 port 3306 then restart if 5 restarts within 5 cycles then timeout
-
#SSHID Services
check process sshd with pidfile /var/run/sshd.pid start program = "/etc/init.d/sshd start" stop program = "/etc/init.d/sshd stop" if failed host 127.0.0.1 port 22 protocol ssh then restart if 5 restarts within 5 cycles then timeout
Jika sudah, simpan dan exit file. Cek file syntax menggunakan command berikut.
$ monit -t Control file syntax OK
Jika sudah seperti ini maka instalasi Monit Monitoring dan penambahan services untuk dimonitor telah berhasil.
Baca Juga: Cara Instalasi LAMP Stack di CentOS 8
Simpulan
Script start program perlu disesuaikan dengan keadaan services, karena ada beberapa services yang tidak ada di initial script dan Monit Server Monitoring ini berguna untuk memantau services yang sedang berjalan sehingga kamu dapat melakukan perbaikan bila ada services yang down.
Selain Monit Monitoring, kamu juga bisa menggunakan beberapa tools monitoring lain yang bisa kamu simak pada artikel Server Monitoring Tools Gratis Terbaik.
Demikian artikel ini, jangan sungkan untuk meninggalkan ide-ide topik yang ingin kamu baca di blog Dewaweb. Semoga artikel ini membantu!