1. Tổng quan.
Zabbix là một phần mềm mã nguồn mã có chức năng giám sát được sử dụng để thu thập các số liệu từ các thiết bị và hệ thống khác nhau như thiết bị mạng, hệ thống VM, hệ thống Linux/Windows và dịch vụ đám mây. Zabbix có thể gửi thông báo thông báo về các vấn đề trong bất kỳ hệ thống được giám sát nào. Baif viết này mình sẽ ướng dẫn chi tiết cách cài đặt Zabbix trên Ubuntu 18.04 và 20.04 giúp giám sát dịch vụ hệ thống với nhiều tính năng độc đáo và khả năng tùy biến cao.
2. Quy trình cài đặt
Bước 1 – Đặt hostname.
sudo hostnamectl set-hostname zabbix-server
Bước 2 – Cài đặt các gói cần thiết và cấu hình môi trường
apt-get update && apt-get install -y \
tmux git vim iputils-ping telnet net-tools wget curl lsb-core systemd rsync netcat \
software-properties-common \
&& echo -e """set number\nsyntax on\nhighlight Comment ctermfg=LightCyan\nset relativenumber\nset shiftwidth=2""" > ~/.vimrc \
&& add-apt-repository ppa:deadsnakes/ppa -y \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y python3.8 python-setuptools python3-pip \
&& pip3 install --upgrade setuptools-rust pip paramiko jsonpath-ng requests netmiko \
&& locale-gen en_US.UTF-8
Bước 3 – Cài đặt Zabbix Server, Zabbix Frontend, Zabbix Nginx Conf, Zabbix SQL Scripts và Zabbix Agent
wget https://repo.zabbix.com/zabbix/6.5/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.5-1%2Bubuntu22.04_all.deb \
&& dpkg -i zabbix-release_6.5-1+ubuntu22.04_all.deb \
&& apt-get update && apt-get -y install \
zabbix-server-mysql zabbix-frontend-php zabbix-sql-scripts zabbix-agent
Bước 4 – Cài đặt MariaDB 10.6.
apt-get -y install mariadb-common mariadb-client-10.6 mariadb-server-10.6
Khởi động MariaDB và bật tính năng tự khởi động theo hệ thống cho nó.
sudo systemctl start mariadb && sudo systemctl enable mariadb
Bước 5 – Cấu hình thông tin kết nối tới Database cho Zabbix Server.
mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'Hoanghd164';"
mysql -u root -pHoanghd164 -e "create database zabbixdb character set utf8mb4 collate utf8mb4_bin;"
mysql -u root -pHoanghd164 -e "grant all privileges on zabbixdb.* to hoanghd@localhost identified by 'Hoanghd164';"
mysql -u root -pHoanghd164 -e "FLUSH PRIVILEGES;"
Import dữ liệu vào DB đã tạo.
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uroot -pHoanghd164 zabbixdb
Bước 6 – Thay đổi thông tin kết nối đến DB cho Zabbix Server.
sed -i "s/DBName=.*/DBName=zabbixdb/" /etc/zabbix/zabbix_server.conf
sed -i "s/DBUser=.*/DBUser=hoanghd/" /etc/zabbix/zabbix_server.conf
echo "DBPassword=Hoanghd164" >> /etc/zabbix/zabbix_server.conf
Bước 7 – Cài đặt và config Nginx làm Webserver.
sudo apt -y install zabbix-nginx-conf nginx
Chạy script để chỉnh sửa nội dung file /etc/nginx/conf.d/zabbix.conf
. Nội dung thay đổi của mình là thông tin port và domain.
sed -i "s/# listen 8080;/ listen 80;/" /etc/nginx/conf.d/zabbix.conf
sed -i "s/# server_name example.com;/ server_name zabbix.hoanghd.com;/" /etc/nginx/conf.d/zabbix.conf
Sau khi sửa xong bạn sẽ có kết quả như dưới.
Xóa file sites-enabled mặc định.
sudo rm -rf /etc/nginx/sites-enabled/default
Tạo liên kết file zabbix.conf tới thư mục /etc/nginx/sites-enabled/
.
ln -s /etc/nginx/conf.d/zabbix.conf /etc/nginx/sites-enabled/zabbix.conf
Khởi động Nginx và bật tính năng tự khởi động theo hệ thống cho nó.
sudo systemctl restart nginx
sudo systemctl enable nginx
Bước 8 – Config Zabbix Webinterface.
Dùng trình duyệt login vào url http://zabbix.hoanghd.com
-> next step
Nếu mọi thứ đều ổn thì sẽ có các tích xanh như dưới, bấm next step.
Điền các thông số phù đã thiết lập ở trên vào cho phù hợp, cần lưu ý các vùng khoanh đỏ sau đó bấm vào next step.
Đặt tên cho Zabbix server name và bấm next step.
Nhìn lại bảng tóm tắt các thông tin, nếu không có gì thay đổi, bấm next step.
Bảng thông báo quá trình cài đặt thành công.
Login vào với thông tin là username là Admin và mật khẩu là zabbix nhé.
Và đây là thành quả.
Chúc các bạn thành công.