Cacti作为一个开源网络管理系统已经有较广泛的应用,但是该系统部署较为复杂,限制了其在国内的推广。CactiEZ 作为一个集成了Cacti和一些常用插件的再发行系统,具有安装便捷和使用简单的特点。本文通过对CactiEZ 系统进行分析,对CactiEZ的一些内部概念进行了阐述,详细介绍了CactiEZ 常用插件的功能和使用方法,并对CactiEZ 的使用进行了总结。
CactiEZ 介绍和基本部署
Cacti 软件基于PHP、MySQL、SNMP 和RRDTool,虽然也有Windows 版本,但由于效率和稳定性原因,一般安装于Linux 操作系统上。如果从头部署C a c t i,需要按顺序经历安装Linux 系统,进行apache、MySQL和iptables 等系统配置,再安装Cacti 和按需安装各种插件等繁琐的过程,期间稍有差错就有可能导致安装的失败。在这里向大家推荐使用CactiEZ(Cacti Easy)来快速部署cacti。
CactiEZ 是一个基于C e n t O S 的免费再发行版本,它其实是一个预装好了Cacti 和一些常用插件,并重新编译而成的CentOS 操作系统。我们可以直接下载CactiEZ 中文版I S O 文件后,按安装CentOS 的步骤安装即可直接使用。在实际安装过程中,我们在VMware Esx 上新建了一个双CPU,4G 内存和300GB 硬盘的虚拟机,并将CactiEZ 的64 位ISO文件连接到虚拟机的光驱直接开始安装,整个安装过程自动完成,整个安装过程仅仅耗时15 分钟左右。
由于是通用再发行版本系统,我们需要根据实际情况修改几个默认参数:
1. 安装后的root密码为默认的CactiEZ ,为安全起见,登陆系统第一件事就应该是利用“passwd”命令将root 密码改为自定义强密码;
2. 修改“/ etc/ sysconfig /network -scripts/ifcfg-eth0”文件,配置实际网络环境下的I P 地址、掩码、网关等等参数,若有多个网卡接入,需同时按实际需求配置其他网卡,并重启网卡使之生效;
3. 在浏览器里输入配置好的I P 地址,打开CactiEZ 的登录页面,默认用户名和密码为:“admin/admin”,登录成功后,按系统提示将admin 用户的密码改为新的自定义强密码。
经过上述三个步骤,CactiEZ 的基本部署已经顺利完成。
CactiEZ 的功能配置和使用
管理员登录到CactiEZ 系统后直接进入控制台界面,其中的“图形”、“阈值”、“监视器”、“Syslog”和“气象图”均为高校网络运维管理的常用插件,接下来会对这些功能进行详细介绍。
CactiEZ 中的常用概念
在CactiEZ 中有些常用的概念比较重要,主要有以下这些:
1. 主机;2. 数据源;3. 数据模板;4. 图形模板;5. 主机模板;6. 阈值模板。
在已安装好的CactiEZ 中,已经集成了很多常用的主机模板和各种数据、图形、阈值模板,基本能满足日常管理需求。而且系统提供了各种模板的导入导出功能,可以方便导入各种第三方模板来扩展系统。实际使用中,管理员按设备实际情况添加主机和对应的主机模板即可。
添加主机是指系统中定义某台主机的具体信息,如主机描述、网络地址、主机模板、单独关联的数据和图形模板、监控方式(SNMP或ICMP 或两者兼有)、SNMP 参数等。一旦定义好主机后,Cacti 系统将以固定周期(默认为5 分钟)对所有主机进行轮询。
在系统中添加主机的同时,由于一般会采用SNMP协议采集数据,这时就需要被监测设备同时也开启了SNMP功能,并配置了与CactiEZ 主机相符的SNMP参数才能保证系统的正常数据采集。
CactiEZ 中的插件和功能
1. 图形插件:
图形插件是Cacti 系统的基本插件,为网络管理员们提供了最常用的绘图功能,该功能基于MRTG(多路由器流量绘图器)以趋势图的形式显示系统采集到的各种设备状态信息,常常用来显示网络设备端口的流量,服务器的CPU、内存和硬盘的使用率,机房环境温度和UPS 状态等信息。
2. 阈值插件:
阈值插件主要用于被监控的设备参数异常时的提示和报警功能,一般用于设备端口状态(up 或down)、带宽使用率、机房环境、设备CPU 或硬盘使用率等参数的监控告警。
我校东营校区数据机房使用的是APC 公司的Smart-UPS VT 40kVA 不间断电源,其支持SNMP Agent 功能,并已在添加在主机列表中使用“APC Smart UPS”的主机模板正常显示和采集数据。为添加其阈值报警功能,我们在“控制台- 阈值模板”界面点击右上角“添加”按键,将出现阈值模板添加向导,首先需要选择该阈值模板对应的数据源模板:“APC ? Input Voltage”,然后进入详细设置页面,该页面内有以下重要参数需要设置:
数据字段:与前一步选择的数据模板相关,某些数据模板内可能有好几个字段,需要选择正确的数据源,这里选择“Input”;
阈值类型:这里选择“上/ 下限设置”;
上限:这里填入“240”,表示电压正常值的上限为240V;
下限:这里填入“180”,表示电压正常值的下限为180V;
容忍时长:5 分钟,数据源的值高于或低于阈值的容忍时间,超过5 分钟将会触发报警。
建立和保存好该阈值模板后,由于已于数据模板绑定,当为这台UPS主机添加图形操作时的“为这个主机添加图形”页面下,会有“自动添加阈值”的链接,点击即可为该主机添加输入电压的阈值监测。该阈值模板也同样适用于网络机房的APC Silcon DP340E 不间断电源监测。
当有阈值报警被触发或恢复正常后,系统阈值页面会有高亮显示来提醒监控室值班人员,并利用SMTP协议对系统设定的目标邮箱发送报警邮件。
3. 监视器(Monitor)插件
监视器插件的使用很简单,在添加主机或者修改主机的界面中有一个“监视主机”的选项,选择该选项后,在“监视器”页面上就会显示该主机的当前状态。
在实际使用中,我们发现监控器插件的功能不仅仅局限于内部网络的监测,甚至可以将其扩展到对外部网络的健康状况监测。我们可以将各个需要监控外部节点网络地址作为主机添加到系统中来进行存活和延时监测,此时建立的主机不用选择数据模板,主机存活检测方法选择为I C M P并按实际需要设置检测超时时间。实际中,我们将校园网每个出口的下一跳I P 地址和常用站点域名作为主机进行了监测,这样就能对外部网络的健康状况进行一个简单的监测和告警。
当有告警情况出现时,除了在显示页面有声光告警提示,与阈值插件相同的是,监视器中主机的告警和恢复信息也将通过邮件发送至管理员指定的目标邮箱。
4.Syslog 插件
利用系统附带的syslog 插件还可以把监控主机同时打造成为一台远程日志服务器。在Unix 类系统和网络设备中,syslog 或rsyslog 服务被广泛运用于系统日志的记录,在没有配置远程日志服务器的情况下系统日志只能记录到设备本地。由于网络设备可能存在于校园的每个角落,因此查看设备的本地日志对于网络管理员来说是非常不方便的,syslog 插件刚好为我们解决了这个问题。
系统端的syslog 服务基本上不用配置,只需在 “控制台- 设置-Syslog”页面启用即可,实际使用中真正需要注意的是被监控主机,也就是syslog 日志发送端的配置:
(1) 在U n i x 类操作系统上,一般需要确定其syslog服务已经安装并正常运行,一般syslog 的配置文件路径为“/etc/syslog.conf”,我们需要通过vi 命令将其打开,并在其最下方新增一行命令:
*.info;mail.none;authpriv.none;cron.none@dycactiez.upc.edu.cn
命令前部分是需要记录的日志类型,“@”符号后是日志服务器网络地址,可以是域名,也可以直接为I P 地址。保存该文件后重启syslog 服务即可生效;
(2) Syslog在网络设备中的具体配置命令区别于网络厂家,但是都大同小异,下面以H3C 交换机配置命令为例:
info-center loghost 202.194.145.42 facility local4
命令表示,指定202.194.145.42 为日志主机,并在日志服务器上归类为local4;rfc3164。
当被监控设备配置完成后,会将日志发送到CactiEZ 主机上,管理员可以通过“Syslog”页面查看所有设备的上传日志,系统同时支持按主机I P 地址、日志时间和日志级别进行记录筛选。
5. 气象图(Weathermap)插件
气象图插件主要用于绘制和显示全网拓扑,并可以用不同颜色来表示链路的使用率,对网络管理员来说非常实用。通过气象图,网络管理员可以轻松检查主干的运行情况,当出现网络故障时,通过气象图也能辅助管理员快速为故障定位。
点击气象图页面最下方有个“编辑器”链接可以进入气象图编辑页面,新建一个配置文件并进入编辑器页面后会发现这个编辑器是一个所见即所得的编辑界面,使用起来比较简单,主要操作是添加节点和添加连接。由于已经和c a c t i 集成,添加的节点和连接后只需要选择其对应的数据源就能定义节点和连接的具体显示内容。具体建立气象图配置文件的方法可以参见Weathermap 官方网站(http://www.network-weathermap.com/)。
不过有一点需要使用者尤其注意,虽然CactiEZ 有用户权限控制,但是气象图插件的编辑器页(plugins/weathermap/editor.php)没有身份验证功能,因此存在着任意用户都能打开该页面并对气象图配置文件进行创建、修改和删除的漏洞。为了避免该漏洞,我们需要在系统apache 中对该页面做IP 访问限制。方法如下:
(1) 编辑apache 配置文件:
vi /etc/httpd/conf/httpd.conf
(2) 在配置文件最后加上如下命令,仅允许172.33.90.0/24 网管网段访问editor.php 页面:
<Directory /var/www/html/plugins/weathermap>
<Files editor.php>
Order Deny,Allow
Deny from all
Allow from 172.33.90.0/255.255.255.0
</Files>
</Directory>
(3) 使用“service httpd restart”命令重启apache,启动成功后,编辑器页面只能通过网管网段IP 地址访问。
通过CactiEZ 的部署,网络管理员可以快速的搭建一个较为完善的网络环境监测和告警平台,在实际操作中,我们还可以将告警邮件设置为发送到支持手机短信提醒的邮箱,这样一来还能实现在大多数网络故障情况下的手机短信告警。
(作者单位为中国石油大学(华东)网络及教育技术中心)