Tin tức, hướng dẫn và chia sẻ về công nghệ

[Zabbix] Cài đặt Zabbix Server phiên bản 4.4 trên CentOS7

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

Zabbix-Web sau khi cài đặt xong

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.

8 Comments

  1. Đinh Trọng Niệm

    Tác giả cho mình hỏi, tài khoản đăng nhập zabbix là gì nhỉ

    • Mai Quốc Trí

      Tài khoản mặc định khi khởi tạo Zabbix Server là Admin/zabbix nhé.

  2. long

    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

    • trimq

      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é

      • long

        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

  3. Nguyen Thanh

    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

    • Tô Ngọc Tân

      firewall-cmd –zone=public –add-port={10051/tcp,10050/tcp} –permanent
      firewall-cmd –add-service={http,https} –permanent
      firewall-cmd –reload

  4. KhanhDV

    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

Leave a Reply

Your email address will not be published. Required fields are marked *