Instalasi dan Konfigurasi Nagios di Centos 6.4

Bekerja sebagai system administrator, tentunya gampang-gampang susah. Supaya sistem server tetap berjalan dengan semestinya, seorang SA harusnya bisa selalu siap sedia kapanpun dibutuhkan. Agar hal itu dapat terjadi, maka ada baiknya host yang ingin dimonitor sistemnya dipasangkan monitoring system. Kali ini, saya akan mencoba untuk menjelaskan langkah-langkah instalasi nagios, salah satu jenis monitoring tools yang kalau diambil polling pada para security guard sudah pasti mendapatkan rating tinggi karena sistemnya yang kompleks dan tampilan laporan yang mudah dibaca. Nagios juga memunculkan laporan yang lengkap, mulai dari aplikasi apa saja yang running di host dan bagaimana kondisinya, juga laporan mengenai hardware pada host, seperti processor, memory, disk quota, dan lain-lain.
Nagios adalah software open source, yang digunakan untuk melakukan monitor terhadap jaringan dan infrastruktur. Nagios akan memonitor server, switch, aplikasi, dan service. Nagios juga bisa disetting untuk mengirim alert via email ketika ada masalah (kondisi warning dan critical), lalu memberi pemberitahuan lagi ketika masalah tersebut sudah solved.
Nah, rencananya, saya punya skenario seperti ini.
Nagios Server: 192.168.1.57/24
Client yang dimonitor: 110.123.51.90/29 (berarti netmask 255.255.255.248)
~ Instalasi Nagios di Centos 6.4
Centos 6.4 adalah sistem operasi yang memang mengkhususkan diri untuk para server. Namun, nagios tidak tersedia secara default pada Centos. Oleh karena itu, hal yang pertama harus dilakukan adalah memperbaharui repository Centos dengan EPEL dari Fedora. Perhatikan versi Centos yang dipakai juga struktur Centos-nya, apakah i386 atau x86_64. Harus serupa, sehingga tidak terjadi error nantinya. Di sini, saya menggunakan Centos versi 6 yang 64 bit, sehingga EPEL-nya pun untuk yang 64 bit dan untuk Centos 6 yang terbaru. 😀
[ root@ayuwind ] # rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[ root@ayuwind ] # yum install nagios nagios-plugins nagios-plugins-all nagios-plugins-nrpe php php-pear mod_ssl net-snmp net-snmp-utils sendmail
Setelah install nagios, lalu buat user default untuk login ke nagios. Setiap habis mengkonfigurasi atau membuat user nagiosnya, jangan lupa untuk compile nagios ya.
[ root@ayuwind ] # htpasswd /etc/nagios/passwd nagiosadmin
[ root@ayuwind ] # nagios -v /etc/nagios/nagios.cfg <<< ini cara compile-nya
Setup service nagios, agar selalu running setiap start up, lalu start nagiosnya. Begitu juga dengan apache atau web servernya, kalau memang baru menginstall web server. Kalau sudah diinstall, cukup restart saja apache-nya.
[ root@ayuwind ] # chkconfig nagios on
[ root@ayuwind ] # /etc/init.d/nagios start
[ root@ayuwind ] # /etc/init.d/httpd restart
Jika sudah, coba cek di browser, ketikkan IP server tempat instalasi nagios, yaitu http://192.168.1.57/nagios. Jika nagios berhasil diinstall, maka halaman web akan menampilkan perintah login dan masukkan user nagiosadmin juga password yang tadi sudah diketikkan. Setelah masuk nagios, beralih ke bagian host groups, maka akan ada yang pending, biasanya ini si localhost dari server yang melakukan monitoring pada dirinya sendiri. 😀
~ Instalasi NRPE Pada Host Yang Dimonitor
Lalu, beralih ke host yang akan dimonitor, pada contoh kali ini, saya akan memonitor host dummy dengan IP 110.123.51.90 berikut. Dari port yang diketahui publik, kita akan memonitor PING, SSH, FTP, webserver, email, dan lain-lain. Sedangkan, untuk servis internal yang dicek via localhost, seperti MySQL, memcached, load sistem, usage memory, usage disk, processor, dan lain sebagainya. Untuk yang internal, maka pada host, dibutuhkan NRPE. Jangan lupa, aktifkan repository EPEL juga ya pada host, mengingat nagios dan nrpe tidak ada pada default Centos. 😀
[ root@host-ayu ] # rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[ root@host-ayu ] # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
[ root@host-ayu ] # yum -y install nagios nagios-plugins-all nrpe
[ root@host-ayu ] # chkconfig nrpe on
Lalu, langkah selanjutnya adalah, mengaktifkan beberapa konfigurasi agar monitoring server bisa mengirimkan instruksi via NRPE pada host yang dimonitor. Pertama, edit dulu nrpe.cfg pada host. Sebelum diedit, jangan lupa dibackup dulu ya, supaya kalau error, file asli tidak hilang. Sudah dibackup, kosongkan saja file asli. 😀
[ root@host-ayu ] # nano /etc/nagios/nrpe.cfg
Isikan dengan entry berikut ini:
log_facility=daemon
pid_file=/var/run/nrpe/nrpe.pid
server_port=5666
nrpe_user=nrpe
nrpe_group=nrpe
allowed_hosts=192.168.1.57
dont_blame_nrpe=1
debug=0
command_timeout=60
connection_timeout=300
include_dir=/etc/nrpe.d/
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
command[check_procs]=/usr/lib64/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
Pada bagian allowed_hosts, isikan dengan IP server yang menjadi monitoring server tadi, atau yang tadi diinstal nagios. Kalau perlu, IP Public-nya juga. 😀
~ Rules Firewall Untuk NRPE
Hal yang penting adalah mengubah rules firewall pada host yang dimonitor, agar traffic dan penggunaan NRPE yang ingin lewat, bisa masuk.
[ root@host-ayu ] # iptables -N NRPE
[ root@host-ayu ] # iptables -I INPUT -s 0/0 -p tcp –dport 5666 -j NRPE
[ root@host-ayu ] # iptables -I NRPE -s 198.211.117.251 -j ACCEPT
[ root@host-ayu ] # iptables -A NRPE -s 0/0 -j DROP
[ root@host-ayu ] # /etc/init.d/iptables save
Lalu, jalankan service NRPE pada host.
[ root@host-ayu ] # service nrpe start
Nah, kalau sudah start, kita beralih lagi pada server nagios, untuk mengkonfigurasi host apa saja yang ingin dimonitor dan servisnya apa saja.
~ Konfigurasi Host Pada Server Nagios
Nah, kali ini kita mulai pada serangkaian konfigurasi yang dibutuhkan oleh server monitoring nagios. Pertama-tama, yang harus dilakukan di sini adalah backup nagios.cfg yang ada pada /etc/nagios. Backup ini berguna apabila ada kesalahan konfigurasi, sehingga kita bisa load konfigurasi awal. Hehehehe. Sedia payung sebelum hujan gitu. 😛
[ root@ayuwin ] # cp /etc/nagios/nagios.cfg /etc/nagios/nagios.cfg.ori
[ root@ayuwin ] # nano /etc/nagios/nagios.cfg
Setelah terbuka, cari baris berikut ini cfg_dir = blablabla. Nah, di sini masukkan direktori yang akan berisikan file-file konfigurasi yang akan kita buat nanti, misalnya direktori bernama ayuhost. Posisi direktori ada di bawah /etc/nagios
[ root@ayuwin ] # mkdir ayuhost
Lalu, di halaman yang ingin diedit, tambahkan entry cfg_dir=/etc/nagios/ayuhost. Keluar dan save file nagios.cfg tadi, lalu compile dengan cara mengetikkan nagios -v /etc/nagios/nagios.cfg, untuk melihat apakah ada error atau tidak. Kalau tidak ada, biasanya total warning menunjukkan angka nol.
Nagios Core 3.4.4
Copyright (c) 2009-2011 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 01-12-2013
License: GPL
…..
Total Warnings: 0
Total Errors: 0
Things look okay – No serious problems were detected during the pre-flight check
Lalu, masuklah ke direktori ayuhost tadi, dan buat file konfigurasi untuk group host apa saja yang ingin dimonitor servisnya.
[ root@ayuwind ] # nano groups.cfg
Isinya kurang lebih seperti ini:
define hostgroup {
hostgroup_name apaaja
alias Apaaja
members Hostone
}
Nah, setelah group, buatlah konfigurasi host, dengan nama host yang ingin dimonitor, seperti yang telah disebutkan di group. Misal, namanya “Hostone”.
[ root@ayuwind ] # nano hosts.cfg
Isinya, kurang lebih seperti ini:
define host {
use linux-server
host_name Hostone
alias Hostone
address 110.123.51.90 <<< diganti dengan IP host yang ingin dimonitor
check_command check-host-alive
}
Save dan beralih ke halaman servis. Misalnya, kita ingin melakukan cek pada servis PING dan SSH. Maka, edit file services.cfg (caranya, nano saja seperti di atas), dan isikan dengan konfigurasi berikut ini.
define service{
use generic-service ; Name of service template
host_name Hostone
service_description SSH
check_command check_ssh
}
define service{
use generic-service
host_name Hostone
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
Save konfigurasi terakhir. Lalu, compile nagios dan restart nagiosnya.
[ root@ayuwind ] # nagios -v /etc/nagios/nagios.cfg
[ root@ayuwind ] # /etc/init.d/nagios restart
Lihat pada browser ke halaman nagios, kalau berhasil, akan ada satu lagi host dengan servis yang pending dan menunggu berjalan. Jika sudah, maka konfigurasi monitoring anda sudah berjalan.
Nah, untuk servis lainnya, tinggal cari saja bagaimana cara menambahkan konfigurasi untuk memonitor mereka
Referensi tambahan:

0 thoughts on “Instalasi dan Konfigurasi Nagios di Centos 6.4

Leave a Reply

Your email address will not be published. Required fields are marked *