Macld Linux Hướng dẫn cài đặt và cấu hình Zabbix

Hướng dẫn cài đặt và cấu hình Zabbix

Hướng dẫn cài đặt và cấu hình zabbix

 

1. Chuẩn bị 1

2. Cài đặt 2

2.1. Cài đặt database 2

2.1.1. Cài kho lưu trữ MariaDB 2

2.1.2. Cập nhật và cài đặt MariaDB 2

2.1.3. Cấu hình MariaDB 2

2.2. Cài đặt Zabbix 6

2.2.1. Cài đặt Zabbix repository 6

3. Cấu hình Zabbix cơ bản 18

3.1. Giám sát máy chủ Linux 18

3.2. Giám sát Switch Cisco 19

3.3. Cấu hình cảnh báo qua telegram 22

3.3.1. Tạo bot trên Telegram 22

3.3.2. Lấy ID chat 24

  1. Chuẩn bị

Chuẩn bị những server cần thiết để làm lab

  • Server Ubuntu 20.04 để cài Zabbix Server
  • Switch Cisco
  • Server Linux (cài 1 số dịch vụ )
  • Window
  • Telegram

Hình 1: Các server trong bài lab

  1. Cài đặt

Mở bất kì Terminal nào mà bạn muốn sử dụng(putty, cmd, Powershell,…) để SSH vào server Ubuntu 20.04. Ở đây mình dùng Terminal. Gõ lệnh sau để SSH vào server
ssh [email protected]

Sau khi đã SSH vào server ta chạy lệnh sau để cập nhật

sudo apt update & apt upgrade -y (option -y để không cần phản nhấn yes khi cài đặt hay cập nhật package)

    1. Cài đặt database
      1. Cài kho lưu trữ MariaDB

Cài kho lưu trữ MariaDB bằng lệnh sau

#sudo apt install software-properties-common curl -y

#curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup

#sudo bash mariadb_repo_setup

      1. Cập nhật và cài đặt MariaDB

Chạy các lệnh sau để cập nhật và cài đặt MariaDB

apt update

apt install mariadb-server mariadb-client -y

      1. Cấu hình MariaDB

Sau khi cài đặt ta chạy lệnh sau để cấu hình DB

sudo mysql_secure_installation

Hình 2: Thiết lập password cho root user database

A screenshot of a computer Description automatically generated

Hình 3: Thiết lập MariaDB

Chạy lệnh sau để khởi động lại dịch vụ Mariadb

systemctl status mariadb (kiểm tra trạng thái mariadb service)

systemctl enable mariadb (Bật để MariaDB khởi động cùng hệ thống)

systemctl restart mariadb (Khởi động lại MariaDB)

A screenshot of a computer program Description automatically generated

Hình 4: Kiểm tra trạng thái MariaDB

Login vào database và tạo database cho Zabbix

#mysql -uroot -p

A screenshot of a computer Description automatically generated

Hình 5: Login vào database

Sau khi login vào thì chạy các lệnh sau để tạo database cho Zabbix

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by ‘password’;
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

Hình 6: Tạo Database và User cho zabbix

    1. Cài đặt Zabbix

Zabbix có nhiều version, ở đây mình chọn version 6.4.

      1. Cài đặt Zabbix repository

Chạy lệnh sau để tải và cài đặt Zabbix repository

# wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu20.04_all.deb
# dpkg -i zabbix-release_6.4-1+ubuntu20.04_all.deb
# apt update

A screenshot of a computer screen Description automatically generated

Hình 7: Tải và cài đặt Repo cho Zabbix

      1. Cài đặt Zabbix
        Chạy lệnh sau để cài đặt Zabbix và các phụ thuộc của nó

# sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Hình 8: Cài đặt Zabbix

Sau khi cài xong gõ lệnh sau để xác minh phiên bản Zabbix đã được cài đặt

# apt-cache policy zabbix-server-mysql

A computer screen with white text Description automatically generated

