Zabbix là phần mềm nguồn mở sử dụng để giám sát hệ thống với nhiều công cụ hỗ trợ mạnh mẽ và hiện tại đang đứng trong top những phần mềm giám sát được sử dụng nhiều nhất trên thế giới. Có khả năng distribution monitor.
Zabbix chạy trên mô hình client/server bao gồm Zabbix Server là nơi tập trung, phân tích, hiển thị các tham số monitor. Zabbix Client là thành phần thu thập dữ liệu trên host để đưa về cho Zabbix Server xử lý.
Series bài viết này sẽ không đi sâu vào lý thuyết Zabbix mà sẽ trọng tâm vào các vấn đề thực hành áp dụng Zabbix vào monitor hệ thống. Để có thể thực hành được thì trước tiên chúng ta cần cài đặt được Zabbix Server lên, ở đây tôi chọn phiên bản mới nhất của Zabbix là 4.4
1. Zabbix 4.4
Zabbix 4.4 là phiên bản Zabbix mới nhất được ra mắt ngày 7 tháng 10 năm 2019. Cũng tương tự như các phiên bản trước đây Zabbix 4.4 không phải là bản LTS và được support đến tháng 4 năm 2020. Các bản 3.0, 4.0 là các bản LTS.
Zabbix 4.4 được giới thiệu đi kèm với một số tính năng mới nổi bật như: zabbix-agent2, tích hợp timescaleDB và một số tính năng khác.
Ngoài ra Zabbix 4.4 được hỗ trợ thêm khả năng vẽ biểu đồ (graph) và thống kê.
2. Thành phần của Zabbix Server
Thành phần của để dựng lên Zabbix Server vẫn sẽ bao gồm:
- Zabbix Server là lõi trung tâm xử lý mọi tiến trình.
- Database sử dụng MariaDB, MySQL, PostgresSQL để lưu trữ dữ liệu thu thập được.
- Zabbix frontend là giao diện web, bảng điều khiển, hiển thị dành cho người dùng.
- Ngoài ra còn một số thành phần khác phụ trợ đi kèm như: zabbix_get, zabbix_trapper,…
3. Cài đặt Zabbix Server:
Bước chuẩn bị:
sudo systemctl disable firewalld sudo systemctl stop firewalld sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux sudo setenforce 0
Bước 1: Cài đặt database và 1 số gói phụ trợ, ở đây tôi sử dụng MySQL
yum update -y yum install php php-devel php-bcmath php-pear php-gd php-mbstring php-mysql php-xml -y
Cài đặt MySQL 5.6
yum install wget wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum install mysql-server -y systemctl start mysqld systemctl enable mysqld
Đặt mật khẩu cho user root của MySQL
mysql_secure_installation <<EOF Y passla123 passla123 Y Y Y Y EOF
Bước 2: Login vào database để tạo user, phân quyền…
mysql -u root -p
Tạo database, phân quyền:
CREATE DATABASE zabbix CHARACTER SET UTF8 COLLATE UTF8_BIN; CREATE USER 'zabbix'@'%' IDENTIFIED BY 'passla123'; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%'; quit;
Bước 3: Cài đặt gói Zabbix cần thiết
rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm yum install zabbix-server-mysql -y yum install zabbix-web-mysql -y
Bước 4: Import database Zabbix nếu sử dụng MySQL
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Bước 5: Config database trong file /etc/zabbix/zabbix_server.conf
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=passla123
Bước 7: Chỉnh sửa các tham số cho web frontend trong file /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Ho_Chi_Minh
Bước 7: Khởi động lại dịch vụ
systemctl restart zabbix-server systemctl restart httpd systemctl enable zabbix-server httpd
Bước 8: Truy cập vào địa chỉ http://<IP_Zabbix_Server>/zabbix/
Tiếp tục chọn Next Step
Cấu hình để Zabbix kết nối tới database
Đặt hostname của Zabbix Server. Có thể bỏ qua bước này
Sau đó chọn Finish
Tài khoản dashboard mặc định khi khởi tạo Zabbix server là: Admin/zabbix
Như vậy tôi đã hoàn thành xong việc cài Zabbix Server sử dụng database MySQL. Trong bài viết tiếp theo tôi sẽ hướng dẫn cài Zabbix Agent trên các hệ điều hành phổ biến hiện nay. Xin cảm ơn.