如何在Fedora 22/CentOS 7.0上配置Cacti

时间:2020-03-05 15:26:17  来源:igfitidea点击:

CACTI是一个用于自由源Web的基于Web的前端网络图形图形应用程序,专为行业标准数据记录工具RRDTOOL设计。

它为其用户提供了一个快速投掷器,高级图形模板,多个数据采集方法和用户管理功能,具有其基于Web的基于Web的界面。
它通常用于绘制诸如CPU负载和网络带宽利用之类的度量的时间序列数据。
它可以处理多个用户,并使用自己的图表集显示用户的带宽统计信息。
Cacti 的一些令人敬畏的特征如下。

  • 它由具有自动填充支持的无限图表项组成。
  • 图数据操作和灵活数据源。
  • 数据在非标准脚本上收集的数据收集
  • 它包括内置的SNMP支持。
  • 它包含图形,数据源,主机模板
  • 图数据的树,列表和预览视图
  • 它规定了基于用户的管理和安全性。

以下是我们如何在运行Fedora 22或者CentOS 7作为操作系统的计算机中安装和设置Cacti的一些简单的步骤。

1.安装 LAMP 堆栈

首先,我们需要在Linux机器中安装 LAMP 堆栈。
LAMP 堆栈是Apache Web服务器,Mariadb/MySQL数据库服务器和PHP模块的组合,这对于Cacti至关重要,以便为其提供Web界面。
要安装完整的 LAMP 堆栈,我们需要根据我们的机器安装的操作系统根据root/sudo访问下运行以下命令。

在Fedora 22.

# dnf install httpd mariadb mariadb-server php php-mysql php-gd php-pear php-common php-cli php-devel php php-mbstring nano

在CentOS 7

# yum install httpd mariadb mariadb-server php php-mysql php-gd php-pear php-common php-cli php-devel php php-mbstring nano

2.安装EPEL REPO

要安装Cacti,我们需要安装和启用EPEL存储库,因为在Fedora 22或者CentOS 7的默认存储库上不可用Cacti。
要安装Epel Repo,我们需要运行以下命令。

在Fedora 22.

# dnf install http://ftp.cuhk.edu.hk/pub/linux/fedora-epel/7/x86_64/e/epel-release-7-5.noarch.rpm

在CentOS 7

# yum install epel-release

2.安装SNMP和CACTI

现在,我们将在我们的Linux机器中安装SNMP和Cacti。
由于SNMP和CACTI可在CentOS和Fedora存储库的官方存储库上提供,我们将使用其默认包管理器安装它。

在Fedora 22.

# dnf install php-snmp net-snmp net-snmp-utils cacti

在CentOS 7

# yum install php-snmp net-snmp net-snmp-utils cacti

3.启动和启用Apache,MariaDB和SNMP

在CentOS和Fedora机器中启动Apache Web Server,SNMP和MariaDB,我们需要在Linux终端或者控制台中运行以下SystemD命令。

# systemctl start httpd mariadb snmpd

接下来,我们还需要启用它们与系统启动一起启用,以便它将在每次重新启动中自动进入工作。

# systemctl enable httpd mariadb snmpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/snmpd.service to /usr/lib/systemd/system/snmpd.service.

4.配置MariaDB.

正如我们刚刚在Linux机器中安装了我们的MariaDB数据库服务器,我们现在需要为MariaDB root用户分配新密码。
然后,我们将为我们的CACTI创建一个新数据库以存储其数据。
要配置MariaDB,我们需要在终端或者控制台中运行以下命令。

# mysql_secure_installation

这将要求我们输入root的密码,但我们之前没有设置任何密码,我们首次安装MariaDB,我们只需按Enter键并更新。
然后,我们将被要求设置root密码,这里我们将为y命中y并输入MariaDB root的密码。
然后,我们将简单地重新按Enter键以设置进一步配置的默认值。

….
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on…
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!
…
installation should now be secure.
Thanks for using MariaDB!

接下来,我们将以root用户身份登录MariaDB命令提示符。

# mysql -u root -p

其中我们需要输入我们在上面设置的MariaDB root帐户的密码。

在我们登录MariaDB命令提示符后,我们将为CACTI创建数据库。

> CREATE DATABASE cacti;
> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'password';
> FLUSH PRIVILEGES;
> EXIT;

