Cách cài đặt Zabbix Server 5.4/5.0 trên CentOS 8 / RHEL 8

Zabbix là một giải pháp giám sát mã nguồn mở mạnh mẽ được sử dụng để giám sát hệ thống, thiết bị mạng, ứng dụng máy chủ, thiết bị phần cứng, thiết bị IoT,v.v. Phần Backend nó được viết bằng C và Java trong khi Fontend được viết bằng PHP.

Hướng dẫn này sẽ chỉ cho các bạn biết cách cài đặt và cấu hình Zabbix Server trên RHEL 8/CentOS 8 Linux.


Kiến trúc Zabbix

Zabbix hoạt động theo mô hình Client/Server. Server giao tiếp với các tác nhân phần mềm gốc có sẵn cho các hệ điều hành như Linux,NIX và Windows. Đối với các hệ thống không có tác nhân, có thể sử dụng các giao thức giám sát chung như SNMP,IPMI.


Cài đặt Zabbix Server 5.4/5.0 LTS trên CentOS 8/RHEL 8

Zabbix Server phụ thuộc vào các ứng dụng phần mềm sau:

- MySQL/Mariadb database server

- Apache web server

- PHP với các extension bắt buộc

MySQL hoặc MariaDB có thể là một máy chủ từ xa, nhưng php và httpd cần được cài đặt trên máy chủ Zabbix. Có thể chạy máy chủ web Apache ở chế độ Proxy ngược.


Tiến hành tắt SELINUX

Theo mặc định trong CentOS 8, SELINUX được bât và ở chế độ Permissive. Mình khuyên bạn nên giữ SELINUX ở chế độ này. Tuy nhiên, đôi khi nó cản trở hoạt động của một số ứng dụng và bạn cần phải tắt nó bằng cách sau:

vi /etc/selinux/config

Thay đổi SELINUX=disabled


Cài đặt và cấu hình Apache Web Server

Cài đặt nhanh Apache trên RHEL/CentOS8, hãy dùng các lệnh sau:

sudo dnf -y install @httpd

Khởi động và kích hoạt dịch vụ httpd để bắt đầu khi khởi động

sudo systemctl enable --now httpd

Xác nhận trạng thái dịch vụ bằng lệnh systemctl status httpd


Cài đặt Mariadb Database Server

Cài đặt Mariadb Databse Server bằng hướng dẫn bài viết sau của mình: Cài đặt MariaDB 10.x Server trên CentOS 8/RHEL 8

Sau khi Database đã được cài đặt, bạn cần tạo cơ sở dữ liệu cho người dùng Zabbix:

mysql -u root -p

create database zabbix character set utf8 collate utf8_bin;

grant all privileges on zabbix.* to zabbix@’localhost’ indentified by ‘password’;

flush privileges;

quit;

Thay thế password bằng mật khẩu của bạn


Cài đặt Zabbix Server trên CentOS8/RHEL 8

Tất cả các yêu cầu để có thể cài đặt Zabbix Server đã được cài đặt. Chúng ta có thể tiến hành cài đặt và cấu hình Zabbix Server trên CentOS 8/RHEL 8.

Zabbix 5.4

sudo dnf -y install https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm

Zabbix 5.0

sudo dnf -y install https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm

Sau đó cài đặt gói Zabbix Server trên CentOS 8/RHEL 8:

sudo dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent


Import Zabbix Server database schema

Đối với Zabbix Server và Zabbix proxy, cơ sở dữ liệu là bắt buộc. Nếu Zabbix Server và Proxy được cài đặt trên cùng một máy chủ, thì database của chúng phải được tạo với các tên khác nhau.

sudo su -

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix


Cấu hình và khởi động Zabbix Server trên CentOS 8/RHEL 8

1. Cấu hình Zabbix

Chỉnh sửa tệp cấu hình Zabbix của bạn /etc/zabbix/zabbix_server.conf và đặt tên cơ sở dữ liệu, người dùng và mật khẩu.

sudo vi /etc/zabbix/zabbix_server/conf

DBName=zabbix

DBUser=zabbix

DBPassword = yourpassword

Các thông số mặc định phải đủ cho hầu hết các thiết lập nhưng bạn có thể tối ưu hóa hiệu suất của Zabbix Server. Kiểm tra phần điều chỉnh hiệu suất theo tài liệu sau.

2. Cấu hình PHP cho giao diện người dùng Zabbix

Chỉnh sửa tệp /etc/php-fpm.d/zabbix.conf, bỏ dấu ; và đặt múi giờ.

sudo vi /etc/php-fpm.d/zabbix.conf

php_value[date.timezone] = Asia/Ho_Chi_Minh

Cuối cùng khởi động và thiết lập các dịch vụ Zabbix để bắt đầu khi khởi động.

systemctl restart zabbix-server zabbix-agent httpd php-fpm

sudo systemctl enable zabbix-server zabbix-agent httpd php-fpm

Xác nhận rằng các dịch vụ đang chạy bằng lệnh: systemctl status zabbix-server


Cấu hình Zabbix Frontend

Điều chỉnh các thông số PHP trong /etc/php.ini

sudo vi /etc/php.ini

memory_limit 128M

upload_max_filesize 8M

post_max_size 16M

max_execution_time 300

max_input_time 300

max_input_vars 10000

Cho phép các cổng dịch vụ http và Zabbix trên tường lửa

sudo firewall-cmd --add-service=http --permanent

sudo firewall-cmd --add-port={10051,10050}/tcp --permanent

sudo firewall-cmd --reload

Khởi động lại dịch vụ httpd và php-fpm

sudo systemctl restart httpd php-fpm

Mở URL Zabbix: trong trình duyệt của bạn http://<server_ip_or_name>/zabbix

Bây giờ bạn có Máy chủ Zabbix trên CentOS 8 / RHEL 8. Hướng dẫn tiếp theo của mình sẽ bao gồm cài đặt và cấu hình tác nhân Zabbix.

Chúc các bạn thành công!

Close Menu