Tổng quan về Zabbix và Hướng dẫn cài đặt trên CentOS 7 với Zabbix 4.4

Giới thiệu về Zabbix

Zabbix là một giải pháp giám sát mã nguồn mở mạnh mẽ, tương tự như Cacti và Nagios. Nó cung cấp giao diện web trực quan, hỗ trợ kiến trúc hệ thống phân tán và cung cấp chức năng giám sát mạng toàn diện cho doanh nghiệp.

Zabbix có khả năng theo dõi nhiều loại thông số mạng khác nhau, đảm bảo hoạt động an toàn của hệ thống máy chủ và cung cấp cơ chế thông báo linh hoạt giúp quản trị viên nhanh chóng xác định và khắc phục các sự cố.

Kiến trúc Zabbix

Kiến trúc Zabbix bao gồm 5 thành phần chính:

  • Zabbix Server: Thành phần cốt lõi, thu thập dữ liệu từ Agent hoặc Proxy và lưu trữ vào cơ sở dữ liệu. Nó cũng xử lý logic giám sát và thông báo. Cổng mặc định là 10051.
  • Web Interface: Giao diện người dùng đồ họa (GUI) của Zabbix, thường chạy trên cùng máy chủ với Zabbix Server hoặc trên một máy chủ web riêng biệt (Apache/Nginx).
  • Database: Lưu trữ tất cả thông tin cấu hình và dữ liệu giám sát thu thập bởi Zabbix Server. Các hệ quản trị cơ sở dữ liệu phổ biến là MySQL hoặc PostgreSQL.
  • Zabbix Proxy: Được sử dụng trong các môi trường giám sát phân tán. Proxy thu thập dữ liệu từ các thiết bị được giám sát và gửi về Zabbix Server. Có thể không cần thiết nếu số lượng thiết bị giám sát ít.
  • Zabbix Agent: Cài đặt trên các máy chủ cần giám sát, chịu trách nhiệm thu thập dữ liệu cục bộ và gửi về Zabbix Server hoặc Proxy. Có thể thay thế Agent bằng dịch vụ SNMP chuẩn trên các thiết bị.

Zabbix Server có thể giám sát trạng thái máy chủ và mạng từ xa thông qua nhiều phương thức như SNMP, Zabbix Agent, ping, giám sát cổng,... Zabbix hỗ trợ nhiều hệ điều hành như Linux, Solaris, AIX, FreeBSD, macOS, v.v.

Triển khai Zabbix trên CentOS 7

1. Cấu hình hệ thống cơ bản

  • Tắt Firewall (tạm thời):
    systemctl stop firewalld.service
  • Tắt Firewall (vĩnh viễn):
    systemctl disable firewalld.service
  • Tắt SELinux (tạm thời):
    setenforce 0
  • Tắt SELinux (vĩnh viễn):
    vim /etc/selinux/config

    Thay đổi dòng SELINUX=enforcing hoặc SELINUX=permissive thành SELINUX=disabled.

2. Cài đặt Apache (httpd)

  • Cài đặt httpd bằng yum:
    yum -y install httpd
  • Thiết lập httpd tự động khởi động cùng hệ thống:
    systemctl enable httpd
  • Khởi động dịch vụ httpd:
    systemctl start httpd

3. Cài đặt MySQL

  • Cài đặt các gói MySQL (sử dụng file RPM đã tải về):
    rpm -ivh mysql-community-common-*.rpm
    rpm -ivh mysql-community-libs-*.rpm
    rpm -ivh mysql-community-client-*.rpm
    rpm -ivh mysql-community-server-*.rpm
    rpm -ivh mysql-community-devel-*.rpm
    rpm -ivh mysql-community-libs-compat-*.rpm

    (Lưu ý: Thay thế * bằng phiên bản cụ thể của tệp RPM nếu cần)

  • Thiết lập mysqld tự động khởi động:
    systemctl enable mysqld.service
  • Khởi động dịch vụ mysqld:
    systemctl start mysqld.service
  • Xem mật khẩu tạm thời của root MySQL:
    grep 'temporary password' /var/log/mysqld.log
  • Đăng nhập MySQL bằng mật khẩu tạm thời và đặt mật khẩu mới cho root.

