Để có thể giám sát một máy chủ từ xa với nagios, Ta có thể sử dụng nhiều loại plugins khác nhau, Ở đây tôi giới thiệu với các bạn về một plugins thường được sử dụng là NRPE.
Để thực hiện được bài này cần phải cài đặt một nagios server trước đó để có thể giám sát một máy bằng nagios server đó. Nếu bạn chưa biết cách tạo một nagios server thì có thể tham khảo Tại Đây
Mô hình và kịch bản
Kịch bản : Cài đặt nagios lên một máy được gọi là nagios server. Cài đặt và sử dụng NRPE để có thể giám sát được máy linux từ xa được gọi là remote linux
Hostname | IP | CPU | RAM | DISK |
serve | 192.168.80.221 | 1 core | 1G | 20G |
client | 192.168.80.225 | 1 core | 1G | 20G |
Thực hiện
Trên remote linux
1. Cài đặt các gói phụ kiện cần thiết
yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel
2. Tạo user để NRPE dùng nó để xử lý tiến trình
useradd nagios
passwd nagios
3. Download file plugins
yum install wget -y
wget https://www.nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
4. Giải nén và cài đặt plugins
tar -xvf nagios-plugins-2.1.2.tar.gz
cd nagios-plugins-2.1.2
./configure
make
make install
5. Sau đó thêm user vào group và cấp quyền sử dụng tập lưu NRPE cho user nagios và group nagios
usermod -a -G nagios nagios
chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec
6. Cài đặt xinetd
yum install xinetd -y
7. Download và cài đặt NRPE
cd
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz
tar xzf nrpe-3.2.1.tar.gz
cd nrpe-3.2.1
./configure
make all
make install
make install-plugin
make install-config
make install-init
make install-inetd
8. Sửa file /usr/local/nagios/etc/nrpe.cfg để có thể nghe thấy nagios server
allowed_hosts=127.0.0.1,(nagios server IP )
Ví dụ :
allowed_hosts=127.0.0.1,192.168.80.221
9. Sửa file /etc/services sử dụng port 5666 cho NRPE. Thêm dòng dưới đây
nrpe 5666/tcp #NRPE
10. Chạy các dịch vụ
service xinetd restart
systemctl start nrpe
systemctl enable nrpe
11. Kiểm tra xem đã cài đặt và sử dụng được NRPE chưa
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1
NRPE v3.2.1
Trên Nagios Server
1.Download NRPE
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz
2. Giải nén file vừa download
tar xzf nrpe-3.2.1.tar.gz
3. Cài đặt lệnh NRPE
cd nrpe-3.2.1
./configure
make check_nrpe
make install-plugin
4. Kiểm tra xem đã sử dụng được NRPE chưa
/usr/local/nagios/libexec/check_nrpe -H <remote_linux_ip_address>
Thêm một host vào để nagios server giám sát
1.Thêm vào file /usr/local/nagios/etc/nagios.cfg
. Khai báo file chứa thông tin của host cần giám sát
cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg
2. Khai báo lệnh NRPE vào file vi /usr/local/nagios/etc/objects/commands.cfg
###############################################################################
# NRPE CHECK COMMAND
#
# Command to use NRPE to check remote host systems
###############################################################################
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
3. Thêm thông tin của host vào file /usr/local/nagios/etc/hosts.cfg
define host{
name linux-box
use generic-host
check_period 24x7
check_interval 5
retry_interval 1
max_check_attempts 10
check_command check-host-alive
notification_period 24x7
notification_interval 30
notification_options d,r
contact_groups admins
register 0
}
define host{
use linux-box
host_name client
alias CentOS 7
address 192.168.80.225
}
4. Thêm thông tin của service vào file /usr/local/nagios/etc/services.cfg
define service{
name service-test
use generic-service
check_period 24x7
check_interval 3
retry_interval 1
max_check_attempts 3
notifications_enabled 1
contact_groups admins
active_checks_enabled 1
passive_checks_enabled 1
register 0
notification_interval 5
notification_options r,c,w
}
define service{
use service-test
host_name client
service_description CPU Load1
check_command check_nrpe!check_load
}
define service{
use generic-service
host_name client
service_description disk load1
check_command check_nrpe!check_hda1
contact_groups admins
}
5. Kiểm tra cấu hình xem đúng hay sai kết quả giống hiện ra ở dưới sẽ là đúng và không có lỗi xảy ra
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nagios Core 4.1.1
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-19-2015
License: GPL
Website: https://www.nagios.org
Reading configuration data...
Read main config file okay...
Read object config files okay...
Running pre-flight check on configuration data...
Checking objects...
Checked 10 services.
Checked 2 hosts.
Checked 1 host groups.
Checked 0 service groups.
Checked 1 contacts.
Checked 1 contact groups.
Checked 25 commands.
Checked 5 time periods.
Checked 0 host escalations.
Checked 0 service escalations.
Checking for circular paths...
Checked 2 hosts
Checked 0 service dependencies
Checked 0 host dependencies
Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...
Total Warnings: 0
Total Errors: 0
6. Khởi động lại dịch vụ nagios
service nagios restart
Đã có thể giám sát host và service. Vậy khi chúng gặp sự cố thì làm sao chúng ta có thể biết được. Ở bài hướng dẫn cảnh báo qua mail tôi sẽ hướng các bạn dẫn cài đặt cảnh báo
Leave a Reply