Instalasi dan Konfigurasi Nagios Core 4.3.2 pada CentOS 7

Nagios Core adalah sebuah aplikasi yang berbasis open source dimana aplikasi ini memiliki kemampuan untuk memonitoring beberapa resource seperti server, firewall, switch, printer dan beberapa item lainnya. Nagios juga menyediakan fungsi alert, sebuah fungsi dimana Nagios akan memberitahukan sang administrator tentang issue yang sedang terjadi pada perangkat yang sedang dimonitoring sehingga sang administrator bisa segera memperbaiki issue tersebut.

Nagios juga menyediakan informasi berupa utilisasi CPU, utilisasi Disk, utilisasi Memori dan juga mendukung beberapa protokol jaringan seperti SMTP, HTTP, POP3, SNMP, ICMP, FTP dan SSH. Nagios akan menunjukkan semua informasi tersebut dalam sebuah layar tunggal yang menggunakan tampilan internet.

Pada kesempatan kali ini gw akan coba untuk melakukan instalasi Nagios Core 4.3.2 di atas CentOS 7. Adapun syarat sebelum melakukan instalasi adalah kita harus mempunyai superuser privileges dalam server CentOS dimana kita akan menjalankan nagios ini.

Instalasi Nagios 4.3.2

Langkah 1: Instalasi Paket-paket Penting

Kita perlu melakukan instalasi beberapa paket yang penting seperti apache, php dan beberapa paket lainnya yang mendukung instalasi Nagios Core nantinya. Gunakan perintah berikut untuk melakukan instalasi paket tersebut:

yum install httpd php gcc glibc glibc-comman gd gd-devel make net-snmp openssl-devel xinetd unzip -y
Instalasi paket

Langkah 2:  Membuat User dan User Group untuk Nagios

Kita harus membuat sebuah user dan grup yang akan menjalankan proses Nagios. Buat sebuah user “nagios” dan grup “nagcmd” kemudian tambahkan user tersebut (dan user apache) ke dalam grup tersebut dengan perintah berikut:

useradd nagios
passwd nagios
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd apache
Penambahan user nagios dan user group nagcmd kemudian menambahkan user nagios dan apache ke dalam group nagcmd

Langkah 3: Download dan Extract Paket Nagios Core

Download source code dari versi rilis Nagios Core terakhir dengan menggunakan perintah wget.

Pada saat tutorial ini di tulis, versi Nagios Core yang paling akhir dan paling stabil adalah versi 4.3.2

cd /opt
wget -c https://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.3.2/nagios-4.3.2.tar.gz
Download Paket Nagios Core 4.3.2

Ekstrak paket tersebut

tar -zxvf nagios-4.3.2.tar.gz
ekstrak paket Nagios Core

Langkah 4: Instalasi Nagios Core

Sekarang kita sudah siap untuk melakukan instalasi nagios pada server kita. Masuk ke dalam folder hasil ekstraksi tadi dan kemudian konfigur dengan perintah berikut:

cd nagios-4.3.2
ls
./configure --with-command-group=nagcmd
Masuk folder kemudian konfigur

Setelah itu compile Nagios dengan perintah berikut:

make all
make all

Sekarang kita bisa menjalankan perintah berikut untuk install Nagios, init scripts, dan beberapa contoh file konfigurasi:

make install
make install-commandmode
make install-init
make install-config
make install-webconf
make install
make install-init
make install-commandmode
make install-config

Langkah 5: Konfigurasi Nagios Core Web-Interface

Sekarang kita akan melakukan instalasi untuk web interface Nagios, karena kita akan menggunakan tampilan web untuk memonitoring resource dari sistem klien. Untuk meng-install-nya, jalankan perintah berikut:

make install-webconf
make install-webconf

Web interface akan terinstal dengan default user bernama nagiosadmin namun tidak memiliki passowrd. Kita akan memberikan password untuk user tersebut dengan perintah:

htpasswd -s -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Memberikan password pada user nagiosadmin

Langkah 6: Konfigurasi Alert Email

Meskipun ini sifatnya opsional, namun alangkah baiknya apabila tahapan ini dikerjakan. Dengan mengkonfigur email yang akan menerima alert pada nagios, kita akan terus terjaga selama 24/7. cara mengkonfigurasinya:

vi /usr/local/nagios/etc/objects/contacts.cfg

Kemudian pada bagian email, kita masukkan alamat email yang ingin dikirimkan alert oleh nagios

Alamat Email

Kemudian restart service apache agar semua konfigurasi tadi dapat terlihat

systemctl restart httpd

Langkah 7: Install Nagios Plugin

Pada 6 langkah di atas, kita sudah berhasil melakukan instalasi Nagios Core. Sekarang saatnya melakukan instalasi Nagios Plugin karena tanpa plugin tersebut kita tidak bisa memonitor resources yang tersedia.