4. Cài đặt môi trường PHP

  • Cài đặt PHP và module hỗ trợ MySQL:
    yum install -y php php-mysql

5. Cài đặt Zabbix

  • Thêm kho lưu trữ Zabbix 4.4:
    rpm -ivh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
  • Cài đặt các thành phần Zabbix:
    yum install -y zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-agent zabbix-sender

    Lưu ý: Nếu gặp lỗi mạng khi cài đặt, bạn cần tải các gói RPM và các gói phụ thuộc về thủ công để cài đặt.

6. Cấu hình cơ sở dữ liệu và Zabbix

  • Tạo cơ sở dữ liệu Zabbix với mã hóa UTF8:
    create database zabbix character set utf8 collate utf8_bin;
  • Tạo người dùng Zabbix và cấp quyền:
    grant all privileges on zabbix.* to zabbix@localhost identified by 'your_zabbix_password';

    (Thay your_zabbix_password bằng mật khẩu bạn muốn đặt)

  • Làm mới quyền truy cập cơ sở dữ liệu:
    flush privileges;
  • Nhập dữ liệu bảng Zabbix:
    • Chuyển đến thư mục chứa file schema:
      cd /usr/share/doc/zabbix-server-mysql-4.4.X/
      (Thay 4.4.X bằng phiên bản thực tế)
    • Giải nén file schema:
      gunzip create.sql.gz
    • Nhập dữ liệu vào MySQL:
      mysql -uroot -p zabbix < create.sql
      (Nhập mật khẩu root MySQL khi được hỏi)
  • Cấu hình Zabbix Server:
    • Chỉnh sửa file cấu hình Zabbix Server:
      vim /etc/zabbix/zabbix_server.conf
    • Cập nhật các thông số sau (sử dụng thông tin bạn đã tạo):
      DBHost=localhost
      DBName=zabbix
      DBUser=zabbix
      DBPassword=your_zabbix_password
      DBSocket=/var/lib/mysql/mysql.sock
                          
    • Khởi động dịch vụ Zabbix Server và thiết lập tự động khởi động:
      systemctl start zabbix-server
      systemctl enable zabbix-server
  • Cấu hình PHP cho Zabbix Web:
    • Chỉnh sửa file cấu hình Apache cho Zabbix:
      vi /etc/httpd/conf.d/zabbix.conf
    • Tìm và sửa đổi dòng php_value date.timezone thành múi giờ mong muốn, ví dụ:
      php_value date.timezone Asia/Shanghai
    • Khởi động lại dịch vụ httpd:
      systemctl restart httpd

7. Cấu hình Zabbix qua giao diện Web

  • Truy cập Zabbix qua trình duyệt: http://your_server_ip/zabbix
  • Tiếp tục các bước cài đặt bằng cách nhấp vào "Next step".
  • Cung cấp thông tin kết nối cơ sở dữ liệu (tên database, user, password).
  • Đặt tên cho máy chủ Zabbix của bạn.
  • Xác nhận lại các cấu hình đã nhập.
  • Hoàn tất quá trình cài đặt.
  • Đăng nhập với tài khoản mặc định: User là Admin, Password là zabbix.
  • Thiết lập ngôn ngữ tiếng Việt: Vào Administration -> Dictionaries -> Languages và thêm ngôn ngữ tiếng Việt. Sau đó, vào phần Profile của người dùng để chọn tiếng Việt làm ngôn ngữ hiển thị.
  • Khắc phục lỗi hiển thị tiếng Việt bị lỗi font:
    • Tải một font tiếng Việt (ví dụ: SimHei) lên máy chủ Zabbix vào thư mục /usr/share/zabbix/assets/fonts/. Đảm bảo tên file có đuôi là .ttf.
    • Chỉnh sửa file /usr/share/zabbix/include/defines.inc.php. Tìm dòng định nghĩa font chữ cho biểu đồ (ví dụ: graphfont3) và thay đổi tên font thành tên file font bạn vừa tải lên (ví dụ: SimHei).

Thẻ: zabbix CentOS 7 Giám sát mạng apache mysql

Đăng vào ngày 26 tháng 10 lúc 23:27