Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它经过snmpget来获取数据,使用RRDtool绘画图形,并且你彻底能够不须要了解RRDtool复杂的参数。
php
它提供了很是强大的数据和用户管理功能,能够指定每个用户能查看树状结构、host以及任何一张图,还能够与LDAP结合进行用户验证,同时也能本身增长模板,功能很是强大完善,界面友好。数据库
Cacti架构图浏览器
Cacti工做原理缓存
开始安装服务器
在Ubuntu 12.04 LTS Server 上经过 apt-get 方式安装:网络
sudo apt-get update sudo apt-get install snmpd cacti cacti-spine rrdtool
配置MySQL数据库,输入用户密码,再次确认后选择继续:架构
接下来,按“返回”或“Enter”键确认PHP的配置改变:dom
从Web服务器列表中选择“Apache2”:ide
Cacti 配置Apache后,安装了MySQL帐户的应用程序。选择“是”,容许通用的数据库配置:工具
为 Cacti 提供数据库管理密码:
接着,会询问 Cacti 使用的数据库的密码,这是一个内部的密码,输入新密码,选择OK,这里若是按“Enter”会建立一个随机的密码:
安装应该按预期完成。
SNMPD 的配置
配置 SNMPD 与 Cacti 协同工做,它的配置文件位置在/etc/snmp/snmpd.conf, 请确保你的编辑的是snmpd.conf文件而不是snmp.conf文件:
sudo nano /etc/snmp/snmpd.conf
首先编辑代理行为(Agent Behavio),在文件的开头部分,注释掉 agentAddress udp:127.0.0.1:161 行,并取消 #agentAddress udp:161,udp6:[::1]:161 行的注释:
# Listen for connections from the local system only #agentAddress udp:127.0.0.1:161 # Listen for connections on all interfaces (both IPv4 *and* IPv6) agentAddress udp:161,udp6:[::1]:161
而后找到 访问控制 (ACCESS CONTROL) 部分,去掉 #rocommunity secret 10.0.0.0/16 前面的#号,并修改为您的域名或者IP地址:
rocommunity secret CactiServerIpAddress
您能够经过这条命令来查看IP地址:
ifconfig eth0 | grep inet | awk'{ print $2 }'
您可能还须要编辑系统信息将与你的数据在系统信息部分。你能够添加你的服务器的物理位置和联系人的电子邮件。若是您正在监视大量的云服务器,这会帮助您区分那些主机:
sysLocation Your System Location sysContact contact@email.com
修改 Cacti config 文件, password 部分修改为您先前设置的密码:
sudo nano /usr/share/cacti/site/include/config.php $database_password = "password";
当您完成了这些修改,须要从新启动 SNMPD 服务:
sudo service snmpd restart
Web配置
【一次性安装】经过Web浏览器完成其他的配置。打开Web浏览器,访问你的服务器IP地址或域名,后面加上“/cacti”便可进入配置页面:
mydomain.com/cacti
一开始你会看到一些关于 Cacti 的介绍信息,点击下一步(NETX),再一次点击下一步(NETX),会出现以下界面
这里显示了“指南”应用,Cacti 所使用操做的应用程序路径。全部应用程序都应该是绿色的,并标有“[FOUND]”,点击“完成(Finish)”继续
接下来登录管理系统,默认用户名和密码都是 admin,在您第一次输入完成后,会提示修改并确认默认密码,输入完成后点击保存“Save”便可进入管理界面
好,如今你已经进入了 Cacti 的管理界面:
常规配置
有几个选项须要改变,以确保 Cacti 产生的数据正确。在左侧导航面板中,点击“设置(Setting)”下的配置标题。
在“常规(General)”选项卡中,咱们要像下面这样改变一些参数,完成后,点击“保存(Save)”。
SNMP Version: Version 2 SNMP Community: secret
而后选择 Poller 选项卡,修改以下配置,再保存:
Poller Type: spine Poller Interval: Every Minute
每当轮询时间间隔发生变化,则必须清空缓存。要清空缓存,点击左侧“系统工具(System Utilities)”下 Rebuild poller cache 以清除缓存。
创建设备和图
设备设置
要开始绘图,咱们须要创建设备配置文件,并告诉 Cacti 绘制什么。在左侧导航面板的标题下点击“设备(Devices)”
首先,删除 localhost 设备。点击右侧的复选框,确保已经勾选一个项目后,选择“删除(Delete)”,而后单击“Go”。确认下面的页面上删除。在页面的右上角,点击“添加”按钮来添加一个新的设备
如今,你须要填写一些信息,描述你的设备。填写如下字段。完成时,点击“建立(Create)”
Description: Ubuntu Cacti Server Hostname: YourIPAddress Host Template: Local Linux Machine SNMP Version: Version 2 SNMP Community: secret
若是在页面顶部有一个呈现红色的SNMP错误,在服务器上打开一个终端,并从新启动 snmpd 进程,再次点击“保存”,它如今应该显示正常了:
sudo service snmpd restart
图形设置
接下来,向下滚动并建立一些相关的图形模板和相关的数据查询。根据相关的图形模板,从下拉菜单中选择“Unix – Ping Latency”,并单击“添加(Add)”。您的选择应符合以下图所示
在相关的数据查询部分(Associated Data Queries)完成相同的步骤,添加“SNMP – Get Mounted Partitions”, “SNMP – Get Processor Information”,和 “SNMP – Interface Statistics”.。所有添加完成后点击保存。
而后在界面的右上角点击 “为主机建立图像 (Create Graphs for this Host)”,选择右侧窗口中的淡蓝色的副标题上选择全部图形。在页面底部,点击“建立 (Create)”。
在接下来的页面中,你能够改变一些图形选择的颜色,而后单击“建立 (Create)”,在页面的顶部,单击“图形”选项卡。点击最后一个标签页的右上角。
你的VPS将须要一段时间才能产生这些图表中的值,直到有足够的数据图。这可能须要5分钟到10分钟,一开始你可能会看到一个空图,有时,它会呈现一个破碎的图像,这是正常的,你会在几个小时以后得到一些五光十色的曲线图:
点击每一个图像,会显示这个设备天天,每周,每个月,每一年的图形: