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.
Tác giả cho mình hỏi, tài khoản đăng nhập zabbix là gì nhỉ
Tài khoản mặc định khi khởi tạo Zabbix Server là Admin/zabbix nhé.
cho mình hỏi chút, mình setup đến Bước 8: Truy cập vào địa chỉ http:///zabbix/.
Khi vào trong để ấn next các bước :
Gặp lỗi PHP option “date.timezone” unknown Fail
Đã kiểm tra PHP.ini và Zabbix.conf đúng timezone.
Mình cần phải làm gì để fix đc lỗi này.
Thank
Bạn thử restart lại zabbix-server xem được không nhé.
Bạn paste cấu hình /etc/httpd/conf.d/zabbix.conf mình xem luôn nhé
cấu hình zabbix.conf :
#
# Zabbix monitoring system php web frontend
#
Alias /zabbix /usr/share/zabbix
Options FollowSymLinks
AllowOverride None
Require all granted
SetHandler “proxy:unix:/run/php-fpm/zabbix.sock|fcgi://localhost”
Require all denied
Require all denied
Require all denied
Require all denied
trên centos7, em bật firewall là ko vào đc giao diện web. Cho e xin cách khác phục ạ. Em mở port :
firewall-cmd –zone=public –add-port=10051/tcp –permanent
firewall-cmd –reload
firewall-cmd –zone=public –add-port=3306/tcp –permanent
firewall-cmd –reload
Nhưng không được. Anh hỗ trợ giúp em với.
Thanks u
firewall-cmd –zone=public –add-port={10051/tcp,10050/tcp} –permanent
firewall-cmd –add-service={http,https} –permanent
firewall-cmd –reload
Lỗi Zabbix server is running No
systemctl status zabbix-server
● zabbix-server.service – Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: activating (auto-restart) (Result: exit-code) since Tue 2021-11-16 14:15:14 +07; 1s ago
Process: 18576 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=1/FAILURE)
Process: 18513 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 18515 (code=exited, status=0/SUCCESS)
Nov 16 14:15:14 zabbix kill[18576]: -l, –list [=] list signal names, or …ame
Nov 16 14:15:14 zabbix kill[18576]: -L, –table list signal names and …ers
Nov 16 14:15:14 zabbix kill[18576]: -h, –help display this help and exit
Nov 16 14:15:14 zabbix kill[18576]: -V, –version output version information and exit
Nov 16 14:15:14 zabbix kill[18576]: For more details see kill(1).
Nov 16 14:15:14 zabbix systemd[1]: zabbix-server.service: control process exited,…s=1
Nov 16 14:15:14 zabbix systemd[1]: Unit zabbix-server.service entered failed state.
Nov 16 14:15:14 zabbix systemd[1]: zabbix-server.service failed.
Hint: Some lines were ellipsized, use -l to show in full.
Mong anh chị trợ giúp em khắc phục lỗi này với ạ. Em cảm ơn nhiều