Hướng dẫn cài đặt Zabbix 6.0 trên AlmaLinux 8

Mở đầu

Kể từ thời điểm mình chia sẻ loạt bài viết hướng dẫn triển khai version 5.0 (khoảng tháng Ba năm 2021), hiện tại Zabbix đã release đến phiên bản 6.4 (devel).

Tuy nhiên trong nội dung bài viết này, mình sẽ chỉ hướng dẫn anh em cài đặt Zabbix 6.0 LTS (Long Time Support) – nhìn cái tên thôi bạn cũng biết mục đích mình khuyến nghị rồi chứ, chi tiết dòng đời và chính sách hỗ trợ của đầy đủ các version, bạn có thể tham khảo thêm tại Zabbix Life Cycle & Release Policy.

Đi cùng với sự kết thúc của huyền thoại CentOS sau năm 2021, kể từ phiên bản 5.2 trở về sau, Zabbix cũng sẽ không support CentOS 7 và hạn chế với CentOS 8. Vì vậy với phiên bản mới này, còn ngần ngại gì nữa mà chúng ta không triển trên AlmaLinux 8.x

Yêu cầu tài nguyên tối thiểu

  • Web server: Nginx hoặc Apache
  • PHP: 7.2 hoặc cao hơn
  • Database: MariaDB 10.5 trở về sau

Chi tiết, bạn có thể tham khảo thêm tại tài liệu chính thống của Zabbix.

Chi tiết triển khai

Bước 1 – Cài đặt LEMP Stack (Nginx , PHP 7.4 , PHP-FPM và MariaDB 10.5)

1. Đầu tiên, bạn cần phải cài đặt Nginx, PHP 7.4, PHP7.4-FPM và MariaDB 10.x cho hệ thống. Chi tiết bạn có thể xem lại hướng dẫn cài đặt LEMP Stack trên AlmaLinux 8 của mình trước đó.

Bước 2 –Cài đặt Zabbix server, Zabbix PHP frontend và Zabbix Agent

2. Để cài đặt Zabbix server 6.0, Zabbix PHP frontend và Zabbix Agent, bạn cần tải về và kích hoạt Zabbix repositories trên hệ thống bằng cách sử dụng lần lượt những lệnh bên dưới:

rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm

3. Tiếp theo, bạn thực thi lệnh sau để cài đặt Zabbix server và Zabbix PHP frontend:

dnf install zabbix-server-mysql zabbix-web-mysql zabbix-sql-scripts zabbix-agent

Sau đó, bạn có thể kiểm tra lại các package đã được cài đặt bằng lệnh sau:

rpm -qa | grep zabbix

Bước 3 – Tạo database lưu trữ dữ liệu Zabbix server

4. Bạn cần tạo một RDBMS database để lưu trữ dữ liệu của Zabbix. Truy cập vào MySQL/MariaDB. khởi tạo một Zabbix database và gán quyền quản lý database cho một user bằng cách thực thi lần lượt những lệnh sau:

# mysql -u root -p
MariaDB [(none)]> create database zabbixdb character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbixdb.* to 'zabbixuser'@'localhost' identified by 'your_password';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit

Bước 4 – Cấu hình Zabbix Server và Agent

5. Trước khi cấu hình server, đầu tiên, bạn phải import cấu trúc của Zabbix database (đã khởi tạo trước đó) vào MySQL/MariadDB bằng lệnh như sau:

zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbixuser -p zabbixdb

6. Trong bước tiếp theo, bạn mở file cấu hình chính để thiết lập Zabbix server bằng lệnh:

# vi  /etc/zabbix/zabbix_server.conf

Tìm và điều chỉnh các giá trị kết nối database như DBHost, DBName, DBUser  DBPassword trong file zabbix_server.conf tương tự như hình ảnh bên dưới.

 

Lưu ý: thay đổi giá trị các biến phù hợp với thiết lập database bạn đã khởi tạo ở bước 3. 

7. Cuối cùng, khởi động lại Zabbix Server để các thiết lập mới được áp dụng.

# systemct restart zabbix-server

8. Phần kế tiếp, bạn mở file cấu hình chính của Zabbix agent bằng lệnh:

# vi  /etc/zabbix/zabbix_agentd.conf