Hình 9: Kiểm tra version Zabbix

Bây giờ ta sẽ import cơ sở dữ liệu vào Database vừa tạo bằng lệnh

sudo zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql –default-character-set=utf8mb4 -uzabbix -p zabbix

A screen shot of a computer Description automatically generated

Hình 10: Import database zabbix

  • Disable log_bin_trust_function_creators option sau khi import xong database schema bằng lệnh sau

 mysql -uroot -p (login vào database và nhập password)
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

      1. Cấu hình database với Zabbix 6.4

Mở file /etc/zabbix/zabbix_server.conf (có thể dùng lệnh vi, nano,… để chỉnh sửa file) ở đây mình dùng vi

sudo vi /etc/zabbix/zabbix_server.conf

và tìm đến và sửa các dòng sau : DBName, DBUser, DBPassword và thay đổi thông tin cho trùng khớp với dữ liệu đã tạo trên Database trước đó

Đưa con trỏ tới dòng DBPassword= và nhấn phím “i” để vào mode insert.

A screenshot of a computer Description automatically generated

Hình 11: Chỉnh sửa file cấu hình

A screenshot of a computer Description automatically generated

Hình 12: Điền thông tin của database đã tạo vào file cấu hình

Sau khi chỉnh xong thông tin cần thiết thì nhấn phím “ESC” để thoát mode insert và nhấn phím :wq hoặc 😡 để lưu file đã chỉnh sửa

Hình 13: Lưu file cấu hình trong linux

Tiếp tục mở file vi /etc/Zabbix/apache.conf để chỉnh sửa Timezone. Tìm tới block <Ifmodule mod_php7.c> và thêm dòng

php_value date.timezone Asia/Ho_Chi_Minh vào để thiết lập Timezone của Việt Nam

Hình 14: Cấu hình Timezone Việt Nam

Sau khi cấu hình xong ta tiến hành khởi động lại Zabbix-server, Zabbix-agent và apache2

# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2

Hình 15: Khởi động lại service zabbix

A screenshot of a computer program Description automatically generated

Hình 16: Kiểm tra trạng thái Zabbix Service

Sau khi khởi động lại dịch vụ Zabbix xong thì ta lên trình duyệt và nhập IP hoặc tên miền của của server Zabbix để truy cập vào dashboard theo đường dẫn sau:

http://<IP>/zabbix hoặc http://<domain>/zabbix

 

A screenshot of a computer Description automatically generated

Hình 17: Truy cập Web

Kéo thanh bar xuống để kiểm tra các thành phần có OK không, nếu OK hết thì nhấn Next step

A screenshot of a computer Description automatically generated

Hình 18: Thiết lập ban đầu

Kiểm tra các thông tin DBName, User cho có khớp với thông tin đã khai báo trước đó và thông tin đã tạo trong database chưa, rồi nhập Password của User Zabbix rồi nhấn Next step

A screenshot of a computer Description automatically generated

Hình 19: Nhập thông tin DB

Nhập thông tin Server Zabbix -> Next Step

A screenshot of a computer Description automatically generated

Hình 20: Nhập tên zabbix server

A screenshot of a computer Description automatically generated

Hình 21: Review lại thông tin đã nhập

Zabbix đã thiết lập thành công, nhấn Finish

A person in a suit and tie Description automatically generated

Hình 22: Thiết lập thành công

Sau khi nhấn Finish thì web sẽ redirect tới trang đăng nhập, nhập tài khoản mặc định của Zabbix là Admin/zabbix để đăng nhập.

A screenshot of a login form Description automatically generated

Hình 23: Màn hình Login zabbix

Màn hình Dashboard của Zabbix, ở màn hình này ta có thể tuỳ chỉnh theo ý muốn

A screenshot of a computer Description automatically generated

Hình 24: Dashboard của Zabbix mặc định

  1. Cấu hình Zabbix cơ bản
    1. Giám sát máy chủ Linux

Chạy các lệnh sau để cài đặt Zabbix-agent

sudo apt update

sudo apt install zabbix-agent

Mở file Zabbix-agentd.conf

sudo vi /etc/zabbix/zabbix_agentd.conf

Tìm đến các dòng sau và chỉnh lại thông số sau

Server=<IP_Zabbix_Server>

ServerActive=<IP_Zabbix_Server>

Hostname=<Hostname_của_máy_Client>

Khởi động lại Zabbix agent để áp dụng cấu hình.

sudo systemctl restart zabbix-agent

sudo systemctl enable zabbix-agent

sudo systemctl status zabbix-agent

Trên Zabbix truy cập vào Data collection -> Hosts -> Create host

Host name: Đặt tên cho host cần giám sát

Templates: Lựa chọn template cho service cần giám sát

Host groups: Lựa chọn group cho host để dễ dàng quản lý

Interface: Click Add để và nhập IP của host cần giám sát

A screenshot of a computer Description automatically generated

Hình 25: Thêm host giám sát

Host database đã được giám sát, ta có thể theo dõi các host được giám sát trong phần Monitoring

A screenshot of a computer Description automatically generated

Hình 26: Giám sát server

Ta có thể xem các thông tin chi tiết trong phần Monitoring -> Latest data

    1. Giám sát Switch Cisco

Để giám sát Switch Cisco ta cần phải cấu hình SNMP trên SW

Cấu hình SNMP trên SW Cisco

Hình 27: Cấu hình SNMP trên Switch

A screenshot of a computer program Description automatically generated

Hình 28: Show thông tin SNMP trên Switch

Thiết lập trên Zabbix Server

Chạy lệnh sau để xem zabbix có nhận được thông tin từ switch chưa

sudo apt install snmp snmp-mibs-downloader

snmpwalk -v2c -c public 10.0.0.30 (IP switch)

A screenshot of a computer program Description automatically generated

Hình 29: Zabbix Server đã nhận được thông tin từ Switch

Cài đặt Template cho Cisco Switch trong Zabbix

Truy cập Data collection -> Hosts -> Create Host rồi nhập các thông tin cần thiết. Chọn Templates phù hợp.

Mục Interface lựa chọn type là SNMP và nhập IP của Switch vào

A screenshot of a computer Description automatically generated

Hình 30: Thêm switch để giám sát

Sau khi thêm Switch vào,

Truy cập Monitoring -> Latest data , chọn host muốn xem thông tin, ví dụ ở đây là host Cisco Switch

A screenshot of a computer Description automatically generated

A screenshot of a computer Description automatically generated

Hình 31: Thông tin các metric của Switch được hiển thị


=> Tương tự thì ta có thể thêm rất nhiều thiết bị vào để giám sát thông qua Zabbix-agent hoặc giao thức SNMP.

    1. Cấu hình cảnh báo qua telegram

Một phần không thể thiếu trong giám sát hệ thống là thông báo để không phải khi nào cũng nhìn vào màn hình, có thể là qua email, telegram, slack,… nhưng trong bài này ta sẽ tiến hành cấu hình cảnh báo thông qua telegram

      1. Tạo bot trên Telegram

Kết nối với botfather để lấy TOKEN. Vào Telegram và gõ vào ô tìm kiếm @BotFather chọn BotFather có tick xanh như hình hoặc truy cập trực tiếp bằng link https://telegram.me/BotFather để kết nối với @BotFather

Nhấn vào BotFather và nhấn Start để bắt đầu

A screenshot of a computer Description automatically generated

Hình 32: Tìm BotFather và start lên

Vì trước đây mình đã start lên rồi nên không cần phải start nữa

Sau khi start bot lên thì gõ các lệnh sau vào khung chat với @BotFather để tạo bot

/newbot

macld2024zabbix_bot

macld2024zabbix_bot

BotFather sẽ trả về cho bạn 1 token, ta cần lưu token này lại.

Hình 33: Tạo bot và lấy token

      1. Lấy ID chat

Lấy ID bot

Trong thanh tìm kiếm của telegram tìm IDBOT và nhấn Start để bắt đầu trò chuyện

Hình 34: Tìm IDbot

Tiếp theo gõ /getid để lấy ID bot

Lấy ID group

Để lấy ID group thì đầu tiên ta phải có 1 group telegram. Ở đây mình đã có 1 group lên là LAB-noti và mình sẽ demo với group này

Bây giờ sẽ thêm @myidbot và macld2024zabbix_bot vào thành viên group. Sau khi thêm xong thì gõ /getgroupid @macld2024zabbix_bot

A screenshot of a social media post Description automatically generated

Hình 35: Thêm bot vào group

A screenshot of a computer Description automatically generated

Hình 36: Thêm IDBot vào group

A screenshot of a chat Description automatically generated

Hình 37: Lấy ID group

      1. Thiết lập telegram trên Zabbix
  1. Thiết lập Media types
    Truy cập Alerts -> Media Types

Kéo xuống tìm Telegram -> Enable . Sau đó nhấn vào telegram để thiết lập thông số

Hình 38: Thiết lập Telegram trên giao diện

Điền ID group và Token ở trên vào mục To và Token

A screenshot of a computer Description automatically generated

Hình 39: Điền Token và ID group

Sau khi điền xong nhấn Update để cập nhật

Ta tiến hành kiểm tra để xem đã thiết lập thành công chưa bằng cách nhấn vào nút Test bên phải dòng telegram

A screenshot of a computer Description automatically generated

Hình 40: Test xem telegram đã hoạt động chưa

Nhập thử message và nhấn Test

A screenshot of a telegram Description automatically generated

Hình 41: Test notification

Thông báo như vậy là đã thành công

Hình 42: Nhận thông báo telegram

  1. Tạo user alert qua telegram

Truy cập User-> Users và nhấn vào user Admin

A screenshot of a computer Description automatically generated

Hình 43: Tạo User alert

Qua tab Media và nhấn Add

A screenshot of a computer Description automatically generated

Hình 44: Chỉnh sửa Media

Nhập ID bot đã lấy ở bước trên rồi nhấn ADD

A screenshot of a computer Description automatically generated

Hình 45: Nhập ID bot

Sau khi Add xong thì nhấn Update

A screenshot of a computer Description automatically generated

Hình 46:Nhấn Update

  1. Tạo Action để gửi thông báo qua telegram

Bây giờ ta cần tạo 1 action để gửi thông báo tới telegram, nếu không thì hệ thống chỉ cảnh báo ở giao diện của Zabbix

Truy cập Alerts -> Action -> Trigger actions -> Create action.

Tại mục Action nhập tên action sau đó chọn qua tab Operations

A screenshot of a computer Description automatically generated

Hình 47: Tạo action

Default operation step duration: 1m

Operations: chọn Add , tại mục Send to user groups chọn Add và thêm Zabbix administrators vào

Recovery operations: Bạn chọn Add , tại mục Send to user groups chọn Add và thêm Zabbix administrators vào.

Rồi nhấn Add

A screenshot of a computer Description automatically generated

Hình 48: Action đã được kích hoạt

Sau khi thiết lập hoàn tất ta sẽ tiến hành test thử bằng cách tắt ping, tắt Zabbix-agent của server window. Và sẽ có cảnh báo tới Telegram như hình bên dưới.

Hình 49: Nhận thông báo khi service hoặc host fail

Trên đây là cách cài đặt và cấu hình cơ bản cho Zabbix. Để chuyên sâu hơn thì ta sẽ tiếp tục ở bài sau.

 

https://www.zabbix.com/manuals

https://www.zabbix.com/documentation/6.4/en/manual

https://www.zabbix.com/download

https://www.zabbix.com/download_agents?version=6.4&release=6.4.19&os=Windows&os_version=Any&hardware=amd64&encryption=OpenSSL&packaging=MSI&show_legacy=0

Leave a Reply

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *