续(马世龙)Linux下CACTI完全搭建技术文档一
6.完成cacti的安装
1. 首先检查一下rra/下面,有没有数据
2. snmpwalk -v 2c -c public ServerIP if 用来测试被控对象(serverIP)是否开启了SNMP服务
3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有CPU负载的数据返回
4. /usr/local/bin/php /usr/local/apche2/htdocs/cacti/poller.php 用来测试PHP是否可以采集到数据。如果上面的都正确,但这步出错,很有可能是PHP配置的问题,或开启了SuLinux。
5. 如果按第2步snmpwalk能采集到数据,但第3步无法采集,可能是PHP设置的问题,修改PHP.ini,很有可能是PHP权限问题。
2. snmpwalk -v 2c -c public ServerIP if 用来测试被控对象(serverIP)是否开启了SNMP服务
3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有CPU负载的数据返回
4. /usr/local/bin/php /usr/local/apche2/htdocs/cacti/poller.php 用来测试PHP是否可以采集到数据。如果上面的都正确,但这步出错,很有可能是PHP配置的问题,或开启了SuLinux。
5. 如果按第2步snmpwalk能采集到数据,但第3步无法采集,可能是PHP设置的问题,修改PHP.ini,很有可能是PHP权限问题。
打开浏览器
http://本机IP地址/cacti
进入 cacti 的初始设置页面
第一次默认登陆账号:admin 密码 admin
登陆后它就会让你立即修改新密码
第一次默认登陆账号:admin 密码 admin
登陆后它就会让你立即修改新密码
说一下 cacti 设置页中各项“零件”的路径。
当修改好新密码进入,第一个显示出的页面就是让你设置 rrdtool,snmp 等工具的路径。这是个很重要的环节,必须无误,要不然 cacti 将无法生成出统计图。
snmpwalk Binary Path : /usr/bin/snmpwalk
snmpget Binary Path: /usr/bin/snmpget
RRDTool Binary Path: /usr/local/rrdtool/bin/rrdtool
PHP Binary Path: /usr/local/php/bin/php
Cacti Log File Path: /data/web_server/admin/cacti/log/cacti.log
Cactid Poller File Path: /data/web_server/admin/cacti/poller.php
|
默认的配置中会出现许多“ NotFound ”
按照上边的路径把“ NotFound ”的项都重新填上。
手动运行一次
/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&1
你就能在顶上 graphs 中 localhost 里头看到本机的内存,CPU,登陆用户等的统计图 .
但默认 Cacti 是没有创建网卡流量的监控图的。要我们自己来加。
回到 console 菜单
选择 Devices 监控设备。
然后点击右上角的 Add 进行添加
Description 设备名称 ( 可随意输入 )
Hostname 设备地址 ( 如果是本机就填 127.0.0.1 )
Host Template 设备的类型 ( 选择 ucd/net SNMP Host )
然后其他按照默认即可,如下图
点 create 创建。
如果刚才填写的地址无误,创建成功后,会在该页面左上方出现所新建设备的 SNMP Information
然后点击隔壁醒目的 * Create Graphs for this Host 即开始创建监控图表
如图 6,沟选你所要监控的网卡以及 IP,点 create 。
这样就完成了你所指定设备统计图的创建。
有一个小技巧,初次要求 cacti 创建指定设备的统计图表,通过
Graph Management 进入图 8 所示页面时,统计表图片会是一个 X ( 叉 ) 。这是因为在配置初期指定系统中每 5 分钟执所行的 php 语句还没到点运作。要么你就等 5 分钟,要么你就直接进入系统手动执行:
/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&
|
然后曲线表中就能出现第一个峰值,每 5 分钟自动更新。 24 小时后,曲线图就能完整地出现在你眼前。
Choose an action 框中选择 Place on a Tree(default Tree)
就能把该图表类似快捷方式的样子张贴到本文图 1 所示的 Graphs,Default tree 栏目中。然而你也能自己在菜单栏的
Graph Trees中新建定制栏目,然后用相同的方法把新建的统计图往你所定制的栏目中放。
Cacti 的强大功能不单止可以通过 snmp 获取装有 Linux,Unix 操作系统服务器的运行状态,还能监控 Windows 系统服务器。跟诸如 Cisco,Linksys, 路由器,交换机,无线 AP 。或者其他支持 snmp 管理协议的网络设备。
|
下边我们举出实应用的例子。
设备结构:
设备结构:
网络入口路由器 Linksys RV042。
Linksys 的一款路由器,主要负责,外网接入路由,防火墙,以及端口映射。
Linksys 的一款路由器,主要负责,外网接入路由,防火墙,以及端口映射。
server1 WEB 应用服务器
操作系统: Linux RedHat As4
Eth0,Eth1 双网卡工作。前者接入路由器映射至外网。后者直连至 server2
进行反向代理 ( proxy ) 以及数据备份以及同步等功能。
IP 分别为 192.168.3.2 以及 192.168.10.2
操作系统: Linux RedHat As4
Eth0,Eth1 双网卡工作。前者接入路由器映射至外网。后者直连至 server2
进行反向代理 ( proxy ) 以及数据备份以及同步等功能。
IP 分别为 192.168.3.2 以及 192.168.10.2
server2储存,FTP与WEB 应用服务器
操作系统: Windows2003 r2
与 server1 网络环境相仿,双网卡工作。
IP 分别为 192.168.3.3 以及 192.168.10.3
操作系统: Windows2003 r2
与 server1 网络环境相仿,双网卡工作。
IP 分别为 192.168.3.3 以及 192.168.10.3
Cacti 已经配置完成,安装在 server1 上。第一台添加到监控表里边的是路由器 RV042 。打开路由器的 WEB 设置页面,勾选并启用 SNMP 功能。如图 9
Send SNMP Trap to: 192.168.3.2( server1 的 IP )
然后其他输入框按照默认留空即可,但需留意 Get Community Name: 所填写的组名: public 。保存设置。
登陆 Cacti ,console 菜单栏中点击
Devices。跟前边图 1 至 8 添加新设备以及创建统计图表的步骤相同
Description 设备名称 ( 我们这里自定为 Linksys RV042)
Hostname 设备地址 ( 路由器的地址 192.168.3.1 )
Host Template 设备的类型 ( 选择 ucd/net SNMP Host 或者是 Cisco Router )
然后其他按照默认即可。
创建成功后,也会在该页面左上方出现所新建设备的 Linksys RV042 SNMP Information
点击隔壁 *Create Graphs for this Host 创建监控图表
路由器 RV042 的端口以及 IP 等数据都取出来了。
勾选好所要监控的端口,点击 create 就能完成路由器监控图表的建立。
Cacti 运行在 Server1 上,所以配置方式跟前边所介绍是一样的,这里就掠过了。但顺带说一下,如果环境中还存在 Server3,而且跟 Server1 一样都是 Linux 系统,需要添加到 cacti 里头。哪么只需在该服务器上修改 snmp 配置,修改的内容也跟 server1 上几乎一样,不同的是。
编辑 /etc/snmp/snmpd.conf 的时候,原来填 127.0.0.1 ( 本机地址 ) 的地方换成 Cacti 所在运行的服务器 IP,即 server1: 192.168.3.2
com2secnotConfigUser default public
改为:com2secnotConfigUser 192.168.3.2(server1 地址) public
改为:com2secnotConfigUser 192.168.3.2(server1 地址) public
access notConfigGroup "" any noauth exact systemview none none
改为:accessnotConfigGroup""anynoauthexact all none none
#view all included .1 80
将前面的 # 注释 去掉。
将前面的 # 注释 去掉。
保存退出 :wq
重新启动 snmp 服务
# service snmpd restart
在 Cacti ,
Devices中创建新设备,
填写 Server3 IP 地址,设备类型: ucd/net SNMP Host , 创建图表 , 完成。
到 Server2 的 win2003 系统了。
给 Windows 安装 SNMP 协议支持
通常由于 SNMP 是一个建议关闭的协议 ( 因为有安全漏洞 ),所以 Windows 2003 不是缺省安装的。但 Cacti 用的就是 SNMP 协议,而且服务器处于内网中,有路由器防火墙对外隔着,所以装吧。
控制面板– > 添加或删除程序– > 添加 / 删除 Windows 组件– > 管理和监视工具– > 简单网络管理协议 (SNMP)
修改 SNMP 的安全设置
这台服务是被监控方,所以需要像刚才举例的 Server3 那样修改 SNMP 的配置。否则在 server 1 里头的 Cacti 则永远也收不到 SNMP 的消息。打开 Services 窗口并找到 SNMP 服务,打开右键菜单,选择属性。在打开的窗口中找到“安全”选项页。在选项页中有两部分设置,上半部分是指 SNMP 服务接受哪种 Community 指示字,缺省情况下 Windows 2003 不对任何指示字反馈,我一般都添加设置为。
团体名称:public, 权限:只读
下半部分添加可信任的主机名、IP 或是 IPX 名称。这里就也是添加 server1 的 IP 192.168.3.2 如图 11
修改防火墙
如果你安装了防火墙,还要记得打开 UDP 161 端口。
完成后重新启动 SNMP server 服务
登陆 Cacti 点
Devices创建新设备。
填写 Server2 IP 地址,设备类型:Windows 2000/XP hosts
从 Windows 上获取到的 SNMP 信息也挺多,CPU,内存,虚拟内存,硬盘空间使用,网卡流量,一应俱全。最后创建图表 , 完成。
七、
rrdtool-1.2
的安装
如果 ./configure 时出现下面这个错误
configure: error: Please fix the library issues listed above and try again.
|
表明系统有功能缺失,需安装 libart_lgpl-devel.rpm 这个包
如果还是提示听样的错误,有可能是找不到 FreeType
把 /usr/local/freetype2/lib/pkgconfig 下的 .pc 文件拷贝到 /usr/lib/pkgconfig 下即可
如果 make install 时出现 [tclrrd.o] 错误
就安装 tcl-8.4.7-2.i386.rpm 以及 tcl-devel-8.4.7-2.i386.rpm 这 2 个包
1.2版的rrdtool画出的图,比1.0的要漂亮些.1.0用的是GD画图,1.2用的是libart和freetype画图.1.2的画图会慢一点.
1.2版的安装,可以见http://bbs.chinaunix.net/forum/viewtopic.php?t=552224
上面的安装比较麻烦,需要装不少库,其实,可以,可以直接RPM安装,RedHat的系统,直接从安装光盘上找到这几个库,安装就可.主要的包有:
libart_lgpl
libart_lgpl-devel
libpng
libpng-devel
zlib
zlib-devel
freetype
freetype-devel
找到上面这些包,直接rpm –ivh *.rpm
cgilib好象没有,而且,从rrdtool官方网站下载的cgilib无法安装.我们也不需要rrdcgi,所以,可以不考虑了.
安装完后,解压1.2版的rrdtool
./configure –prefix=/usr/local/rrdtool –disable-rrdcgi
make
make install
cp /usr/local/rrdtool/bin/* /usr/local/bin/