Cacti流量监控系统搭建维护手册中国联合网络通信有限公司广西壮族自治区分公司2008年12月安装篇 (3)Cacti介绍 (3)关于CactiEZ (3)从CactiEZ安装Cacti流量监控系统 (3)CactiEZ服务器的配置 (5)网络配置 (5)安装SSH服务 (6)时区设置 (8)设置NTP服务 (8)Cacti流量监控系统的汉化 (11)PHP页面的汉化 (11)rrdtool的汉化 (12)CactiEZ服务器的优化 (14)关闭yum夜间自动更新功能 (14)hosts.deny & hosts.allow (15)关闭掉不使用的服务及定期作业 (16)基础应用篇 (17)添加需要监控的设备 (17)创建需要监控的图表 (18)图形树的创建 (19)放置想要的图表 (21)Cacti流量监控系统的用户管理 (22)Cacti流量监控系统的相关设定 (23)Settings (23)Misc: (24)高级应用篇 (25)Threshold (25)Monitor (26)Weathermap (26)Advanced Ping (34)打造自己的模板 (36)添加链路占用率 (36)添加端口信息 (40)CactiEZ默认登陆账号信息 (42)登陆操作系统 (42)首次登陆Cacti (42)登陆webmin管理界面 (43)配置NTOP (43)配置nagios (43)安装篇Cacti介绍Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。
它通过snmpget来获取数据,使用RRDtool绘画图形。
它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看的树状结构、host以及任何一张图,同时也能自己增加模板,功能非常强大完善,界面友好。
其官方网站:/关于CactiEZCactiEZ是一个专门用作运行cacti的linux发行版,该版本由Jimmy Conner 制作发行,基于CentOS。
安装后只会在系统中安装cacti和webmin所必须的软件,整个系统非常小(安装光盘只有310M),并且已经安装好了一些cacti的插件,如BackUp,Discovery,Flowview,Haloe,MacTrack,Monitor,NTop,RRDClean,Reports,Thold,Tools,Update等,其中有些需要用户自己启用才可使用。
整个操作系统一旦安装完成,配置好IP后即可使用Cacti,为大家节省了安装配置时间,只不过需要占用一台服务器。
该发行版的主页地址为:/。
从CactiEZ安装Cacti流量监控系统从/ 下载最新的CactiEZ稳定版ISO镜像文件(截至本文撰稿时是0.4版),刻录成启动光盘。
然后设置服务器从光盘启动,放入刻录好的光盘,重启服务器即可。
服务器会自动进入安装界面,然后回车,会自动完成Cacti的安装。
整个安装过程大概耗时20分钟左右。
安装结束后,取出光盘,重启服务器。
重起后进入登陆界面,默认系统root 用户的密码为:CactiEZ 。
CactiEZ服务器的配置网络配置默认情况下,CactiEZ是以DHCP自动获取IP地址的。
如果您的机器需要配置静态IP 的话,使用以下命令:netconfig回车,进入接口配置界面:选择YES,回车:根据提示,设置相应的IP和DNS,配置完成后,选择OK,回车。
接口配置修改后,必须重启相应的服务,修改的配置才会生效。
输入以下命令:service network restart然后用ifconfig查看端口当前的配置,看是否修改成功。
安装SSH服务使用命令yum install openssh-server安装SSH服务。
根据提示,输入y,自动下载安装。
安装完毕后,我们就可以从远程登陆上去调测服务器了。
(*^__^*) 嘻嘻……首次登陆,使用root账户,密码是CactiEZ。
然后我们要做的两件事:一,增加非root账户;二,修改SSH配置文件,禁止root账户直接登陆,这样做是为了保证CactiEZ服务器的安全。
使用“useradd 账户名”,增加相应的账户。
使用“passwd 账户名”,为相应的账户设置密码。
接下来,修改SSH配置文件。
找到SSH配置文件所在,使用命令rpm –ql openssh-server编辑sshd_config文件,使用命令vi /etc/ssh/sshd_config进入SSH配置文件的编辑模式。
在文件中找到PermitRootLogin这一行,将yes改为no,然后保存退出。
同理,要使配置生效,必须重启相应的服务。
这样一来,就只能以普通用户的身份登陆,需要时再切换至root用户。
即使如此,设置密码时还是不要过于简单。
时区设置首先,修改默认时区。
Vi /etc/sysconfig/clock将ZONE修改为“Asia/Shanghai”:复制相应的时区文件,替换系统默认时区对于中国服务器则执行:# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime设置NTP服务CactiEZ自带有NTP服务,但是默认情况下,并不向外部时钟源同步时间,而且配置文件过于简单,不利于控制。
建议卸载重装。
命令:yum remove ntp卸载完成后,重新使用yum install ntp命令安装NTP服务。
用rpm –ql ntp 查看安装的文件,并从中找出配置文件所在,进行必要的修改。
这里只对常用的选项进行介绍,其余的可以在网上查找相关资料。
告诉服务器默认情况下,不提供NTP查询服务,不允许外部进行修改,不发送trap报文。
这一项无需修改,按照默认的就好了。
配置你想提供时间同步服务的客户机所在的网络,nomodify不允许客户端修改服务器的配置,notrap不处理客户端发送的trap报文。
配置你的时间服务器的上层时钟源,一般可以从/上进行选取。
截图中给出了区公司网管中心NTP服务器的外部时钟源作为参考。
其余的选项都可以保持默认值。
然后重启ntpd服务,使得配置文件生效。
查看对应的进程和端口是否启用,确保服务是正常的。
ps aux | grep ntpntp使用udp协议,记得开放其123端口。
由于CactiEZ默认安装有linux防火墙iptables,需要设置iptables,开放相关协议的端口。
考虑到iptables的配置较为麻烦,如果不熟悉的话,可以先将相关规则清除掉,再通过其他机制增强CactiEZ服务器的安全性。
删除iptables规则,可用命令iptables –F。
再用iptables –-list进行检查,确认。
查看端口情况,可以用命令:netstat -unl查看NTP服务器的同步状态,使用ntpq -p 。
打*号的是当前提供时钟源服务的上层时间服务器。
了解服务器当前状态ntpstat了解本地服务器和上层时间服务器之间的关系从上图看出,我们的上层时间服务器位于第2层,但是在查询顶层服务器的时候出现了超时,有可能是该服务器做了限制查询的。
Cacti流量监控系统的汉化这里所说的汉化并非完全意思上的中文化,我们所做的只是让Cacti尽可能多地支持中文的显示,方便我们查看相关的图标,但是整个Cacti的配置界面还是英文的。
PHP页面的汉化CactiEZ到了0.4版,应该说已经做的比较好了。
默认情况下,直接输入中文,在大部分web页面都可以正常显示。
但是,在测试中发现还是有一个位置不能正常显示中文,就是Data Source。
(你目前看到的这个截图是已经汉化过的,所以可以正常显示中文。
)要汉化Data Source的页面,需要修改data_suorces.php.具体命令如下:Find / -name data_suorces.php //找到data_suorces.php所在路径编辑data_suorces.php,删除了"htmlentities"函数即可。
修改前:form_selectable_cell("<a class='linkEditMain' href='data_sources.php?action=ds_edit&id=" . $data_source["local_data_id"] . "'>" . (($_REQUEST["filter"] != "") ? eregi_replace("(" . preg_quote($_REQUEST["filter"]) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", title_trim(htmlentities($data_source["name_cache"]),read_config_option("max_title_data_source"))) :title_trim(htmlentities($data_source["name_cache"]),read_config_option("max_title_data_source"))) . "</a>", $data_source["local_data_id"]);修改后form_selectable_cell("<a class='linkEditMain' href='data_sources.php?action=ds_edit&id=" . $data_source["local_data_id"] . "'>" . (($_REQUEST["filter"] != "") ? eregi_replace("(" .preg_quote($_REQUEST["filter"]) . " )", "<span style='background-color:#F8D93D;'>\\1</span>", title_trim($data_source["name_cache"],read_config_option("max_title_data_source"))) : title_trim($data_source["name_cache"],read_config_option("max_title_data_source"))) . "</a>", $data_source["local_data_id"]);至此,php页面的汉化基本完成。