在RHEL/CentOS 8/7和Fedora 30上安装Cacti(网络监控)
Cacti 工具是一款面向 IT 业务的开源、基于 Web 的网络监控和系统监控图形解决方案。Cacti 使用户能够定期查询服务,以使用 RRDtool 对结果数据执行映射。它通常用于根据磁盘空间等指标来可视化时间序列数据。
在本指南中,我们将向您展示如何使用 DNF 包管理器工具在 RHEL、CentOS 和 Fedora 系统上使用 Net-SNMP 工具安装和配置名为 Cacti 的完整网络监控应用程序。
Cacti 需要在 Linux 系统(如 RHEL/CentOS/Fedora)上安装以下软件包。
的
Apache:一个显示由 PHP 和 RRDTool 生成的网络图的 Web 服务器。
MySQL:存储仙人掌数据的数据库服务器。
PHP:使用 RRDTool 的图形脚本平台。
PHP-SNMP :用于 SNMP 访问数据的 PHP 插件。
NET-SNMP:SNMP(简单网络管理协议)用于管理网络。
RRDTool :用于管理和检索时间线数据(例如 CPU 负载、网络带宽等)的数据库工具。
的
注意:此处显示的安装说明是在 CentOS 7.5 Linux 发行版上编写的。
在 RHEL/CentOS/Fedora 上安装所需的 Cacti 软件包
首先,我们需要使用默认的包管理工具一一安装以下依赖包,如图所示。
# yum install httpd httpd-devel [在 RHEL/CentOS 7/6 上]
# dnf install httpd httpd-devel [在 RHEL/CentOS 8 和 Fedora 30 上]
# yum install mysql mysql-server [在 RHEL/CentOS 6 上]
MariaDB 是社区开发的 MySQL 数据库项目的一个分支,提供了 MySQL 的替代方案。此前,官方支持的数据库是RHEL/CentOS和Fedora下的MySQL。
最近,RedHat 进行了从 MySQL 到 MariaDB 的新事务,因为 MariaDB 是 MySQL 在 RHEL/CentOS 8/7 和 Fedora 19 上的原始实现。
# yum install mariadb-server -y [在 RHEL/CentOS 7 上]
# dnf install mariadb-server -y [在 RHEL/CentOS 8 和 Fedora 30 上]
# yum 安装 php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
或者
# dnf 安装 php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
# yum 安装 php-snmp
或者
# dnf 安装 php-snmp
# yum 安装 net-snmp-utils net-snmp-libs
或者
# dnf 安装 net-snmp-utils net-snmp-libs
# 百胜安装rrdtool
或者
#dnf安装rrdtool
监控 Apache、MySQL 和 SNMP 服务
安装完 Cacti 安装所需的所有软件后,让我们使用以下命令一一启动它们。
服务 httpd 启动
服务 mysqld 启动
服务 snmpd 启动
systemctl 启动 httpd.service
systemctl 启动 mariadb.service
systemctl 启动 snmpd.service
配置系统启动连接
配置 Apache、MySQL 和 SNMP 服务默认启动。
/sbin/chkconfig --levels 345 httpd 开启
/sbin/chkconfig --levels 345 mysqld 开启
/sbin/chkconfig --levels 345 snmpd 打开
systemctl 启用 httpd.service
systemctl 启用 mariadb.service
systemctl 启用 snmpd.service
在 RHEL/CentOS/Fedora 上安装 Cacti
此时您需要安装并运行 EPEL 存储库。创建存储库后,输入以下命令来安装 Cacti 应用程序。
# yum install cacti [在 RHEL/CentOS 7 上]
# dnf install cacti [在 RHEL/CentOS 8 和 Fedora 30 上]
为 Cacti 安装配置 MySQL 服务器
我们需要为 Cacti 配置 MySQL,为此我们需要保护新安装的 MySQL 服务器,然后使用 Cacti 用户创建一个 Cacti 数据库。如果您已经安装了 MySQL 并且它是安全的,那么您无需再次安装。
# mysql_secure_安装
使用新创建的密码登录MySQL服务器,并使用Cacti用户创建Cacti数据库并为其设置密码。
mysql -u 根 -p
输入密码:
欢迎使用 MySQL 监视器。命令以 ; 结尾 或\g。
你的 MySQL 连接 ID 是 3
服务器版本:5.1.73 源码分发
版权所有 (c) 2000、2013,Oracle 和/或其附属公司。版权所有。
Oracle 是 Oracle Corporation 和/或其公司的注册商标
附属机构。其他名称可能是其各自的商标
拥有者。
输入“帮助”;或“\h”寻求帮助。键入“\c”以清除当前输入语句。
mysql>创建数据库 cacti ;
查询正常,1 行受影响(0.00 秒)
mysql>将 cacti.* 上的所有内容授予 [email IDENTIFIED BY 'howtoing' ;
查询正常,0 行受影响(0.00 秒)
mysql> FLUSH 权限;
查询正常,0 行受影响(0.00 秒)
mysql>退出;
再见
mysql -u 根 -p
输入密码:
欢迎使用 MariaDB 监视器。命令以 ; 结尾 或\g。
您的 MariaDB 连接 ID 是 3
服务器版本:5.5.41-MariaDB MariaDB服务器
版权所有 (c) 2000、2014,Oracle、MariaDB Corporation Ab 等。
输入“帮助”;或“\h”寻求帮助。键入“\c”以清除当前输入语句。
MariaDB [(无)]>创建数据库 cacti ;
查询正常,1 行受影响(0.00 秒)
MariaDB [(none)]> GRANT ALL ON cacti.* TO [email IDENTIFIED BY 'howtoing' ;
查询正常,0 行受影响(0.00 秒)
MariaDB [(无)]> FLUSH 权限;
查询正常,0 行受影响(0.00 秒)
MariaDB [(无)]>退出;
再见
使用 RPM 命令找到数据库的文件路径,要在新创建的 Cacti 数据库中安装 cacti 表,请使用以下命令。
# rpm -ql 仙人掌 | grep cacti.sql
/usr/share/doc/cacti-1.2.6/cacti.sql
或者
/usr/share/doc/cacti/cacti.sql
现在我们已经定义了Cacti.sql文件的位置,输入以下命令来插入表,这里需要输入Cacti用户密码。
mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
输入密码:
使用每个编辑器打开一个名为 /etc/cacti/db.php 的文件。
# vi /etc/cacti/db.php
进行以下更改并保存文件。确保您设置的密码正确。
/* 确保这些值反映您的实际数据库/主机/用户/密码 */
$database_type = “ mysql ”;
$database_default = “仙人掌”;
$database_hostname =“本地主机”;
$database_username = "仙人掌";
$database_password = "这里是你的密码";
$database_port = "3306";
$database_ssl = false;
仙人掌的厨房设计
iptables -A 输入 -p udp -m 状态 --state 新 --dport 80 -j 接受
iptables -A 输入 -p tcp -m 状态 --state 新 --dport 80 -j 接受
服务 iptables 保存
防火墙cmd --permanent --zone=public --add-service=http
防火墙-cmd --重新加载
为 Cacti 安装配置 Apache 服务器
使用您选择的编辑器打开名为 /etc/httpd/conf.d/cacti.conf 的文件。
# vi /etc/httpd/conf.d/cacti.conf
您必须为每个本地网络或 IP 配置授予对 Cacti 应用程序的访问权限。例如,我们已授予对本地 LAN 网络 172.16.16.0/20 的访问权限。对你来说,情况会有所不同。
别名 /cacti /usr/share/cacti
<目录/usr/share/cacti/>
订单拒绝、允许
所有人都否认
允许来自172.16.16.0/20
</目录>
在最新版本的 Apache(例如:Apache 2.4)中,您需要根据以下设置进行更改。
别名 /cacti /usr/share/cacti
<目录/usr/share/cacti/>
<IfModule mod_authz_core.c>
# httpd 2.4
要求全部授予
</如果模块>
<IfModule!mod_authz_core.c>
# httpd 2.2
订单拒绝、允许
所有人都否认
允许所有
</如果模块>
</目录>
最后,重新启动Apache服务。
service httpd restart [在 RHEL/CentOS 6 和 Fedora 18-12 上]
systemctl restart httpd.service [在 RHEL/CentOS 8/7 和 Fedora 19 及以上]
Cacti 的 Cron 系统
Ʋu 文件 /etc/cron.d/cacti。
# vi /etc/cron.d/cacti
删除以下行。poller.php 脚本每 5 分钟运行一次,并从 Cacti 应用程序用于显示图像的已知主机收集数据。
#*/5 * * * * 仙人掌 /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
Cacti 安装程序安装运行
最后,Cacti 已准备就绪,只需访问 http://YOUR-IP-HERE/cacti/ 并按照安装程序指南完成以下屏幕即可。输入初始登录信息并按 Enter 按钮。
用户: 管理员
密码: 管理员
接下来,更改默认的 Cacti 密码。
接受 Cacti 许可协议。
接下来,屏幕将显示 Cacti 安装的预安装检查,请/etc/php.ini按所示更正文件中的建议设置,并在更改后重新启动 Apache。
内存限制=800M
最大执行时间 = 60
日期.时区 = 亚洲/加尔各答
同样,您还必须向用户 Cacti 授予对 MySQL TimeZone 数据库的访问权限,以便数据库中填充全局 TimeZone 数据。
mysql> 使用 mysql;
mysql> 将 mysql.time_zone_name 上的选择授予 [email ;
mysql> 刷新权限;
请选择安装类型为“新安装”。
在继续之前,请确保所有文件夹权限均正确。
在继续之前,请确保所有这些关键二进制位置和版本值均正确。
请选择用于投票源的默认数据源模板。
请选择您要在 Cacti 安装后使用的设备模板。
在 MySQL 配置文件 /etc/my.cnf 的 [mysqld] 部分下配置服务器排序规则,如图所示。
[mysqld]
字符集服务器=utf8mb4
排序规则服务器=utf8mb4_unicode_ci
您的 Cacti 服务器即将准备就绪。请确认您愿意继续。
有关更多信息和使用方法,请访问 Cacti 页面。