如何在CentOS 8 / RHEL 8上安装仙人掌监控工具

Cacti是一个免费的开源前端网络监视工具,用于监视和绘制LAN中各种IT资源的时间序列指标。 它使用 RRD工具 以指定的时间间隔轮询服务,然后在直观的图表上表示它们。

Cacti监控各种指标,例如CPU,内存和带宽利用率,磁盘空间,文件系统和运行进程等。 您可以监视设备,例如服务器,路由器,交换机,甚至防火墙。 此外,您可以配置警报,以便在系统停机的情况下可以通过电子邮件接收通知。 在本指南中,我们将引导您完成在CentOS 8 / RHEL 8上安装Cacti监视工具的操作。在撰写本教程时,最新的Cacti版本是1.2.14版。

步骤1)安装Apache Web服务器

Cacti是基于Web的绘图工具,因此,我们需要安装要在其上运行监视工具的Web服务器。 在这里,我们将安装Apache Web服务器。 为此,执行命令:

$ sudo dnf install httpd -y

步骤2)安装PHP和其他PHP扩展

Cacti监视工具的前端完全是PHP驱动的,因此,我们需要安装PHP和所需的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

步骤3)安装MariaDB数据库服务器

在安装过程中,Cacti需要其自己的数据库来存储其文件。 此外,它需要一个数据库来存储填充图形时所需的所有必需数据。

MariaDB是MySQL的一个分支和直接替代品。 它被认为更健壮和功能丰富,尽管MySQL仍然可以运行,但强烈建议使用MariaDB。 要安装MariaDB服务器,请运行以下命令:

$ sudo dnf install -y mariadb-server mariadb

步骤4)安装SNMP和RRD工具

接下来,我们将安装SNMP和RRDtool,这对于收集和处理系统指标至关重要。

$ sudo dnf install -y net-snmp net-snmp-utils net-snmp-libs rrdtool

步骤5)启动并启用服务

安装了运行Cacti所需的所有必要服务后,我们将如下所示启动它们:

$ sudo systemctl start httpd
$ sudo systemctl start snmpd
$ sudo systemctl start mariadb

此外,请确保在启动时启用它们,以便它们在启动或重新引导时自动启动。

$ sudo systemctl enable httpd
$ sudo systemctl enable snmpd
$ sudo systemctl enable mariadb

步骤6)为仙人掌创建数据库

在此步骤中,我们将为仙人掌创建一个数据库和用户,然后将所有特权授予该仙人掌用户。 运行以下命令:

CREATE DATABASE cactidb;
GRANT ALL ON cactidb.* TO [email protected] IDENTIFIED  BY ‘cactipassword’;
FLUSH PRIVILEGES;
EXIT;

确保记下数据库名称,用户名和密码,因为稍后在安装过程中将需要这些名称。

接下来,我们需要将mysql_test_data_timezone.sql导入到mysql数据库中,如图所示。

$ mysql -u root -p mysql < /usr/share/mariadb/mysql_test_data_timezone.sql

然后登录到mysql数据库,并授予cacti用户访问mysql.time_zone_name表的权限。

GRANT SELECT ON mysql.time_zone_name TO [email protected];
FLUSH PRIVILEGES;
EXIT;

授予访问仙人掌用户中心8

建议对数据库进行一些调整以获得最佳性能。 在mariadb-server.cnf文件中的 [ mysqld ] 如图所示。

$ sudo vi /etc/my.cnf.d/mariadb-server.cnf
............
collation-server=utf8mb4_unicode_ci
character-set-server=utf8mb4
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_read_io_threads=32
innodb_write_io_threads=16
innodb_io_capacity=5000
innodb_file_format=Barracuda
innodb_large_prefix=1
innodb_io_capacity_max=10000
..............

保存并退出配置文件

Optimize-Cactidb​​-CentOS8

步骤7)安装和配置仙人掌监控工具

有了数据库并满足所有其他先决条件后,现在让我们安装Cacti。

Cacti软件包在默认的CentOS 8 / RHEL 8存储库中不可用,而在EPEL存储库中可用。 所以运行以下命令来启用epel repo

$ sudo dnf install epel-release -y

要安装仙人掌监控工具,请运行以下命令:

$ sudo dnf install cacti -y

安装后,您可以通过运行以下命令来确认仙人掌的安装:

$ rpm -qi cacti

您应该获得详细的输出,其中显示版本,发行版,大小和供应商,并提及一些Cacti软件包。

Cacti-rpm-info-centos8

接下来,将默认的仙人掌数据库表导入到先前在步骤6中创建的仙人掌数据库。要查找默认数据库的路径,请运行:

$ rpm -ql cacti | grep cacti.sql

获得路径后,请使用以下命令导入默认数据库:

$ mysql -u root -p cactidb < /usr/share/doc/cacti/cacti.sql

导入默认的CactiDB-CentOS8

接下来,编辑仙人掌配置文件并指定数据库详细信息,如下所示:

$ sudo vim /usr/share/cacti/include/config.php

设置数据库名称,用户名和密码,其余选项保持不变。

仙人掌配置CentOS8-RHEL8

保存更改并退出配置文件。 之后,如图所示,通过编辑php.ini文件来设置时区。

$ sudo vim /etc/php.ini
................................. 
date.timezone = Asia/Dubai
memory_limit = 512M
max_execution_style = 60
.................................

保存并退出文件。

接下来,编辑cron条目,如下所示

$ sudo vim /etc/cron.d/cacti

取消注释此行以确保Cacti每5分钟轮询一次数据并保存配置

*/5 * * * *   apache /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

接下来,修改Apache的配置文件以启用Cacti的远程安装。

$ sudo vim /etc/httpd/conf.d/cacti.conf

修改以下httpd ACL以将访问权限授予远程用户

将Require host localhost更改为Require all grant

将“允许从本地主机”修改为“允许来自” [network subnet]

对于网络子网,请确保指定您自己的网络子网。 对于我们的情况,子网是192.168.2.0/24

允许仙人掌子网-httpd-centos8

为了使所有更改生效,请执行:

$ sudo systemctl restart httpd
$ sudo systemctl restart php-fpm

步骤8)为Cacti配置防火墙规则

在最终设置Cacti之前,请在防火墙上允许HTTP服务,如下所示:

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --reload

步骤9)通过浏览器设置Cacti

要完成Cacti的设置,请如图所示访问服务器的IP

http:// server-ip / cacti

您将显示如下所示的页面。 使用显示的凭据登录

用户名:管理员

密码:管理员

点击“登录”继续。

仙人掌登录页面CentOS8-RHEL8

接下来,将要求您通过提供自己的密码来更改默认登录密码。 确保您提供了一个强密码(由大写,小写,数字和特殊字符组成)。 然后点击“保存”。

更改仙人掌密码CentOS8

在下一步中,选中“接受GPL许可协议”复选框,然后单击“开始”。

接受GPL-许可证-仙人掌-CentOS8

Cacti将执行安装前检查,确认是否已安装必需的PHP模块以及是否已配置正确的数据库设置。 如果一切看起来不错,请单击“下一步”。 如果有问题,请单击“上一步”按钮,然后返回到配置文件并添加缺少的内容。

安装前检查仙人掌向导向导CentOS8

之后,选择“ New Primary Server”选项进行安装,并在继续操作之前确保数据库连接详细信息正确。

选择仙人掌安装类型CentOS8

下一步将探查任何目录问题,并确保具有正确的权限。 如果一切正常,请单击“下一步”,否则单击“上一步”并纠正所有问题。

目录权限检查仙人掌CentOS8

接下来,安装程序检查是否已安装必需软件包的所有二进制路径。

验证二进制路径仙人掌安装向导centos8

最新版本的Cacti引入了另一个关键步骤,那就是验证数据输入方法。 在安装仙人掌到白名单数据输入方法之后,这为您提供了一些步骤。 请仔细阅读说明,然后选中“我已阅读此声明”按钮。

输入验证白名单仙人掌安装CentOS8

在下一步中,选择用于扫描设备的cron间隔,然后如图所示定义网络子网。 然后点击“下一步”。

仙人掌自动化子网安装向导CentOS8

Cacti随附的模板使您能够监视和绘制网络中各种设备的图形,包括Cisco设备(路由器和交换机),Linux和Windows计算机。 默认情况下,选中所有选项以包括您需要的所有模板。 如果对此感到满意,只需单击“下一步”。

模板设置仙人掌安装CentOS8

之后,安装程序将检查数据库排序规则是否符合UTF8。 点击下一步’。

符合UTF8的仙人掌CentOS8

要开始安装,请单击“确认安装”复选框,然后单击“安装”。

选择确认安装仙人掌CentOS8

Cacti的安装将开始,大约需要5分钟。 随时休息一下,做些伸展运动,

仙人掌安装进度CentOS8

完成所需软件包的安装后,单击“入门”按钮。

仙人掌安装后选择开始

如图所示,这将直接带您到Cacti仪表板。

仙人掌仪表板CentOS8

默认情况下,Cacti将为安装了Cacti的本地服务器创建资源利用率图。 要访问图形,请浏览:

图形–>默认树–>本地–>选择您的设备。

等待大约10分钟,以填充图形。

图-仙人掌仪表板-CentOS8

这使我们结束了本教程的结尾。 我个人使用Cacti监视一系列设备,并且可以证明它在监视多个设备并在系统停机时发送警报的效率。

另请阅读如何在CentOS 8 / RHEL 8上安装Zabbix监视工具

Sidebar