《Cacti实战》——2.3 Cacti的安装与配置

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

本节书摘来自华章计算机《Cacti实战》一书中的第2章,第2.3节,作者:刘钊,张跃著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.3 Cacti的安装与配置

下面介绍如何安装和配置Cacti,由于Cacti的程序主要是在Web浏览器环境下安装,所以从本章开始,不再分为Windows平台和Linux平台来介绍,都统一以Web浏览器的方式来介绍,如果涉及平台之间的不同配置,会在文中说明。
2.3.1 安装和配置Cacti的基础平台
由于采用了基于Web浏览器的方式,Cacti基础平台的安装非常简单,也不存在针对某一特定版本或者特定系统环境的操作。按照Cacti安装程序给出的向导和建议,可以很方便地安装Cacti系统。
1.?建立Cacti基础数据库
还记得在第1章中介绍的么?MySQL就像“吕秀才”一样,把Cacti的基础配置、用户管理、系统配置等信息妥善地存储起来,这就需要创建一个“小账本”。
建立Cacti数据库的脚本一般会存放在Cacti的安装文件中,用户会找到一个名为“cacti.sql”的文件,下面执行它,建立系统所需的数据库。请参考配置脚本2-17的内容进行配置。
配置脚体2-17 建立Cacti基础数据库

#在MySQL数据库中建立一个名为Cacti的数据库
mysqladmin --user=root --password create cacti
#将cacti.sql文件在MySQL实例上执行,创建表结构
mysql --user=root --password cacti < E:\apache2\htdocs\cacti\cacti.sql
#为Cacti用户赋予权限
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'Cacti用户的
密码';
mysql> flush privileges;

2.?Cacti的安装和配置
Cacti的主体程序可以在Cacti的官方网站上下载,本书的实验环境版本是cacti-0.8.8b,将程序解压,放到Web服务器的目录中。然后打开Cacti程序的目录,编辑include文件夹中的config.php文件,修改Cacti连接的数据库属性,如配置脚本2-18所示。
配置脚体2-18 修改Cacti的数据库连接

$database_type = "mysql";                #数据库的类型
$database_default = "cacti";            #数据库的名称
$database_hostname = "localhost";        #主机名称,IP地址也可以
$database_username = "cacti”;            #数据库的用户名
$database_password = "Cacti用户的密码";        #数据库用户名的密码

这里还需要修改rra文件夹下的log目录权限,以保证Cacti运行的时候,可以正常使用日志。输入配置脚本2-19所示的语句。
配置脚体2-19 修改log目录权限

#chown -R cacti rra/ log/

编辑/etc/crontab文件,把配置脚本2-20中的语句加进去,这条语句在后面还会介绍到,目的是让/var/www/html/cacti/poller.php程序每5分钟执行一次,获取想要监控设备的监控数据。
配置脚体2-20 配置crontab文件

*/5 * * * * cactiuser php /var/www/html/cacti/poller.php > /dev/null 2>&1

上述配置文件中的目录应该是指定的存放Cacti程序的目录,本书的实验环境使用了/var/www/html/cacti/目录,读者需要按照实际情况指定自己的目录。
如果需要在Windows平台使用Cacti,则配置定时任务计划。点击“开始”→“控制面板”→“任务计划”→“添加任务计划”,浏览PHP执行程序所在的目录。例如,“E:phpphp.exe”设置为每天执行,然后在“高级”中选择每5分钟执行一次,持续时间根据需要设定。返回属性首页,将“运行(R)”改成配置脚本2-21中的内容。
配置脚体2-21 配置“运行(R)”中内容

e:\php\php.exe c:\AppServ\www\cacti\poller.php

下面打开一个Web浏览器,在地址栏中输入http:/你的主机IP或机器名/cacti/,打开如图2-22的界面,点击Next按钮。

image

弹出如图2-23所示的界面,选择“New Install”,点击Next按钮。

image

跳转到如图2-24所示的界面。

image

Cacti系统安装需要的文件都已经找到,如果没有找到,则该界面会报错,不用紧张,因为在安装过程结束后,在系统配置的节点依然可以定义这些文件的存储路径。本书的后面会详细介绍。点击Finish按钮,结束安装。
Cacti首次进入的登录界面,如图2-25所示。Cacti首次安装的默认用户名和密码都是“admin”。
输入之后,点击Login按钮,由于是第一次进入系统,所以Cacti系统强制让用户修改admin用户的密码,输入设置的密码,点击Save按钮,如图2-26所示。

image

保存后,进入Cacti的主界面,如图2-27所示。

image

Cacti主体程序安装成功。
2.3.2 安装和配置Cacti扩展插件
与Cacti主体程序安装的过程一样,在Cacti系统中安装扩展插件也非常简单,这也是Cacti系统非常引人注目的一个特性,下面以安装Cacti监控网络的“IP自动发现”扩展程序为例进行讲解。
1)将下载的程序复制到/var/www/html/cacti/plugins文件夹。回到Web的管理页面,点击左侧树状菜单的“Configuration”→“Plugin” →“Management”节点,如图2-28所示。

image

2)主界面显示刚才复制的插件程序,如图2-29所示。

image

3)点击“Action”下面的小箭头就会变成如图2-30所示的样子。
4)点击右边的绿色箭头(见图2-31),该插件启用成功。

image

插件启用成功之后,左上方的分页签显示栏多出了一项“discover”标签(见图2-32),说明模块已经被Cacti识别,并且可以工作了。

image

2.3.3 安装和配置Cacti扩展模板
在Cacti系统中导入模板的方法也比较简单,依次选择左侧树状菜单中的“Import/Export” →“Import Templates” ,如图2-33所示。

image

Cacti的主界面如图2-34所示,点击“浏览”按钮,选择需要导入的模板,注意,这里打开的文件资源管理器是Web浏览器本地的,不要搞错了!
image

选择名为“cacti_host_template_vmware_esx_server.xml”的主机模板,点击“Import”按钮,可以看到Cacti系统已经将模板成功导入了,如图2-35所示。

image

点击左侧树状菜单,选择“Templates” →“Host Templates”节点,如图2-36所示。
可以看到主界面显示出刚刚添加的主机模板为VMware ESX server,如图2-37所示。

image

至此,模板添加成功。
以上是对Caci系统的安装和配置的介绍。结合本章的内容,不难发现,如果是第一次接触Cacti系统,需要注意的事项非常多,也许这也是开源项目的一把“双刃剑”,虽然灵活、松散耦合的软件架构最大限度地保留了用户的自由度,但也增加了安装配置过程中的不确定性和复杂度。我们第一次安装配置的过程,可以用极其惨烈来形容,版本不匹配、依赖性错误、驱动问题、操作系统不熟练、权限分配混乱……导致我们在第一次接触Cacti时,感觉它真的就像是一株带刺的仙人掌,近身不得。随着我们对它的日益了解,发现它仿佛是一匹刚烈的马,只要驯服它,就会给你无限的惊喜。所以,为了减少安装配置的难度,在下一章节介绍大家可能会遇到的问题和错误。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
存储 PHP 关系型数据库
|
Web App开发 存储 关系型数据库
|
Web App开发 监控 关系型数据库
|
Ubuntu 关系型数据库 PHP
|
关系型数据库 MySQL Linux
|
Apache 数据库 PHP