Cách cài đặt Nagios trên Ubuntu 16.04

theanh

Administrator
Nhân viên
Nagios là phần mềm mã nguồn mở để giám sát hệ thống và mạng. Nagios có thể giám sát hoạt động của máy chủ và các dịch vụ của máy chủ đó, đồng thời đưa ra cảnh báo/báo động nếu có điều gì đó không ổn xảy ra trên máy chủ. Nagios có thể chạy trên hệ điều hành Linux. Hiện tại, tôi đang sử dụng Ubuntu 16.04 để cài đặt.


Điều kiện tiên quyết​

  • 2 Ubuntu 16.04 - Máy chủ 64 bit1 - Máy chủ Nagios có IP: 192.168.1.9
  • 2 - Máy khách Ubuntu có IP: 192.168.1.10
[*] Quyền truy cập Root/Sudo

Những gì chúng ta sẽ làm trong hướng dẫn này:​

  1. Phần mềm và các gói phụ thuộc như - LAMP, v.v.
  2. Cấu hình người dùng và nhóm.
  3. Cài đặt Nagios.
  4. Cấu hình Apache.
  5. Kiểm tra Máy chủ Nagios.
  6. Thêm Máy chủ vào Màn hình.

Cài đặt các điều kiện tiên quyết​

Nagios yêu cầu trình biên dịch gcc và build-essentials để biên dịch, LAMP (Apache, PHP, MySQL) cho giao diện web Nagios và Sendmail để gửi cảnh báo từ máy chủ. Để cài đặt tất cả các gói đó, hãy chạy lệnh này (chỉ có 1 dòng):
Mã:
sudo apt-get install wget build-essential apache2 php apache2-mod-php7.0 php-gd libgd-dev sendmail unzip

Cấu hình người dùng và nhóm​

Để Nagios chạy, bạn phải tạo một người dùng mới cho Nagios. Chúng tôi sẽ đặt tên cho người dùng là "nagios" và tạo thêm một nhóm có tên là "nagcmd". Chúng tôi thêm người dùng mới vào nhóm như được hiển thị bên dưới:
Mã:
useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagios,nagcmd www-data



Cài đặt Nagios​

Bước 1 - Tải xuống và giải nén lõi Nagios​

Mã:
cd ~
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.2.0.tar.gz
tar -xzf nagios*.tar.gz
cd nagios-4.2.0

Bước 2 - Biên dịch Nagios​

Trước khi bạn xây dựng Nagios, bạn sẽ phải cấu hình nó với người dùng và nhóm mà bạn đã tạo trước đó.
Mã:
./configure --with-nagios-group=nagios --with-command-group=nagcmd
Để biết thêm thông tin, vui lòng sử dụng: ./configure --help .

Bây giờ để cài đặt Nagios:
Mã:
make all
sudo make install
sudo make install-commandmode
sudo make install-init
sudo make install-config
/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-available/nagios.conf
Và sao chép thư mục evenhandler vào thư mục nagios:
Mã:
cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/
chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers

Bước 3 - Cài đặt Nagios Plugins​

Tải xuống và giải nén Nagios plugins:
Mã:
cd ~
wget https://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
tar -xzf nagios-plugins*.tar.gz
cd nagios-plugin-2.1.2/
Cài đặt plugin Nagios bằng các lệnh bên dưới:
Mã:
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
make
make install

Bước 4 - Cấu hình Nagios​

Sau khi giai đoạn cài đặt hoàn tất, bạn có thể tìm thấy cấu hình mặc định của Nagios trong /usr/local/nagios/.

Chúng ta sẽ cấu hình Nagios và Nagios contact.

Chỉnh sửa cấu hình nagios mặc định bằng vim:
Mã:
vim /usr/local/nagios/etc/nagios.cfg
bỏ chú thích dòng 51 cho cấu hình giám sát máy chủ.
Mã:
cfg_dir=/usr/local/nagios/etc/servers
Lưu và thoát.

Thêm một thư mục mới có tên servers:
Mã:
mkdir -p /usr/local/nagios/etc/servers
Liên hệ Nagios có thể được cấu hình trong tệp contact.cfg. Để mở nó, hãy sử dụng:
Mã:
vim /usr/local/nagios/etc/objects/contacts.cfg
Sau đó thay thế email mặc định bằng email của riêng bạn.




Cấu hình Apache​

Bước 1 - bật các mô-đun Apache​

Mã:
sudo a2enmod rewrite
sudo a2enmod cgi
Bạn có thể sử dụng lệnh htpasswd để cấu hình người dùng nagiosadmin cho giao diện web nagios
Mã:
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
và nhập mật khẩu của bạn.

Bước 2 - bật máy chủ ảo Nagios​

