Server Farm Monitoring using Nagios

| Posted in Linux Server, Monitoring, Nagios, Project

Setiap hari di kantor saya selalu berhadapan dengan server Operational Support Systems (OSS) and Business Support Systems (BSS). Server farm ini berada didalam Data Centre dengan jumlah 16 server Solaris 10, 20 server Linux(Red Hat Enterprise Linux 5 & Debian 6), 5 server Windows Server 2003. Untuk memudahkan memonitoring semua perangkat server tersebut salah satunya dengan Nagios.  Kali ini saya akan berbagi ilmu untuk setup nagios dan memonitor server Windows, Linux, Solaris. Kedepan saya akan tulis juga untuk Cacti, Splunk+Syslog-ng

Server utama Nagios menggunakan SunFire X4170 yang akan memonitor server farm yaitu  server Solaris menggunakan Sun Sparc T5220,M4000,M3000, Linux menggunakan SunFireX4170, Windows menggunakan HP Proliant DL 380.

Tahapan setup Nagios Server :

1. Install sistem operasi Red Hat enterprise Linux 5

2. Install gcc compiler 4.3.6, Apache Server 2, Open SSL 0.9.7, GD development package, OpenSSH 3.6

3.Install dan configure Nagios, NRPE,Check Log File Plugin,dsb.

Berikut prosesnya :

1. Installasi sistem operasi Red Hat Enterprise Linux 5, bisa ikutin petunjukknya pada artikel terdahulu saya di Instalasi RHEL 5 dan Debian 6 pada Sun Fire X4170 Server.

2. Install gcc compiler 4.3.6, Apache Server 2, Open SSL 0.9.7, GD development package, OpenSSH 3.6

Jika anda membeli CD installasi RHEL 5 maka anda mendapatkan Installation Number dan beberapa cd instalasi lengkap, dan dapat digunakan untuk menginstall program yang dibutuhkan. Berikut software yang sudah dinstall sesuai requirement diatas :

[root@CGR-NNS-01 ~]# rpm -qa httpd

httpd-2.2.3-6.el5
[root@CGR-NNS-01 ~]# rpm -qa gcc

gcc-4.1.1-52.el5
[root@CGR-NNS-01 ~]# rpm -qa glibc

glibc-common  glibc-2.5-12  glibc-common-2.5-12
[root@CGR-NNS-01 ~]# rpm -qa gd

gd-develgd-2.0.33-9.3.fc6  gd-devel-2.0.33-9.3.fc6
[root@CGR-NNS-01 ~]# rpm -qa openssl

openssl-0.9.8b-8.3.el5
[root@CGR-NNS-01 ~]# cat /etc/redhat-release

Red Hat Enterprise Linux Server release 5 (Tikanga)

3.Install dan configure Nagios, NRPE,Check Log File Plugin,dsb.

Nagios Software Artifact :

NAGIOS SERVER

/home/nagios/nagiosinstall/nagios-3.0.3.tar.gz

NAGIOS PLUGINS

/home/nagios/nagiosinstall/nagios-plugins-1.4.12.tar.gz

NRPE PLUGIN

/home/nagios/nagiosinstall/nrpe-2.12-linux.tar.gz

CHECK_LOGFILES PLUGIN

/home/nagios/nagiosinstall/check_logfiles-2.3.1.2.tar.gz

Dalam  pengembangan nantinya ada Primary Nagios Server dan Secondary Nagios Server. Saat ini saya menjelaskan untuk Primary Nagios Server saja. Semua files diatas didownload dari www.nagios.org siap untuk di install.

Tahapan Instalasi Nagios :

#/usr/sbin/groupadd nagios

#useradd -d /home/nagios -m -g nagios -s /bin/bash nagios

#passwd nagios
( ingat password yang kita input)

#/usr/sbin/groupadd nagcmd

#/usr/sbin/usermod -G nagcmd nagios

#/usr/sbin/usermod -G nagcmd apache

#cd /home/nagios

#mkdir –p nagiosinstall/

Semua file artifacts ada pada /home/nagios/nagiosinstall  letak program untuk installasi nanti pada /usr/local/nagios

#cd /home/nagios/nagiosinstall

#tar xzf nagios-3.0.3.tar.gz

#cd /home/nagios/nagiosinstall/nagios-3.0.3

#./configure—with-command-group=nagcmd

#make all

#make install

#make install-init

#make install-config

#make install-commandmode

#make install-webconf

#htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

#service httpd restart

#chkconfig—add nagios

#chkconfig nagios on

