Zabbix là một công cụ mã nguồn mở được sử dụng để giám sát, theo dõi hoạt động và hiệu suất của máy chủ, thiết bị mạng và hệ thống CNTT trên môi trường Mạng.

Zabbix sử dụng cơ sở dữ liệu như MySQL, MariaDB, Oracle và IBM DB2 để lưu trữ, giao diện web Zabbix được viết bằng PHP.

Một số tính năng chính của Zabbix:

  • Giám sát tất cả mọi thứ trên mạng như máy chủ ,các thiết bị mạng và ứng dụng.
  • Sử dụng giao diện quản trị nền web.
  • Giám sát sử dụng CPU của một Process cụ thể hoặc một nhóm các Process.
  • Sử dụng cơ chế phát hiện mức độ thấp, zabbix có thể phân biệt giữa VMware hypervisor (ESXi) và các máy ảo.
  • Hỗ trợ giám sát không cần agent.
  • Giám sát các máy chủ cơ sở dữ liệu như MySQL, PostgreSQL, Oracle và Microsoft SQL Server.
  • Là mã nguồn mở nên không có chi phí liên quan và có thể được triển khai trên môi trường nhỏ và lớn.
  • Giám sát phần cứng sử dụng Zabbix thông qua IPMI.
  • Giám sát thiết bị mạng sử dụng các snmp agent.

Trong bài viết này chúng ta sẽ cài đặt phiên bản mới nhất của Zabbix 3.0 trên CentOS 7.x và RHEL 7.x. Máy chủ cần chuẩn bị như sau:

  • Hostname = zabbix.tgs.com.vn
  • Địa chỉ IP = 192.168.1.7
  • OS = CentOS 7.x / RHEL 7.x

Đầu tiên cập nhật hệ thống của bạn bằng cách sử dụng dưới đây lệnh:

[root@zabbix ~]# yum -y update
[root@zabbix ~]# reboot

Bước 1: Enable EPEL và Zabbix Repository

Zabbix không có sẵn trong các repository mặc định, vì vậy ta cần cài thêm 2 repository sau:

[root@zabbix ~]# yum install epel-release
[root@zabbix ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

Bước 2: Install Zabbix Server, Database, Web Server and PHP packages

Lệnh sau để cài các gói Zabbix server, Database Sever (MariaDB) , Web Server ( http) và PHP.

[root@zabbix ~]# yum -y install zabbix-server-mysql zabbix-web-mysql mysql mariadb-server httpd php

Bước 3: Configure Zabbix Database.

Start the Database (MariaDB) service

[root@zabbix ~]# systemctl start mariadb
[root@zabbix ~]# systemctl enable mariadb
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
[root@zabbix ~]#

Sử dụng  ‘mysql_secure_installation‘ để set root password cho mariadb database and một vài cấu hình khách như ‘Remove anonymous users‘, ‘Disallow root login remotely‘ và ‘Remove test database and access to it

[root@zabbix ~]# mysql_secure_installation

Tạo Zabbix Database (zabbix_db) và database user (zabbix_user)

[root@zabbix ~]# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix_db;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix_db.* to zabbix_user@localhost identified by <new_password>;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit
Bye
[root@zabbix ~]#

Tạo database Schema:

[root@zabbix ~]# cd /usr/share/doc/zabbix-server-mysql-3.0.1
[root@zabbix zabbix-server-mysql-3.0.1]# gunzip create.sql.gz
[root@zabbix zabbix-server-mysql-3.0.1]# mysql -u root -p zabbix_db < create.sql
Enter password:
[root@zabbix zabbix-server-mysql-3.0.1]#

Bước 4: Cấu hình Zabbix Server

Cấu hình Zabbix Server trong file cấu hình sau (/etc/zabbix/zabbix_server.conf)

[root@zabbix ~]# vi /etc/zabbix/zabbix_server.conf
...................................
DBHost=localhost
DBName=zabbix_db
DBUser=zabbix_user
DBPassword=XXXXXXX
...................................

Save & exit the file.

Cấu hình PHP Setting

Thiết lập các thông số sau trong file config PHP (/etc/php.ini )

[root@zabbix ~]# vi /etc/php.ini
................................
max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = Asia/Ho_Chi_Minh
...............................

Mở Port trên Firewall

[root@zabbix ~]# firewall-cmd --permanent --add-port=10050/tcp
success
[root@zabbix ~]# firewall-cmd --permanent --add-port=10051/tcp
success
[root@zabbix ~]# firewall-cmd --permanent --add-port=80/tcp
success
[root@zabbix ~]# firewall-cmd --reload 
success
[root@zabbix ~]# systemctl restart firewalld
[root@zabbix ~]#

Set Selinux rule.

[root@zabbix ~]# setsebool -P httpd_can_connect_zabbix=1
[root@zabbix ~]# setsebool -P httpd_can_network_connect=true

Khởi động Zabbix và Web Server

[root@zabbix ~]# systemctl start zabbix-server
[root@zabbix ~]# systemctl enable zabbix-server
ln -s '/usr/lib/systemd/system/zabbix-server.service' '/etc/systemd/system/multi-user.target.wants/zabbix-server.service'
[root@zabbix ~]# 
[root@zabbix ~]# systemctl start httpd
[root@zabbix ~]# systemctl enable httpd
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
[root@zabbix ~]#

Bước 5: Đăng nhập giao diện Zabbix Web

http://192.168.1.7/zabbix/ hoặc https://tgs.com.vn/zabbix

Click  ‘Next step’. Một khi các điều kiện chuẩn bị đã đầy đủ, tiếp tục Next step

Xác đinh Zabbix Database name, database user và password.

Click  ‘Next step’ để tiếp tục

Xác đinh Zabbix Server Name và Port number.

Click ‘Next step’ và hoàn thành quá trình cài đặt

Đăng nhập Zabbix với user name ‘admin‘ và password ‘zabbix

Zabbix Server Dashboard

Bước 6: Thêm một node vào Zabbix Server để Monitor.

Giả sử ta muốn thêm một máy Ubuntu 16.04 vào Zabbix Server để monitor. Ta cần cài zabbix-agent:

sudo apt-get install zabbix-agent

Edit Agent file và xác định địa chỉ Zabbix Server

tgs.com.vn@cloud:~$ sudo vi /etc/zabbix/zabbix_agentd.conf
..................................
Server=192.168.1.7
ServerActive=192.168.1.7
Hostname=cloud.tgs.com.vn.com
..................................

Khởi động Zabbix Agent Service

tgs.com.vn@cloud:~$ sudo systemctl start zabbix-agent
tgs.com.vn@cloud:~$ sudo systemctl enable zabbix-agent
Synchronizing state of zabbix-agent.service with SysV init with /lib/systemd/systemd-sysv-install...
Executing /lib/systemd/systemd-sysv-install enable zabbix-agent
tgs.com.vn@cloud:~$

Quay trở lại Zabbix Web Interface .

Click on Configuration —> Hosts –> Create Host

Xác định Host name, địa chi IP và Group names. Trong Tab Templates, search template thích hợp và Add.

Vậy là ta đã hoàn thành các bước cơ bản để cấu hình Zabbix. Chúc bạn thành công