Mã:
sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

Bước 3 - Khởi động Apache và Nagios​

Mã:
service apache2 restart
service nagios start
Khi Nagios khởi động, bạn có thể thấy lỗi sau:
Mã:
Đang khởi động nagios (qua systemctl): nagios.serviceFailed
Và đây là cách khắc phục:
Mã:
cd /etc/init.d/
cp /etc/init.d/skeleton /etc/init.d/nagios
Bây giờ hãy chỉnh sửa tệp Nagios:
Mã:
vim /etc/init.d/nagios
... và thêm mã sau:
Mã:
DESC="Nagios"
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock
Thực hiện thực thi và khởi động Nagios:
Mã:
chmod +x /etc/init.d/nagios
service apache2 restart
servuce nagios start

Kiểm tra Máy chủ Nagios​

Vui lòng mở trình duyệt của bạn và truy cập ip máy chủ Nagios, trong trường hợp của tôi: .

Đăng nhập Nagios bằng apache htpasswd.



Bảng điều khiển quản trị Nagios




Thêm máy chủ để giám sát​

Trong hướng dẫn này, tôi sẽ thêm máy chủ Ubuntu để giám sát vào máy chủ Nagios mà chúng tôi đã tạo ở trên.
Mã:
Nagios Địa chỉ IP máy chủ: 192.168.1.9
Địa chỉ IP máy chủ Ubuntu: 192.168.1.10

Bước 1 - Kết nối với máy chủ Ubuntu​

Mã:
ssh [emailprotected]

Bước 2 - Cài đặt dịch vụ NRPE​

Mã:
sudo apt-get install nagios-nrpe-server nagios-plugins

Bước 3 - Cấu hình NRPE​

Sau khi cài đặt hoàn tất, hãy chỉnh sửa tệp nrpe /etc/nagios/nrpe.cfg:
Mã:
vim /etc/nagios/nrpe.cfg
... và thêm Nagios Địa chỉ IP máy chủ 192.168.1.9đến server_address.

server_address=192.168.1.9


Bước 4 - Khởi động lại NRPE​

Mã:
service nagios-nrpe-server restart

Bước 5 - Thêm Ubuntu Host vào Nagios Server​

Vui lòng kết nối với máy chủ Nagios:
Mã:
ssh [emailprotected]
Sau đó tạo một tệp mới để cấu hình máy chủ trong /usr/local/nagios/etc/servers/.
Mã:
vim /usr/local/nagios/etc/servers/ubuntu_host.cfg
Thêm các dòng sau:
Mã:
# Tệp cấu hình máy chủ Ubuntudefine host { use linux-server host_name ubuntu_host alias Ubuntu Host address 192.168.1.10 register 1}define service { host_name ubuntu_host service_description PING check_command check_ping!100.0,20%!500.0,60% max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1}define service { host_name ubuntu_host service_description Kiểm tra người dùng check_command check_local_users!20!50 max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1}define service { host_name ubuntu_host service_description Đĩa cục bộ check_command check_local_disk!20%!10%!/ max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1}define service { host_name ubuntu_host service_description Kiểm tra SSH check_command check_ssh max_check_attempts 2 check_interval 2 retry_interval 2 check_period 2 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1}define service { host_name ubuntu_host service_description Tổng số quy trình check_command check_local_procs!250!400!RSZDT max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1}
Bạn có thể tìm thấy nhiều check_command trong tệp /usr/local/nagios/etc/objects/commands.cfg. Xem ở đó nếu bạn muốn thêm nhiều dịch vụ hơn như DHCP, POP, v.v.

Và bây giờ hãy kiểm tra cấu hình:
Mã:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
... để xem cấu hình có đúng không.


Bước 6 - Khởi động lại tất cả các dịch vụ​

Trên Máy chủ Ubuntu, hãy khởi động Dịch vụ NRPE:
Mã:
service nagios-nrpe-server restart
... và trên máy chủ Nagios, hãy khởi động Apache và Nagios:
Mã:
service apache2 restart
service nagios restart

Bước 7 - Kiểm tra Máy chủ Ubuntu​

Mở máy chủ Nagios từ trình duyệt và xem ubuntu_host đang đã giám sát.

Máy chủ Ubuntu có sẵn trên máy chủ được giám sát.



Tất cả các dịch vụ được giám sát mà không có lỗi.


Kết luận​

Nagios là một ứng dụng nguồn mở để giám sát hệ thống. Nagios đã được sử dụng rộng rãi vì dễ cấu hình. Nagios được hỗ trợ bởi nhiều plugin khác nhau và bạn thậm chí có thể tạo plugin của riêng mình. Hãy xem tại đây để biết thêm thông tin.
 
Back
Bên trên