Zabbix là một công cụ giám sát dịch vụ hệ thống mạng phân tán mã nguồn mở, có nhiều tính năng độc đáo và khả năng tùy biến cao. Zabbix có khả năng phục vụ cho hệ thống mạng tầm trung và lớn của các doanh nghiệp hiện tại với mức chi phí đầu tư vừa phải. Zabbix được thiết kế để giám sat, theo dõi trạng thái hoạt động của hạ tầng mạng (network), máy chủ (server), các ứng dụng (applications) theo thời gian thực. Phát triển theo mô hình client – server, zabbix có thể thu thập các loại dữ liệu khác nhau nhằm tạo biểu đồ thống kê về hiệu suất hay trạng thái tải (load trends) của các đối tượng được giám sát.
Trong bài viết hôm nay, mình sẽ hướng dẫn các bạn cài đặt Zabbix Server version 5.0 trên hệ điều hành Centos 7.
Bước 1: Cấu hình Selinux sang chế độ cho phép
1 2 | setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config |
Bước 2: Cài đặt Zabbix server
- Cài đặt Zabbix repository
1 2 3 | rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm yum clean all |
- Cài đặt Zabbix Server & Zabbix Agent
1 2 | yum install zabbix-server-mysql zabbix-agent |
- Cài đặt Zabbix frontend
1 2 | yum install -y centos-release-scl |
Chỉnh sửa tập tin zabbix.repo để bật cho phép cài zabbix-frontend từ responsitory
1 2 | vi /etc/yum.repos.d/zabbix.repo |
Đặt giá trị enable = 1 vào [zabbix-frontend]
Sau đó tiến hình cài đặt Zabbix frontend từ repository
1 2 | yum install zabbix-web-mysql-scl zabbix-apache-conf-scl |
Bước 3: Cài đặt MariaDB
- Thêm repository cài đặt MariaDB
MariaDB thì các bạn có thể cài đặt từ repo hoặc từ gói tar, ở đây mình sẽ cài từ repo
Để thêm repository để cài đặt MariaDB ta tiến hành tạo file mariadb.repo như sau:
1 2 | vi /etc/yum.repos.d/mariadb.repo |
Copy và paste đoạn text sau vào và save lại file:
1 2 3 4 5 6 7 8 | # MariaDB 10.5 CentOS repository list - created 2021-08-31 10:52 UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.5/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 |
- Cài đặt MariaDB Server và MariaDB Client
1 2 | yum install MariaDB-server MariaDB-client -y |
- Khởi động MariaDB Service
1 2 3 | systemctl enable mariadb systemctl start mariadb |
- Đặt lại mật khẩu cho database
Bảo mật mysql bằng cách thay đổi mật khẩu mặc định cho Mysql root:
1 2 3 4 5 6 7 8 9 10 11 | mysql_secure_installation Enter current password for root (enter for none): Nhấn Enter Set root password? [Y/n]: Y New password: <Nhập root DB password> Re-enter new password: <Nhập lại root DB password> Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y |
Lưu ý: từ phiên bản MariaDB 10.04 trở đi các bạn có thể login mà không cần nhập password
1 2 | mysql -uroot |
- Tạo User và Database cho Zabbix
1 2 3 4 5 | create database zabbix character set utf8 collate utf8_bin; create user zabbix@localhost identified by 'password'; grant all privileges on zabbix.* to zabbix@localhost; quit; |
- Import database Zabbix
Tạm thời cấu hình innodb_strict_mode = OFF để tránh lỗi Mysql “ERROR 1118 (42000) at line 1284: Row size too large (> 8126)”
1 2 | mysql -uroot -p'rootDBpass' zabbix -e "set global innodb_strict_mode='OFF';" |
Khi chạy lệnh import data và schema bạn sẽ được hỏi password, hãy nhập password bạn đã được tạo ở bước trên
1 2 | zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix |
Cấu hình lại innodb_strict_mode = ON
1 2 | mysql -uroot -p'rootDBpass' zabbix -e "set global innodb_strict_mode='ON';" |
Bước 4: Cấu hình Zabbix Server
Chỉnh sửa file zabbix_server.conf
1 2 | vi /etc/zabbix/zabbix_server.conf |
Các tham số cần quan tâm:
- DBHost=localhost (Database Host)
- DBName=zabbix (Database Name)
- DBUser=zabbix (Database Username)
- DBPassword=password (Database Password)
Bước 5: Cấu hình PHP
Mở tập tin zabbix.conf uncomment ; php_value[date.timezone] = Europe/Riga và sửa thành Asia/Ho_Chi_Minh
1 2 3 4 | vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf php_value[date.timezone] = Asia/Ho_Chi_Minh |
Bước 6: Khởi động Zabbix Server và Agent
1 2 3 | systemctl restart zabbix-server zabbix-agent systemctl enable zabbix-server zabbix-agent |
Bước 7: Khởi động lại web Apache server
1 2 3 | systemctl restart httpd rh-php72-php-fpm systemctl enable httpd rh-php72-php-fpm |
Bước 8: Thiết lập firewall
1 2 3 4 | firewall-cmd --add-service={http,https} --permanent firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent firewall-cmd --reload |
Bước 9: Thiết lập Zabbix Dashboard
Sau khi hoàn tất các bước trên, chúng ta tiến hành mở trình duyệt và nhập địa chỉ http://ip_server/zabbix
Nhập thông tin database chọn Next
Sau khi thiết lập xong, bạn đăng nhập vào Zabbix Dashboard bằng tài khoản default Admin/zabbix
Giao diện Dashboard trên Zabbix server
Các bạn nhớ thay đổi mật khẩu của tài khoản quản trị (Admin) để đảm bảo ANTT, bạn truy cập Administrator –> Users –> Admin vào “change password”
Như vậy quá trình thực hiện các bước cài đặt Zabbix trên Centos đã hoàn thành.