Tìm và điều chỉnh các giá trị Server và ListenPort trong file zabbix_agentd.conf tương tự như hình ảnh bên dưới.

9. Bạn cần khởi động lại Zabbix Agent để các thiết lập mới thay đổi có tác dụng.

# systemctl restart zabbix-agent

Bước 5 – Cài đặt và cấu hình giao diện Web của Zabbix

Tới bước này, bạn đã có thể cài đặt giao diện web của Zabbix Server 6.0 để thuận tiện hơn trong quán trình giám sát hệ thống.

10. Đầu tiên, bạn cần tạo một virtual host để Nginx có thể hosting Zabbix với một domain. Tạo một file /etc/nginx/conf.d/zabbix.conf với nội dung sau:

server {
    listen       80;
    server_name  zabbix.studyzone.click;
    root   /usr/share/zabbix/;

    #charset koi8-r;
    access_log  /var/log/nginx/zabbix.studyzone.click.access.log;
    error_log  /var/log/nginx/zabbix.studyzone.click.error.log;

    location / {
        index  index.php index.html index.htm;
        root   /usr/share/zabbix/;
     # include the "?$args" part so non-default permalinks doesn't break when using query string
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        fastcgi_index  index.php;
        # With php-fpm (or other unix sockets):
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
        include        fastcgi_params;
    }
}

Note: Thay thế bởi tên miền của bạn trong file cấu hình trên.

11. Khởi động lại Nginx

systemctl restart nginx

12. Mở trình duyệt web và truy cập đường dẫn http://<ten-mien-cua-ban> để bắt đầu cài đặt Zabbix Server Frontend (với <ten-mien-cua-ban> là tên miền bạn đặt cho Zabbix Web UI).

Trong giao diện đầu tiên, bạn nhấn Next để chuyển sang bước kế tiếp.

13. Sau khi hệ thống nhận diện và xác nhận tất cả các giá trị PHP đã đủ điều kiện cài đặt, nhấn Next để đi tiếp.

14. Trên màn hình “Configure DB connection“, bạn điền chính xác các giá trị để kết nối đến Zabbix database và nhấn Next.

15. Tại giao diện “Zabbix server details“, bạn khai báo các trường thông tin sau:

  • Hostlocalhost hoặc IP của Zabbix server
  • Port: 10051
  • Name: Tên hiển thị trên giao diện web của Zabbix Server

Nhấn Next để di chuyển sang mục tiếp theo.

16. Đến bước này, bạn cần kiểm tra kỹ lại bản tóm tắt các thông số đã thiết lập trước khi nhấn “Next step” để hệ thống bắt đầu quá trình cài đặt.

17. Sau khi tiến trình cài đặt hoàn thành, bạn chọn vào “Finish” để thoát trình cài đặt Zabbix frontend.

18. Sau cùng, để đăng nhập vào giao diện web quản trị của Zabbix Server, bạn mở trình duyệt và truy cập đường dẫn sau (với <ten-mien-cua-ban> là domain đã được trỏ DNS về máy chủ Zabbix của bạn):

http://ten-mien-cua-ban
Username: Admin
Password: zabbix

19. Sau khi đăng nhập thành công, trình duyệt sẽ chuyển đển giao diện chính của Zabbix Frontend như hình bên dưới:

Lời kết

Như vậy là mình đã hoàn thành bài viết chi tiết các bước để cài đặt Zabbix Server 6.0 LTS trên nền tảng AlmaLinux 8.x. Nếu có bất kỳ thắc mắc hoặc góp ý về nội dung bài viết, các bạn có thể để lại phản hồi ngay bên dưới.

Trong bài viết sau cùng chủ để Zabbix, mình sẽ tiếp tục hướng dẫn cách thức giám sát những service quan trọng trong hệ thống. Các bạn nhớ theo dõi nhé!

Giới thiệu Hiệp Phạm 115 bài viết
Hiệp hiện đang là thành viên nhóm tác giả của HIEPSHARING.COM. Thích tìm hiểu, nghiên cứu Ethical Hacking, SysAdmin, DevOps và những công nghệ mới. Phương châm sống của mình: "Chỉ cần bản thân không bỏ cuộc, chậm chút cũng không sao."

Hãy bình luận đầu tiên

Để lại một phản hồi

Thư điện tử của bạn sẽ không được hiện thị công khai.


*