Tahapan Instalasi Nagios Plugin :

#cd /home/nagios/nagiosinstall

#tar xzf nagios-plugins-1.4.12.tar.gz

#cd /home/nagios/nagiosinstall/nagios-plugins-1.4.12

#./configure—with-nagios-user=nagios—with-nagios-group=nagios

#make

#make install

#chown nagios:nagios /usr/local/nagios

#chown -R nagios:nagios /usr/local/nagios/libexec

Tahapan Instalasi Nagios Check Log file PLUGINS

#cd /home/nagios/nagiosinstall

#gunzip check_logfiles-2.3.1.2.tar.gz

#tar –xvf check_logfiles-2.3.1.2.tar

#cd /home/nagios/nagiosinstall/check_logfiles-2.3.1.2

#./configure

#make

#make install

#chown nagios:nagios  /usr/local/nagios/libexec/check_logfiles

Sampai disini installasi Nagios sudah selesai berikut :

Config Files Directory:
Main Nagios Install directory:      /usr/local/nagios

Main Nagios Configuration file:     /usr/local/nagios/etc/nagios.cfg

NRPE Plug-in Configuration file:    /usr/local/nagios/etc/nrpe.cfg

Nagios Command Definition file:     /usr/local/nagios/etc/objects/commands.cfg

Nagios Template Definition file:    /usr/local/nagios/etc/objects/templates.cfg

Nagios Contacts Definition file:    /usr/local/nagios/etc/objects/contacts.cfg

Nagios Time period Definition file: /usr/local/nagios/etc/objects/timeperiods.cfg

Letak  Nagios plugins pada :/usr/local/nagios/libexec

[root@CGR-NNS-01 nagios]# ll
total 56

drwxrwxr-x 2 nagios nagios 4096 Aug 26  2010 bin

drwxr-xr-x 2 nagios nagios 4096 Aug 22  2010 cfg.d

drwxrwxr-x 3 nagios nagios 4096 Jan 24 16:38 etc

drwxrwxr-x 3 nagios nagios 4096 Feb 24 12:52 libexec

drwxrwxr-x 2 nagios nagios 4096 Aug 22  2010 sbin

drwxrwxr-x 9 nagios nagios 4096 Aug 22  2010 share

drwxrwxr-x 5 nagios nagios 4096 Apr  9 10:33 var

Kita bisa akses melalui web melalui http://namaserver/nagios

login dengan nagiosadmin dan password yang sudah kita masukkan sebelumnya.

Tahapan Instalasi NRPE Plug-in pada Nagios Server

#cd  /home/nagios/nagiosinstall

#tar xzf nrpe-2.12-linux.tar.gz

#cd /home/nagios/nagiosinstall/nrpe-2.12

#./configure—enable-command-args—without-ssl—disable-ssl

#make all

#make install-plugin

#chown nagios:nagios /usr/local/nagios

#chown -R nagios:nagios /usr/local/nagios/libexec

Setup NRPE daemon agar running sebagai service dibawah xinetd

#make install-xinetd

#cp /home/nagios/nagiosinstall/primary/etc/nrpe.cfg  /usr/local/nagios/etc/

#chmod  664   /usr/local/nagios/etc/nrpe.cfg

#chown nagios:nagios  /usr/local/nagios/etc/nrpe.cfg

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

allowed_hosts=127.0.0.1,
ex: allowed_hosts= 127.0.0.0,192.168.0.1

#vi /etc/services file.
nrpe                  5666/tcp         # NRPE

#service xinetd restart

#netstat -at | grep nrpe
outputnya:

tcp 0 0 *:nrpe *:* LISTEN

Konfigurasi Nagios Server :

Letak file konfigursi untuk server-server yang sudah dijelaskan diatas adalah di /usr/local/nagios/etc/objects saya banyak mencari resources,plugin, config file melalui nagios.org agar bisa dipergunakan memonitor server farm.

Contoh object file server farm yang akan dimonitor dimasukkan ke /usr/local/nagios/etc/nagios.cfg

#START OF ZTE SERVER OBJECT FILES###

cfg_file=/usr/local/nagios/etc/objects/zteems1.cfg

cfg_file=/usr/local/nagios/etc/objects/zteems2.cfg

cfg_file=/usr/local/nagios/etc/objects/zteomm1.cfg

cfg_file=/usr/local/nagios/etc/objects/zteomm2.cfg

cfg_file=/usr/local/nagios/etc/objects/ztecentralized.cfg

cfg_file=/usr/local/nagios/etc/objects/sitrawimax.cfg

Instalasi Konfigurasi Nagios pada Remote Host : Windows 2003 Server R2 :

-Download file Windows Agent for Nagios NSClient++

Proses instalasi sbb :

Setelah selesai saya aktifkan NSCLient++ pada Services Windows 2003

Pada Systray sudah muncul icon dan menu service NSClient++

Instalasi Konfigurasi Nagios pada Remote Host : Solaris 10

Menginstall NRPE pada server dengan sistem operasi  Solaris 10  dapat dijalankan melalui perintah ./configure && make && make install’ routine berikut langkah-langkahnya :

  1. mkdir /usr/local
  1. groupadd nagios
  1. useradd -m -c “nagios system user” -d /usr/local/nagios -g nagios -m nagios

$ cd /tmp/

$ /usr/sfw/bin/wget http://superb-east.dl.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz

$ gzip dc nrpe2.12.tar.gz | tar xvf -$ cd nrpe2.12

$ PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin ./configure—with-ssl=/usr/sfw/—with-ssl-lib=/usr/sfw/lib/

$ perl -pi -e ’s/LOG_AUTHPRIV/LOG_AUTH/; s/LOG_FTP/LOG_DAEMON/’ src/nrpe.c

$ PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin make

pindah ke root untuk menginstall :

  1. PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin make install

echo “nrpe 5666/tcp # NRPE” >> /etc/services

echo “nrpe stream tcp nowait nagios /usr/sfw/sbin/tcpd /usr/local/nagios/bin/nrpe  -c /usr/local/nagios/etc/nrpe.cfg -i” >> /etc/inet/inetd.conf

svcadm enable nrpe/tcp

selesai tingal mengotak-atik file /usr/local/nagios/etc/nrpe.cfg

update nagios remote host 12 maret 2011

Comments (8)

permisi pak numpang tanya, jika saya menggunakan windows untuk memonitor server2 yang saya miliki gimana caranya ya pak ?
kebetulan dikantor saya ingin saya buatkan hal yang semacam ini, tapi saya bingung untuk membuatnya. kali ini kan bapak menggunakan “solaris”, mohon pencerahan pak untuk menggunakan windows sebagai server monitoringnya.
terima kasih sebelumnya.

salam
harun

@Harun,
Ada versi Windowsnya tapi masih Beta, bisa dipelajari di :

http://exchange.nagios.org/directory/Distributions/Nagios-Core-32bit-Windows-Installer/details

Lebih baik memakai Nagios yang sudah stable untuk Linux atau Solaris, anda bisa coba pakai PC biasa install Linux dan setup Nagios didalamnya. Lalu masukkan semua server2 windows anda kedalamnya.

Aplikasi yang sama untuk Windows adalah
MRTG / PRTG

tapi dengan menggunakan Nagios, kita bisa mengkonfigurasinya lebih fleksible, saya membuat beberapa Shell Script untuk keperluan yg lain yg memanfaatkan perintah2 di Nagios (/usr/local/nagios/libexec/ ) seperti check_smtp, dll..

kok perintah ini gak bisa ya mas?

  1. cp /home/nagios/nagiosinstall/primary/etc/nrpe.cfg /usr/local/nagios/etc/

folder primary gk ada. file nrpe.cfg juga gak ada?

@Andri,

Mas, pahamin betul sebelum menginstall nagios, OS nya apa, dimana letak file instalasi, saat anda ekstrak source kemana folder instalasi dibuat, jika anda belum paham baca documentnya hitung2 belajar bahasa inggris…

mohon bantuan pak,,,saya butuh referensi tentang nagios,,,tentang host resources,,,mohon bantuannya

Pak Hendry, saya sudah coba pakai nagios, saya install di FreeBSD 9.0, dan dapat berjalan dengan mulus, saya juga sudah install remote-host di server2 FreeBSD dan juga berjalan mulus.
Tapi saya ada kendala untuk remote-host server2 Linux (Ubuntu dan CentOS), dimana pada server Linux, tidak ada command “check_nrpe2”, server Linux hanya ada “check_nrpe”, sehingga tidak dapat dimonitoring dari nagios nya, karena di server nagios (FreeBSD 9.0) menggunakan command “check_nrpe2”.
Saya mohon pencerahannya pak, agar server2 Linux dan Windows juga bisa dimonitoring dari nagiosnya.
Thx. ;)

selamat siang pak.
Mau tanya pak
gimana caranya menambah perangkat jaringan yang akan di monitoring menggunakan Nagios..
Terima Kasih pak..
salam.

Write a comment