Cách cài đặt công cụ giám sát mạng Cacti trên Debian 11

theanh

Administrator
Nhân viên
Cacti là một công cụ giám sát mạng nguồn mở, dựa trên web được viết bằng PHP. Cacti là giao diện của RRDtool tiêu chuẩn công nghiệp. Cacti tạo biểu đồ sử dụng băng thông mạng và tải CPU bằng SNMP (Giao thức quản lý mạng đơn giản). Công cụ này được thiết kế đặc biệt để giám sát các thiết bị mạng như bộ chuyển mạch, bộ định tuyến và máy chủ. Cacti lưu trữ tất cả dữ liệu cần thiết trong cơ sở dữ liệu MySQL để tạo nhiều biểu đồ khác nhau.

Hướng dẫn này sẽ chỉ cho bạn cách cài đặt công cụ giám sát Cacti trên Debian 11.

Điều kiện tiên quyết​

  • Máy chủ chạy Debian 11.
  • Mật khẩu gốc đã được cấu hình trên máy chủ.

Bắt đầu​

Trước khi bắt đầu, bạn nên cập nhật hệ thống cơ sở của mình lên phiên bản mới nhất. Thực hiện lệnh sau để cập nhật tất cả các gói:
Mã:
sudo apt update
Mã:
sudo apt upgrade
Sau khi cập nhật gói, bạn có thể tiến hành bước cài đặt tiếp theo.

Cài đặt các phụ thuộc​

Cacti sử dụng SNMP, vì vậy bạn cần cài đặt các phụ thuộc cần thiết bằng cách chạy lệnh sau:
Mã:
sudo apt install snmp snmpd php-snmp rrdtool librrds-perl unzip curl git gnupg2

Cài đặt LAMP Server​

Bạn cần cài đặt Apache, PHP và MySQL/MariaDB trên máy chủ của mình.

Cài đặt Apache Web Server​

Bạn có thể cài đặt Apache web server bằng lệnh sau:
Mã:
sudo apt install apache2 -y
Tiếp theo, khởi động dịch vụ Apache và cho phép dịch vụ Apache khởi động khi khởi động bằng cách chạy lệnh sau:
Mã:
sudo systemctl start apache2
Mã:
sudo systemctl enable apache2

Cài đặt PHP​

Bạn cần cài đặt PHP và các tiện ích mở rộng PHP cần thiết khác:
Mã:
apt install php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y
Tiếp theo, thực hiện một số sửa đổi cho Tệp php.ini:
Mã:
vim /etc/php/*/apache2/php.ini
Bây giờ, hãy thực hiện các thay đổi như được hiển thị bên dưới:
Mã:
memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata
Bây giờ, hãy lưu và đóng tệp, sau đó chỉnh sửa php.ini cho CLI:
Mã:
vim /etc/php/*/cli/php.ini
Tiếp theo, hãy thực hiện các thay đổi sau:
Mã:
memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata
Lưu và đóng tệp, sau đó khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart apache2

Cài đặt và cấu hình máy chủ cơ sở dữ liệu cho Cacti​

MySQL/MariaDB là phần phụ trợ cho Cacti. Bạn có thể cài đặt MariaDB bằng cách chạy lệnh sau:
Mã:
sudo apt install mariadb-server
Tiếp theo, khởi động dịch vụ MariaDB, bật dịch vụ khi khởi động hệ thống và kiểm tra trạng thái dịch vụ MariaDB bằng lệnh sau:
Mã:
sudo systemctl start mariadb
Mã:
sudo systemctl enable mariadb
Mã:
sudo systemctl status mariadb
Tiếp theo, đăng nhập vào shell MariaDB bằng cách thực thi lệnh sau:
Mã:
mysql
Sau khi đăng nhập, tạo cơ sở dữ liệu và người dùng cho Cacti bằng cách chạy lệnh sau:
Mã:
CREATE DATABASE cactidb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Mã:
GRANT ALL PRIVILEGES ON cactidb.* TO 'cacti_user'@'localhost' IDENTIFIED BY 'password';
Mã:
ALTER DATABASE cactidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Tiếp theo, xả các đặc quyền để áp dụng các thay đổi và thoát khỏi shell MariaDB bằng lệnh bên dưới:
Mã:
xả các đặc quyền;
Mã:
exit;
Bây giờ, bạn cần nhập dữ liệu múi giờ vào cơ sở dữ liệu MariaDB. Thực hiện lệnh bên dưới để nhập múi giờ:
Mã:
mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql



Bây giờ, hãy đăng nhập vào shell MariaDB và cấp các đặc quyền cần thiết cho múi giờ MySQL bằng cách chạy lệnh sau:
Mã:
mysql
Mã:
GRANT SELECT ON mysql.time_zone_name TO cacti_user@localhost;
Tiếp theo, xóa các đặc quyền và thoát khỏi shell MariaDB:
Mã:
xóa các đặc quyền;
Mã:
exit;


Tiếp theo, hãy chỉnh sửa tệp cấu hình mặc định của MariaDB:
Mã:
vim /etc/mysql/mariadb.conf.d/50-server.cnf
Đầu tiên, hãy bình luận hai dòng sau bằng cách thêm #tag
Mã:
#collation-server = utf8mb4_general_ci
#character-set-server = utf8mb4
Tiếp theo, Thêm/Sửa đổi các dòng sau bên dưới phần [mariadb]:
Mã:
collation-server = utf8mb4_unicode_ci
character-set-server=utf8mb4
max_heap_table_size = 128M
tmp_table_size = 128M
join_buffer_size = 128M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 1G
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000
innodb_doublewrite = 0
Bây giờ, hãy lưu và thoát tệp và khởi động lại dịch vụ MariaDB để áp dụng các thay đổi:
Mã:
systemctl restart mariadb
Sau khi khởi động lại dịch vụ, bạn có thể tiến hành bước tiếp theo.

Cài đặt và cấu hình Cacti​

Bây giờ, hãy tải xuống phiên bản Cacti mới nhất từ trang web chính thức của Cacti bằng lệnh wget:
Mã:
wget https://www.cacti.net/downloads/cacti-latest.tar.gz
Sau đó, giải nén tệp tar.gz bằng cách chạy lệnh sau:
Mã:
tar -zxvf cacti-latest.tar.gz
Bây giờ, di chuyển thư mục đã giải nén đến đường dẫn gốc của Apache bằng cách thực hiện lệnh sau:
Mã:
mv cacti-1* /var/www/html/cacti
Tiếp theo, nhập cơ sở dữ liệu vào cơ sở dữ liệu 'cactidb' của cacti bằng lệnh bên dưới:
Mã:
mysql cactidb < /var/www/html/cacti/cacti.sql
Bây giờ hãy chỉnh sửa config.php và nhập Chi tiết cơ sở dữ liệu Cacti của bạn.
Mã:
cd /var/www/html/cacti/include/
Mã:
vim config.php
Tiếp theo, thực hiện thay đổi trong các dòng sau:
Mã:
$database_type = 'mysql';
$database_default = 'cactidb';
$database_hostname = 'localhost';
$database_username = 'cacti_user';
$database_password = 'password';
$database_port = '3306';
Bây giờ, hãy thiết lập quyền cần thiết cho thư mục cacti bằng lệnh bên dưới:
Mã:
chown -R www-data:www-data /var/www/html/cacti/
Mã:
chmod -R 775 /var/www/html/cacti/
Bây giờ, hãy thiết lập tần suất thu thập dữ liệu bằng cách sử dụng cronjob cho Cacti với lệnh sau:
Mã:
vim /etc/cron.d/cacti
Thêm dòng sau để thiết lập Cacti Pollor chạy poller.php sau mỗi năm phút.
Mã:
*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1
Lưu và thoát tệp.

Cấu hình máy chủ ảo Apache cho Cacti​

Tiếp theo, bạn cần tạo một tệp cấu hình máy chủ ảo Apache riêng cho Cacti. Bạn có thể tạo nó bằng lệnh bên dưới:
Mã:
vim /etc/apache2/sites-available/cacti.conf
Sau đó, thêm các dòng sau:
Mã:
Alias /cacti /var/www/html/cacti

 
 Options +FollowSymLinks
 AllowOverride None
 = 2.3>
 Require all granted
 
 
 Order Allow, Deny
 Allow from all
 

 AddType application/x-httpd-php .php


 php_flag magic_quotes_gpc Off
 php_flag short_open_tag On
 php_flag register_globals Off
 php_flag register_argc_argv On
 php_flag track_vars On
 # thiết lập này là cần thiết cho một số ngôn ngữ
 php_value mbstring.func_overload 0
 php_value include_path .


 DirectoryIndex index.php
Tiếp theo, bạn cần kích hoạt tệp máy chủ ảo này. Thực hiện lệnh bên dưới để bật nó.
Mã:
a2ensite cacti
Xác minh tệp cacti.conf bằng cách chạy lệnh sau:
Mã:
ls -l /etc/apache2/sites-enabled/cacti.conf
Tiếp theo, bạn phải khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart apache2
Sau khi khởi động lại dịch vụ Apache, hãy thực hiện lệnh bên dưới để kiểm tra trạng thái dịch vụ Apache:
Mã:
systemctl status apache2
Đầu ra:
Mã:
? apache2.service - Máy chủ HTTP Apache
 Đã tải: đã tải (/lib/systemd/system/apache2.service; đã bật; cài đặt trước của nhà cung cấp: đã bật)
 Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ 4, ngày 29 tháng 6 năm 2022 lúc 07:22:07 UTC; 3 giây trước
 Tài liệu: https://httpd.apache.org/docs/2.4/
 Tiến trình: 63096 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 PID chính: 63100 (apache2)
 Nhiệm vụ: 6 (giới hạn: 1132)
 Bộ nhớ: 13,6M
 CPU: 100ms
 CGroup: /system.slice/apache2.service
 ??63100 /usr/sbin/apache2 -k start
 ??63101 /usr/sbin/apache2 -k start
 ??63102 /usr/sbin/apache2 -k start
 ??63103 /usr/sbin/apache2 -k start
 ??63104 /usr/sbin/apache2 -k bắt đầu
 ??63105 /usr/sbin/apache2 -k bắt đầu

29 tháng 6 07:22:07 debian-11 systemd[1]: Đang khởi động Máy chủ HTTP Apache...
Ở giai đoạn này, Cacti của bạn đã được cài đặt và cấu hình, và bạn có thể tiến hành bước tiếp theo để truy cập Cacti từ trình duyệt web.

Giao diện web Cacti​

Bây giờ, hãy mở trình duyệt web của bạn và nhập URL sau với địa chỉ IP của bạn:
Mã:
http://your-server-ip/cacti
Bạn sẽ thấy trang đăng nhập Cacti.



Nhập tên người dùng và mật khẩu mặc định là admin và nhấp vào nút Đăng nhập. Bạn sẽ được chuyển hướng đến màn hình đặt lại mật khẩu như hiển thị bên dưới:



Sau khi thay đổi mật khẩu mặc định, hãy nhấp vào nút Lưu. Bạn sẽ thấy màn hình Thỏa thuận cấp phép:



Chọn hộp kiểm Chấp nhận thỏa thuận cấp phép GPL và nhấp vào nút Bắt đầu. Bạn sẽ thấy Kiểm tra trước khi cài đặt và các thông tin cảnh báo khác trên màn hình tiếp theo:



Nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình Loại cài đặt sau:



Tại đây, bạn có thể chọn loại cài đặt bạn muốn, sau đó nhấp vào nút Tiếp theo. Tiếp theo, bạn sẽ thấy màn hình Kiểm tra quyền thư mục:



Nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình Vị trí nhị phân quan trọng và Phiên bản như bên dưới:



Nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình Bảo vệ danh sách trắng xác thực đầu vào:



Chọn hộp kiểm “Tôi đã đọc tuyên bố này” và Nhấp vào nút Tiếp theo. Bạn sẽ được chuyển hướng đến màn hình Hồ sơ mặc định:



Nhập thông tin theo yêu cầu của bạn và nhấp vào nút Tiếp theo. Tiếp theo, bạn sẽ thấy màn hình Thiết lập mẫu:



Nhấp vào nút Tiếp theo và bạn sẽ thấy cài đặt liên quan đến UTF-8 trên màn hình sau:



Nhấp vào nút Tiếp theo. Bạn sẽ thấy màn hình Xác nhận cài đặt:



Chọn hộp kiểm “Xác nhận cài đặt” rồi nhấp vào nút Cài đặt. Bạn sẽ thấy nhật ký cài đặt trên màn hình tiếp theo:



Sau khi quá trình cài đặt hoàn tất, hãy nhấp vào nút Bắt đầu. Bạn sẽ thấy màn hình Cacti Dashboard:


Kết luận​

Từ bài viết này, bạn đã cài đặt và cấu hình thành công công cụ giám sát Cacti trên Debian 11. Bây giờ bạn có thể thêm thiết bị Mạng, giám sát băng thông mạng, tạo nhiều biểu đồ giám sát mạng và nhiều hơn nữa. Bạn có thể dễ dàng truy cập Cacti từ trình duyệt web. Vui lòng đừng ngần ngại hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên