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:
MYSQL> Create database zabbix_database;
Tạo người dùng DB và cấp đặc quyền.
MYSQL> create user 'zabbixuser'@'localhost' identified BY '123456789Zabbix!01'; MYSQL> grant all privileges on zabbix_database.* to zabbixuser@localhost ; MYSQL> 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
https://blog.cloud365.vn/monitor/zabbix4-thiet-lap-canh-bao-qua-email/
https://amionrails.wordpress.com/2018/03/29/how-to-change-timezone-for-zabbix-frontend-gui/