Download Nagios Plugin versi yang paling akhir. Pada saat tutorial ini dibuat, versi paling akhir adalah nagios-plugins-2.2.1. Copy URL-nya kemudian download paketnya dengan menggunakan perintah wget.

cd /opt
wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
Download Nagios Plugin

Setelah berhasil di-download, extract file tersebut dengan perintah:

tar -zxvf nagios-plugins-2.2.1.tar.gz
ekstrak Nagios Plugin

Masuk ke dalam folder hasil ekstraksi tersebut kemudian konfigur

cd nagios-plugins-2.2.1
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
configure nagios plugin

Sekarang compile dan kemudian install dengan perintah berikut:

make
make install

Langkah 8: Verifikasi Nagios Files

Langkah terakhir ini adalah untuk memverifikasi Konfigurasi Nagios terhadap file sample konfigurasi

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Hasil keluarannya haruslah seperti berikut:

Verifikasi Nagios FIle

Konfigurasi Nagios

Sekarang mari mulai konfigurasi awal Nagios. Kita hanya perlu melakukan ini satu kali pada Nagios Server

Mengatur Konfigurasi Nagios

Buka konfigurasi utama nagios dengan menggunakan editor favorit anda. Pada contoh ini saya akan menggunakan vi untuk mengedit file berikut:

vi /usr/local/nagios/etc/nagios.cfg

Setelah itu cari baris berikut dan hapus komentar pada baris tersebut dengan menghapus tanda “#”

#cfg_dir=/usr/local/nagios/etc/servers

Simpan kemudian exit. Folder tersebut merupakan folder yang akan kita gunaan untuk menyimpan konfigurasi server yang akan kita monitoring. Ada beberapa konfigurasi lainnya pada file nagios.cfg tersebut untuk memonitoring printer, router, dan juga switch. Silahkan aktifkan apabila kalian memiliki kepentingan untuk memonitoring bagian-bagian tersebut.

Setelah itu sekarang kita kan membuat folder tersebut. Caranya:

mkdir /usr/local/nagios/etc/servers

Mengatur perintah check_nrpe

Mari tambahkan perintah baru pada konfigurasi nagios

vi /usr/local/nagios/etc/objects/commands.cfg

dan kemudian tambahkan konfigurasi berikut pada bagian paling akhir file:

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

simpan dan kemudian keluar. Perintah tersebut memungkinkan kita untuk menggunakan perintah check_nrpe pada Nagios Service Definitions.

Konfigurasi Apache

Nagios sudah siap untuk dijalankan. Restart Apache

systemctl start nagios.service
systemctl restart httpd.service
systemctl status httpd.service
Restart Apache

Agar Nagios dapat berjalan ketika server ini menyala setelah reboot, jalankan perintah berikut:

systemctl enable nagios
systemctl enable httpd
Agar Service Nagios dapat langsung berjalan setelah reboot

(Opsional) Jika kita ingin membatasi IP Address yang dapat mengakses halaman Web Nagios, kita harus mengedit konfigurasi file Apache:

vi /etc/httpd/conf.d/nagios.conf

Temukan baris berikut dan kemudian coment baris tersebut dengan menambahkan tanda # di depan baris tersebut:

Order allow,deny
Allow from all

Setelah itu, kita akan meng-uncomment baris di bawahnya, kali ini dengan menghapus simbol # pada ketiga baris berikut dan kemudian tambahkan alamat IP yang kita izinkan pada baris yang paling terakhir:

#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1

Kurang lebih hasilnya akan seperti ini:

Allow IP

Karena baris tersebut muncul sebanyak 2x pada nagios.conf, kita harus mengubah keduanya dan membuatnya seperti gambar di atas.

Simpan kemudian keluar

Mengakses Halaman Web Nagios

Buka browser kemudian masukkan alamat Nagios Server

http://ip_atau_domain_nagios/nagios

Namun, kurang efektif apabila kita harus menambahkan /nagios setelah domain atau alamat IP kita. untuk me-redirect /nagios ke halaman utama dari apache caranya hanya dengan menambahkan link pada /var/www/html.

cd /var/www/html/
ln -sf /usr/local/nagios/share/ nagios1
ls
Menambahkan link

Link sudah terbuat, sekarang waktunya mengarahkan apache agar mengakses link nagios1 yang ada pada folder /var/www/html.

vi /etc/httpd/conf/httpd.conf

ubah document root menjadi

DocumentRoot "/var/www/html/nagios1"

restart apache

service httpd restart

Buka kembali browser kemudian masukkan alamat Nagios Server

http://ip_atau_domain_nagios

Karena kita mengkonfigurasi apache agar menggunakan htpasswd, kita harus memasukan user dan password untuk bisa login. Gunakan “nagiosadmin” untuk usernamenya dan masukkan password yang sudah kita setting sebelumnya:

Halaman login

Setelah Proses autentikasi, kita akan melihat halaman utama dari Nagios. Pilih link Hosts pada navigasi bar yang ada di sebelah kiri untuk melihat Host yang sedang dimonitoring:

Halaman host yang sedang dimonitoring

Seperti yang kita lihat, nagios memonitoring hanya localhost alias dirinya sendiri.

Mari kita tambahkan host untuk dimonitoring pada Nagios Server ini!!!

Monitor CentOS 7 Host dengan NRPE

Pada bagian ini, saya akan coba menunjukkan cara untuk menambahkan host pada Nagios Server sehingga bisa dimonitor. Lakukan ini pada setiap server CentOS yang ingin kalian monitor.

Install EPEL repository

yum install epel-release
Install Epel Repository

Install Nagios Plugins dan NRPE

yum install nrpe nagios-plugins-all
install nagios plugins dan NRPE

Sekarang kita akan sedikit melakukan perubahan pada konfigurasi file nrpe. Gunakan editor yang kalian suka (dalam hal ini saya menggunakan vi)

vi /etc/nagios/nrpe.cfg

Temukan allowed_host dan kemudian tambahkan IP Address dari Nagios Server yang akan memonitor server ini.

Menambahkan IP Nagios Server

Save kemudian keluar.

Restart NRPE agar perubahan yang kita lakukan tadi dapat bekerja

systemctl start nrpe.service
systemctl enable nrpe.service
Restart Service NRPE

Setelah selesai instal dan konfigur NRPE pada host yang ingin kita monitor, sekarang kita harus menambahkan host tersebut ke dalam konfigurasi Nagios Server sebelum kita memulai untuk memonitoringnya.

Menambahkan Host pada Konfigurasi Nagios Server

Pada Nagios Server, buat sebuah file baru untuk setiap host yang ingin kita monitor di /usr/local/nagios/etc/servers/ (folder yang sudah kita buat pada tahapan sebelumnya). Sebagai contoh kita akan membuat file dengan nama dns.cfg

vi /usr/local/nagios/etc/servers/dns.cfg

Kalian bisa mengganti nama dns.cfg dengan nama lain.

Tambahkan definisi host tersebut, ganti nama host_name dengan nama host dari remote host. nilai alias dengan deskripsi dari host tersebut, dan address dengan IP dari remote host.

define host {
 use                   linux-server
 host_name             host_kamu.contoh.com
 alias                 host_kamu
 address               123.212.112.121
 max_check_attempts    5
 check_period          24x7
 notification_interval 30
 notification_period   24x7
}

Dengan konfigurasi di atas, Nagios akan memonitor apakah Host ini Up atau Down. Jika amu menganggap ini sudah cukup maka simpan konfigurasi ini dan keluar. Kalau mau menambahkan konfigurasi lainnya, silahkan melanjutkan membacanya ya 🙂

Tambahkan service-service berikut yang kamu inginkan. perintah check_command merupakan penjelasan mengenai perintah apa yang kamu buat untuk dimonitor. Berikut ini adalah contohnya:

Ping

define service {
 use                       generic-service
 host_name                 nama_host_yg_mau_kamu_monitor
 service_description       PING
 check_command             check_ping!100.0,20%!500.0,60%
}

SSH

define service {
 use                    generic-service
 host_name              nama_host_yg_mau_kamu_monitor
 service_description    SSH
 check_command          check_ssh
 notifications_enabled  0
}

Check Disk

define service{
 use                   generic-service
 host_name             nama_host_yg_mau_kamu_monitor
 service_description   ROOT SPACE
 check_command         check_nrpe!check_disk
 }

CPU Load

define service{
 use                  generic-service
 host_name            nama_host_yg_mau_kamu_monitor
 service_description  CPU LOAD
 check_command        check_nrpe!check_load
}

RAM

define service{
 use                   generic-service
 host_name             nama_host_yg_mau_kamu_monitor
 service_description   Check RAM
 check_command         check_nrpe!check_mem
}

Zombie Proses

define service{
 use                   generic-service
 host_name             nama_host_yg_mau_kamu_monitor
 service_description   Zombie Processes
 check_command         check_nrpe!check_zombie_procs
}

Check HTTP

define service{
 use                   generic-service
 host_name             nama_host_yg_mau_kamu_monitor
 service_description   HTTP
 check_command         check_http
}

Penjelasan untuk Check Disk, RAM, CPU Load, zombie Process dan HTTP akan dijelaskan lebih detail di post berikutnya. setelah konfigurasi selesai maka simpand dan keluar.

dan untuk membuat perubahan tersebut di-reload oleh Nagios. Jalankan perintah berikut:

systemctl reload nagios.service

Setelah itu, masuk kembali ke halaman web dari Nagios Server dan pilih services pada menu di sebelah kiri. Sekarang seharusnya host baru sudah ada di layar monitor Nagios.

Host baru yang berhasil ditambahkan

Itu tadi sedikit tutorial mengenai instalasi Nagios Core dan bagaimana menambahkan Host yang ingin dimonitor aktivitasnya.

sampai jumpa di postingan selanjutnya ya 🙂

 

Facebook Comments Box

Comments are closed.