注意:强烈建议根据要求或者对安全问题的要求更改上述变量Cacti,Cactiuser和密码。

5.配置Cacti.

现在,我们将配置我们的CACTI的安装,包括数据库配置。
在我们配置CACTI之前,我们需要首先将转储的CACTI数据库表进入我们刚刚创建的MariaDB服务器中的数据库。
为此,我们需要运行以下命令。

# mysql -u cactiuser -p cacti < /usr/share/doc/cacti-*/cacti.sql

其中我们将被要求输入数据库用户Cactiuser的密码。
我们需要输入上述步骤中已设置的密码。
其中我们将数据库用户作为Cactiuser和密码作为密码。

在我们成功导入数据库表之前,我们现在将配置我们的CACT配置文件。
为此,我们需要使用我们喜欢的文本编辑器编辑/usr/share/cacti/include/config.php文件。

# nano /usr/share/cacti/include/config.php

然后,我们需要将文件更改为下面的显示,使用我们在我们的MariaDB服务器的数据库中设置的上面设置的变量。

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "password";
$database_port = "3306";
$database_ssl = false;

在我们配置了CACTI配置文件后,我们将保存并退出它。

6.将 Cacti 添加到Cronjob

我们现在将为 Cacti 添加一个cronjob,以便我们的cacti按计划在CronJob配置中按计划工作。
为此,我们需要在使用我们喜欢的文本编辑器下创建名为Cacti的文件。

# nano /etc/cron.d/cacti

然后,我们将通过从行中删除"#"来取消注释以下行。

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

之后,我们将保存并退出该文件。

7.修复所有权和防火墙

接下来,我们需要更改两个目录RRA的所有权,并在/var/www/html/cacti/to cacti下映,因此它将在其文件和目录上完全读写访问。

# chown -R cacti /usr/share/cacti/rra//usr/share/cacti/log/

由于Fedora 22和CentOS 7都预先安装了防火墙作为默认防火墙解决方案,我们需要使防火墙允许HTTP端口,以便通过Web浏览器访问CACTI。
为此,我们需要运行以下命令。

# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --reload

8.配置Apache Config

我们现在需要允许从互联网上访问 Cacti 。
为此,我们需要使用文本编辑器编辑/etc/httpd/conf.d/cacti.conf。

# nano /etc/httpd/conf.d/cacti.conf

然后,我们需要将文件添加,如下所示。

Alias /cacti /usr/share/cacti
<Directory /usr/share/cacti
<IfModule mod_authz_core.c>
# httpd 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# httpd 2.2
Order deny,allow
Deny from all
Allow from all
</IfModule>
</Directory>

保存并退出文件后,我们将通过运行以下命令重新启动Apache Web服务器。

# systemctl restart httpd

9. Web安装

最后,在我们成功设置Cacti和Lamp Stack之后,我们现在将导航到Cacti的Web界面。
我们需要根据我们的配置将我们的Web浏览器指向http://ip-address/cacti或者http://theitroad.com/cacti。
然后,我们将通过GNU通用公共许可证的部分将我们的第一个屏幕视为安装教程。

要继续,我们需要点击下一个按钮,使我们能够接受CACTI软件的许可协议。
然后将加载另一个页面,这将要求我们选择我们要设置的安装类型。
随着我们要设置新的 Cacti 的新安装,我们将简单选择作为新安装并验证所确定的信息,然后单击"下一步"继续。

之后,如果系统上可用所有必需的二进制依赖项,我们将显示。
正如我们在上述步骤中已安装的那样,我们会看到依赖项在系统中找到,如下所示。
之后,我们只需点击完成即可继续进一步。

然后,我们需要输入Cacti的默认用户名和密码,以便登录仪表板。
Cacti的默认用户名和密码分别是admin和admin。

输入默认用户名和密码后,我们将单击"登录"。
然后,我们需要在登录后更改我们的密码。
将出现一个页面以更改登录密码,我们需要输入一个新的密码,该密码将用于登录Cacti的仪表板。

进入我们的新登录密码后,我们将单击"保存"以应用。
然后,我们将欢迎我们的 Cacti 仪表板,如下所示。

要创建新图形,我们需要单击侧列上的新图形,用于我们的新设备。
要查看我们的图形,我们需要单击图形。
我们可以更改,导入和导出模板,从剪枝板上管理用户和系统实用程序。