Cacti是一个基于PHP和MySQL的网络开源监控工具。它是一个强大的网络监控和图形工具,使用SNMP(简单网络管理协议)来收集和存储数据在RRDTool(循环数据库工具)数据引擎中。RRDtool还负责创建图形。
Cacti具有一些伟大的功能,并已成为基于图形监控任务的最佳工具之一。它适用于不同类型的企业。它很适合ISP(互联网服务提供商)等公司,因为Cacti提供了广泛的硬件监控功能。它也适用于专用服务器供应商,因为它支持多个用户,每个用户可以创建自己的图表。
Cacti是一个可扩展的框架,用于运营监控和故障管理。它为不同的设备和不同的图形/集合体/图形模板提供了多种模板。它还可以与不同类型的网络服务器一起运行,如Apache/httpd和Nginx。
现在让我们开始安装cacti监控工具
sudo dnf install epel-release
输入'y'并按'Enter'继续安装:
2. 使用下面的命令安装httpd web服务器
sudo dnf install httpd -y
sudo systemctl enable --now httpd
sudo systemctl is-enabled httpd
3. 接下来,必须在系统中安装PHP。默认情况下,Rocky Linux资源库提供了多个版本的PHP。而你要安装的是资源库中的最新版本,即PHP 7.4。
使用下面的dnf命令启用7.4版本的PHP模块。
dnf module enable php:7.4
输入'y'确认并按'Enter'。
现在执行下面的 DNF 命令来安装 PHP 包。
sudo dnf install -y php php-xml php-session php-sockets php-ldap php-gd php-json php-mysqlnd php-gmp php-mbstring php-posix php-snmp php-intl
当 PHP 包安装完成后,使用 nano/vim 编辑器编辑 '/etc/php.ini' 配置。
nano /etc/php.ini
取消对选项'date.timezone'的注释,输入你当前的时区。
date.timezone = Europe/Amsterdam
修改选项'memory_limit'和'max_execution_time',如下所示。
memory_limit = 512M
max_execution_time = 60
保存配置并退出。
现在重新加载 httpd 服务以应用并完成 PHP 配置。
sudo systemctl restart httpd
4. 在安装完所有这些包之后,你必须安装SNMP和rrdtool。
SNMP被cacti用来收集设备信息,rrdtool用来将收集到的数据存储为.rra格式,然后在cacti仪表板上显示为图形信息。
使用下面的dnf命令安装SNMP和rrdtool。
sudo dnf install -y net-snmp net-snmp-utils net-snmp-libs rrdtool -y
安装完成后,使用下面的命令启动并启用SNMP服务。
sudo systemctl enable --now snmpd
sudo systemctl is-enabled snmpd
现在进入下一阶段,安装和配置MariaDB数据库。
sudo dnf install -y @mariadb
等待所有软件包的安装完成。
2. 2.接下来,改变你的当前工作目录到'/etc/my.cnf.d'目录,用nano/vim编辑mariadb配置'mariadb-server.conf'。
cd /etc/my.cnf.d/
nano mariadb-server.cnf
在'[mysqld]'行下粘贴以下配置。这个配置是基于cacti的安装要求。
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
innodb_file_format = Barracuda
max_heap_table_size=32M
tmp_table_size=32M
join_buffer_size=64M
# 25% Of Total System Memory
innodb_buffer_pool_size=1GB
# pool_size/128 for less than 1GB of memory
innodb_buffer_pool_instances=10
innodb_flush_log_at_timeout=3
innodb_large_prefix=1
innodb_read_io_threads=32
innodb_write_io_threads=16
innodb_io_capacity=5000
innodb_io_capacity_max=10000
log-error = /var/log/mariadb/mariadb-error.log
log-queries-not-using-indexes = 1
slow-query-log = 1
slow-query-log-file = /var/log/mariadb/mariadb-slow.logSave the configuration and exit.
3. 接下来,使用以下命令启动并启用mariadb服务。
sudo systemctl enable --now mariadb
检查当前的mariadb服务。
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
确保mariadb服务处于活动状态,并且正在运行。下面是你将得到的类似输出。
4. 在所有mariadb配置完成后,将你系统中可用的时区表加载并填充到默认的数据库 "mysql "中。
使用以下命令将时区表加载并填充到数据库 "mysql "中。
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
输入你的mariadb根密码,然后按'Enter'键。现在继续下一步,为Cacti安装创建一个新的数据库和用户。
mysql -u root -p
输入你的mariadb根密码,然后按'Enter'键。
1. 使用下面的查询创建一个新的数据库 "cacti"。
create database if not exists cacti;
2. 创建一个新的用户'cactiuser',并将'cacti'的所有数据库权限授予这个新用户。
CREATE USER 'cactiuser'@'localhost' IDENTIFIED BY 'cacti_password';
GRANT ALL PRIVILEGES ON cacti.* TO 'cactiuser'@'localhost';
3. 另外,你必须授予用户'cactiuser'在'time_zone_name'表上的'SELECT'特权(该表在数据库'mysql'上可用)。
GRANT SELECT ON mysql.time_zone_name TO 'cactiuser'@'localhost';
现在重新加载所有表的权限并输入'exit'。
FLUSH PRIVILEGES;
exit
现在仙人掌的所有要求都已安装完毕,你可以准备安装仙人掌监控工具了。
sudo dnf install cacti
输入'y'来确认,然后按'Enter'。
而所有仙人掌的源代码将在'/usr/share/cacti/'目录下可用。
2. 在cacti安装完成后,使用下面的mysql命令将数据库模式导入到'cacti'数据库中。
mysql -u cactiuser -p cacti < /usr/share/doc/cacti/cacti.sql
输入'cactiuser'的密码,对于这个例子,密码是'cacti_password'。
3. 接下来,使用nano/vim编辑器编辑cacti配置"/usr/share/cacti/cacti.php"。
nano /usr/share/cacti/include/config.php
改变详细的数据库配置,如下所示。
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'cacti_password';
$database_port = '3306';
保存配置并退出。
4. 默认情况下,仙人掌的安装只能从本地主机访问。为了允许从外部网络访问,编辑仙人掌的httpd配置。
使用nano/vim编辑器编辑配置"/etc/httpd/conf.d/cacti.conf"。
nano /etc/httpd/conf.d/cacti.conf
将 "Require host localhost "选项改为 "Require all granted",如下所示。
Require all granted
保存配置并退出。
现在重新启动 httpd 服务以应用新的配置。
sudo systemctl restart httpd
5. 接下来,编辑cron配置"/etc/cron.d/cacti "以启用cacti轮询器。
nano /etc/cron.d/cacti
取消对下面这一行的注释。
*/5 * * * * apache /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
保存配置并退出。
6. 如果你已经在服务器上运行了firewalld,使用下面的命令将HTTP和HTTPS服务添加到firewalld中。
firewall-cmd add-service=http --permanent
firewall-cmd --reload
现在你已经完成了cacti的基本配置。进入下一步,开始并完成Cacti安装向导。
上一条: 如何注册.se域名,瑞典域名?
下一条: 挪威.no域名注册步骤