[Zabbix] – Cài đặt Zabbix 4.0 trên RHL7/Oracle Linux

1. Giới thiệu

Zabbix là gì ?

Zabbix là một phần mềm mã nguồn mở được sử dụng để giám sát và quản lý hệ thống, mạng, ứng dụng và các tài nguyên khác trong môi trường máy tính. Nó cho phép bạn theo dõi các chỉ số khác nhau, như tài nguyên hệ thống, hiệu suất ứng dụng, băng thông mạng và nhiều thông số khác để đảm bảo rằng hệ thống của bạn hoạt động ổn định và đáp ứng đúng yêu cầu.

Oracle Linux là một hệ điều hành open source của Oracle, mình sẽ dùng hệ điều hành này để cài đặt Zabbix, phiên bản của hệ điều hành là 7.9.

2. Hướng dẫn Cài đặt

2.1 Vô hiệu hóa SELinux

Mở file SELinux cấu hình và chỉnh sửa theo nội dung sau:

vim /etc/sysconfig/selinux

Đổi “SELINUX=thực thi” thành “SELINUX=vô hiệu hóa”

2.2 Cài đặt và cấu hình Apache

Sử dụng các lệnh sau:

yum -y install httpd

Kiểm tra tình trạng httpd.

systemctl status httpd.service

Nếu dịch vụ Apache không chạy, hãy khởi động thủ công.

systemctl start httpd.service

systemctl enable httpd

2.3 Install PHP ( Cái này khá lâu – Làm ly cafe rồi chờ nha mọi người)

yum install -y php php-pear php-cgi php-common php-mbstring php-snmp php-gd php-pecl-mysql php-xml php-mysql php-gettext php-bcmath

Sửa đổi Múi giờ PHP bằng cách chỉnh sửa tệp php.ini.

vim /etc/php.ini

Bỏ ghi chú dòng sau và thêm múi giờ của bạn.

date.timezone = Asia/Ho_Chi_Minh

2.4 Cài đặt MariaDB

yum install -y mariadb-server

Bắt đầu dịch vụ MariaDB.

systemctl start mariadb.service

Bật MariaDB khi khởi động hệ thống.

systemctl enable mariadb

Kiểm tra MariaDB khi khởi động hệ thống.

systemctl status mariadb.service

Chạy lệnh sau để bảo mật MariaDB.

mysql_secure_installation

Nhấn enter cho lần cài đầu tiên

Sau đó nhập Password cho user root: vd: 123456789Zabbix!01

Truy cập Database

mysql -u root -p

Nhập mật khẩu đã tạo ở trên.

2.5 Tạo cơ sở dữ liệu cho Zabbix

Bạn có thể chọn bất kỳ tên nào cho cơ sở dữ liệu thay cho zabbix database trong lệnh dưới đây:

Create database zabbix_database;

Tạo người dùng DB và cấp đặc quyền.

create user ‘zabbixuser’@’localhost’ identified BY ‘123456789Zabbix!01’;

grant all privileges on zabbix_database.* to zabbixuser@localhost ;

flush privileges;

2.6 Cài đặt Zabbix và các package liên quan

Thêm repo Zabbix. Sao chép URL tải xuống mới nhất từ ​​trang web chính thức trang mạng. Dán nó vào lệnh dưới đây một cách thích hợp.

rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm ( Có thể thay đổi để thay đổi phiên bản )

rpm -ivh https://repo.zabbix.com/zabbix/6.4/rhel/7/x86_64/zabbix-phát hành-mới nhất.el7.noarch.rpm

Cài đặt Zabbix.

yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get

2.7 Định cấu hình Zabbix

Thay đổi Múi giờ bằng cách chỉnh sửa tệp cấu hình Zabbix Apache.

vim /etc/httpd/conf.d/zabbix.conf

Bỏ ghi chú dòng sau và thêm Múi giờ của bạn.

php_value date.timezone Asia/Ho_Chi_Minh

Các tham số PHP sẽ giống như sau:

php_value max_execution_time 300

php_value memory_limit 128M

php_value post_max_size 16M

php_value upload_max_filesize 2M

php_value max_input_time 300

php_value max_input_vars 10000

php_value always_populate_raw_post_data -1

php_value date.timezone Asia/Ho_Chi_Minh

Khởi động lại dịch vụ HTTPD.

systemctl restart httpd.service

Gói cài đặt Zabbix cung cấp tệp SQL bao gồm lược đồ và dữ liệu ban đầu cho máy chủ Zabbix với MySQL.

Thay đổi thư mục và chuyển đến thư mục Zabbix.

cd /usr/share/doc/zabbix-server-mysql-4.0.X ( X có thể thay đổi)

Nhập tệp kết xuất MySQL.

zcat create.sql.gz | mysql -u zabbixuser -p zabbix_database

Bây giờ hãy sửa đổi tệp cấu hình Zabbix với chi tiết Cơ sở dữ liệu.

vim /etc/zabbix/zabbix_server.conf

Sửa đổi các thông số sau

DBHost=localhost

DBName=zabbix_database

DBUser=zabbixuser

DBPassword=@dfEr234KliT90

Bắt đầu dịch vụ Zabbix.

systemctl start zabbix-server.service

Sau đó lưu và thoát tệp. Khởi động lại dịch vụ Zabbix.

systemctl status zabbix-server.service

Kích hoạt Zabbix khi khởi động hệ thống.

systemctl enable zabbix-server.service

Sửa đổi quy tắc tường lửa.

firewalld-cmd –add-service={http,https} — Permanent

firewalld-cmd –add-port={10051/tcp,10050/tcp} — Permanent

firewalld-cmd –reload

Bây giờ khởi động lại dịch vụ httpd.

systemctl restart httpd

2.8 Cài đặt Zabbix

Bạn có thể truy cập Zabbix bằng URL sau:

http://Server-Host-Name Hoặc IP /zabbix/

Bạn sẽ thấy trang welcome page.

Next một hồi cái bị lỗi này.

Bạn tham khảo link này để fix lỗi này nhé

Xem như vừa rồi là một bài tập làm quen với Mysql/Mariadb nhé Hehe

Đặt tên name: ví dụ zabbix.<domain>.com

Có thể bạn sẽ vào được tài khoản mặc định là admin / zabbix. Còn nếu không được thì tham khảo mục Error để xem cách cài đặt password cho user Admin này.

Tada như vậy là ta đã login vào được trang chủ quản trị của Zabbix rồi. Việc tiếp theo cần làm đó là cài đặt Zabbix Agent để theo dõi các hệ thống nhé.

2.9 Cấu hình để quản lý bằng Zabbix Agent

Zabbix Agent thu thập dữ liệu từ máy khách và gửi chúng đến Zabbix Server. Ta sẽ cài đặt Zabbix Agent trên một server Oracle Linux khác để theo dõi nó.

wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm

Cài đặt Zabbix Agent.

yum install -y zabbix-agent

Bây giờ hãy sửa đổi agent configuration file.

vim /etc/zabbix/zabbix_agentd.conf

Sửa đổi các thông số sau. Thêm dải IP và tên máy chủ bằng tên của bạn trong lệnh bên dưới:

Server=127.0.0.1,192.168.113.0/24 ( Ở đây mình đặt 1 dải IP cùng lớp mạng)

ServerActive=127.0.0.1,192.168.113.8 (IP MÁY CHỦ ZABBIX)

Hostname =( HOSTNAME CLIENT )

Lưu và thoát tệp.

Restart Zabbix agent.

systemctl restart zabbix-agent

Enable on system boot.

systemctl enable zabbix-agent

2.10 Thêm Host trên Zabbix server

Click Configuration → Hosts → Create host

Chỗ Hostname phải trung với chỗ mà bạn đặt biến Hostname cho Zabbix Agent ở mục 9

Chọn Template OS Linux → Add → Update

Kiểm tra Host remote đã add chưa :

Click Monitoring → Graph → Click theo tùy chọn như bên dưới.

Các bạn cứ cài Zabbix Agent và Create Host để quản lý các server khác nhé. Chúc mừng bạn nếu đã đi đến bước này thì bạn đã thành công được 1 /3 đoạn đường rồi. Nếu có bất kỳ lỗi nào thì xem ở mục Error, mình thống kê các lỗi mình gặp trong lúc cài đặt và cách fix để các bạn tham khảo.

Có một cách cài Zabbix cũng rất mau lẹ, đó là xài Docker và sử dụng image có sẵn từ cộng đồng. Cái này mình sẽ làm ở một bài viết khác nhé. Tuy nhiên khuyến khích các bạn nên cài thử như mình trước để hiểu cấu trúc và cách kết nối Zabbix, hiểu hơn khi cài Zabbix cần có gì để khi nếu sau này xảy ra lỗi ta vẫn còn biết để khoanh vùng sửa lỗi bạn nhé.

3. Lỗi

mysql_secure_installation

ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)

fix: Nhấn Enter đến khi pass qua

Error: Không đăng nhập được User

sửa chữa:https://cuongquach.com/reset-mat-khau-admin-zabbix-bang-sql-command.html

mysql -u root -p

Enter password

mysql> use zabbix_database

mysql> update users set passwd=md5(‘123456789Zabbix!01′) where alias=’Admin’;

tk Admin mk 123456789Zabbix!01

4. Kết

Như vậy là đã kết thúc bài viết tuần này. Zabbix là gì, cài đặt như thế nào thì mình nghĩ các bạn đã hiểu được. Với công cụ này mình nghĩ các bạn sẽ quản lý network, phần cứng tốt hơn, trực quan hơn.
Bên cạnh đó Zabbix còn hỗ trợ rất nhiều các API, plugin, template để quản lý. Cái này thì các bạn tham khảo link này để tìm hiểu thêm nha.
Hãy upvote bài viết này. Cho mình 1 like 1 share và ghé trang https://beatcomputer.com để có thêm nhiều bài viết hữu ích khác nhé.

5. Các bài viết tham khảo

How to install and configure Zabbix on CentOS 7

https://blog.cloud365.vn/monitor/zabbix4-thiet-lap-canh-bao-qua-email/

https://viblo.asia/p/zabbix-incorrect-characterset-for-zabbix-database-latin1-instead-utf8-utf8mb3-EoW4oRZXVml

https://amionrails.wordpress.com/2018/03/29/how-to-change-timezone-for-zabbix-frontend-gui/

Zabbix Email Notification Setup