Skip to main content

Hướng dẫn cài đặt và cấu hình nagios core 4x, check nrpe CentOS 6 Phần 2

25,September 2016
Hướng dẫn cài đặt và cấu hình nrpe trên CentOS 6

phần 1 itlabvn.net đã hướng dẫn các bạn cách cài đặt nagios core 4x trên CentOS 6. Trong bài lab này mình sẽ hướng dẫn các bạn cách cài đặt nrpe trên nagios client ( máy muốn giám sát ). Thông tin từ máy nagios client sẽ được nrpe update lên nagios server. Mô hình bài lab của mình như sau: nagios server ( 192.168.1.128 ) & nagios client ( 192.168.1.130 )

I. Thực hiện trên nagios client 192.168.1.130 ( remote linux server )

1. Đầu tiên các bạn cài đặt các gói cần thiết trước khi cài nrpe

yum install gcc glibc glibc-common openssl*
useradd -m nagios && passwd nagios  (nagios)

2. Cài đặt nagios-plugin

+ Link download tự địa chỉ : https://nagios-plugins.org/download hoặc các bạn dùng wget để download trực tiếp về máy

wget https://github.com/itlabvn/share/raw/master/nagios-plugins-2.1.3.tar.gz

tar -xzvf nagios-plugins-2.1.3.tar.gz
cd nagios-plugins-2.1.3
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make && make install

3. Cài đặt nrpe 

+ Link download tự địa chỉ : https://sourceforge.net/projects/nagios/files/nrpe-2.x/ hoặc wget trực tiếp 

wget https://github.com/itlabvn/share/raw/master/nrpe-2.15.tar.gz

tar -xzvf nrpe-2.15.tar.gz 
cd nrpe-2.15
./configure --with-nrpe-user=nagios --with-nrpe-group=nagios
make all
make install-plugin
make install-daemon
make install-daemon-config

4. Cấu hình file nrpe config 

 + vim /usr/local/nagios/etc/nrpe.cfg  ( chỉnh sửa như sau )  

allowed_hosts=127.0.0.1,192.168.1.128  # thêm địa chỉ nagios server vào allowed_hosts
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
command[check_bandwith_eth0]=/usr/local/nagios/libexec/check_bandwidth.sh localhost linux eth0 5 80 90 100
command[check_bandwith_eth1]=/usr/local/nagios/libexec/check_bandwidth.sh localhost linux eth1 5 80 90 100
command[check_memory]=/usr/local/nagios/libexec/check_mem.pl -w 10 -c 5 -f
command[check_memory_http]=/usr/local/nagios/libexec/check_proc_mem.sh -w 1024 -c 2048 --pidfile /var/run/httpd/httpd.pid
command[check_service_http]=/usr/local/nagios/libexec/check_http -H 127.0.0.1 -p 80 -w 10 -c 15
command[check_tomcat]=/usr/local/nagios/libexec/check_tcp -H localhost -p 8080 -S -w 3 -c 5

+ Địa chỉ link download các plugin. Các bạn dùng câu lện wget url_link để download về  

   https://github.com/itlabvn/share

cd /usr/local/nagios/libexec/
wget https://raw.githubusercontent.com/itlabvn/share/master/check_bandwidth.sh     
wget https://raw.githubusercontent.com/itlabvn/share/master/check_mem.pl    

chmod +x check_bandwidth.sh check_mem.pl  (change mode execute cho file vừa download)
chown nagios:nagios check_bandwidth.sh check_mem.pl   (change ownership cho file vừa download)

+ Đăng ký chương trình nrpe khởi động cùng hệ thống bằng câu lệnh sau

wget https://raw.githubusercontent.com/itlabvn/share/master/nrpe

cd /etc/init.d
wget https://raw.githubusercontent.com/itlabvn/share/master/nrpe
chmod +x /etc/init.d/nrpe     //add execute permisssion cho file
chkconfig --add nrpe          //Định nghĩa thêm service nrpe trong CentOS 6
chkconfig --level 35 nrpe on  //khởi động nrpe cùng hệ thống ở mode 3,5

+ Khởi động lại service nrpe bằng câu lệnh : service nrpe restart 

Kiểm tra port nrpe : netstat -ntlp | grep nrpe  (port 5666)

II. Cài đặt plugin check_nrpe thực hiện trên nagios server (192.168.1.128) 

1. Donwload và cài đặt nrpe: 

+ https://sourceforge.net/projects/nagios/files/nrpe-2.x/

+ Download, biên dịch và cài đặt     

yum install gcc glibc glibc-common openssl*
wget https://github.com/itlabvn/share/raw/master/nrpe-2.15.tar.gz
tar -xzvf nrpe-2.15.tar.gz 
cd nrpe-2.15
./configure --with-nrpe-user=nagios --with-nrpe-group=nagios
make all
make install-plugin
make install-daemon
make install-daemon-config

+ Kiểm tra xem file check_nrpe có trong libexec chưa ?

ls /usr/local/nagios/libexec/check_nrpe

2. Định nghĩa  các nagios client cần monitor 

+ vim /usr/local/nagios/etc/nagios.cfg

cfg_dir=/usr/local/nagios/etc/servers // bỏ comment dòng này trong file nagios.cfg

+ Định nghĩa đối tượng cần monitor 

vim /usr/local/nagios/etc/servers/CentOS6A.cfg  ( các bạn có thể định nghĩa thêm các services cần monitor trong file /usr/local/nagios/etc/nrpe.cfg  trên nagios client & và file /usr/local/nagios/etc/servers/CentOS6A.cfg )

mkdir -p /usr/local/nagios/etc/servers 
cd /usr/local/nagios/etc/servers
vim CentOS6A.cfg
define host {
      use linux-server
      host_name CentOS6A_192.168.1.130
      alias CentOS6A_192.168.1.130
      address 192.168.1.130
      contact_groups admins
}
define service {
      use generic-service
      host_name CentOS6A_192.168.1.130
      contact_groups admins
      service_description SERVER_LOAD
      check_command  check_nrpe!check_load
}
define service {
      use generic-service
      host_name CentOS6A_192.168.1.130
      contact_groups admins
      service_description USER_LOGIN
      check_command  check_nrpe!check_users
}
define service {
      use generic-service
      host_name CentOS6A_192.168.1.130
      contact_groups admins
      service_description SERVER_HDD1
      check_command  check_nrpe!check_hda1
}
define service {
      use generic-service
      host_name CentOS6A_192.168.1.130
      contact_groups admins
      service_description SERVER_BANDWITH_ETH0
      check_command  check_nrpe!check_bandwith_eth0
}    
define service {
      use generic-service
      host_name CentOS6A_192.168.1.130
      contact_groups admins
      service_description SERVER_MEMORY
      check_command  check_nrpe!check_memory
}

+  Các bạn có thể replace toàn bộ tên và ip address phù hợp với hệ thống của các bạn bằng cách

vim CentOS6A.cfg
:%s/CentOS6A_192.168.1.130/YourName_YourIP/g   //replace all
:%s/192.168.1.130/YourIP/g                     //replace all ip address

+  Định nghĩa command check_nrpe trên file /usr/local/nagios/etc/objects/commands.cfg

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

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


    Chú thích:

$USER1$  = /usr/local/nagios/libexec 
$HOSTADDRESS$  = IP nagios client
$ARG1$ = command check tren nrpe client (check_load,check_memory...)

  + Kiểm tra file nagios config đúng chưa bằng câu lệnh

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  
Total Warnings: 0  ( file config ok )
Total Errors:   0

 + Vào nagios web interface kiểm tra http://192.168.1.128/nagios

Cài đặt nagios core 4x và nrpe trên CentOS 6

III. Video hướng dẫn