搭建cacti

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:
最近搭建一个cacti 的平台按照这个教程的 基本可以

这是根据自己的安装经验写的东西,有不明白处.请大家留言.大家一起讨论解决.
在windows2003环境下安装cacti/spine

一、 环境篇
安装windows2003系统。在我的电脑右击,选择管理。在计算机管理中选择本地用户和组下的用户,如图1所示: 
创建一个叫:cactiuser的用户名,并赋予他administrator(管理员)的权限。(创建该用户名的目的是为了可以使用spine)

二、 安装篇:
安装所需软件列表:
AppServ:[url]http://www.onlinedown.net/soft/35753.htm[/url]
CACTI:[url]http://www.cacti.net/downloads[/url]
RRDTOOL For Windows:[url]http://www.cacti.net/downloads/rrdtool/win32/[/url]
Net-Snmp For Windows:
[url]http://sourceforge.net/project/showfiles.php?group_id=12694&package_id=162885&release_id=466298[/url]
spine:[url]http://www.cacti.net/downloads/spine/packages/[/url] 
CACTI是一套PHP程序,它利用SNMPGET采集数据,使用RRDTOOL绘图引擎绘图,RRDTOOL是MRTG的替代者,它们的作者是一个人。由于RRDTOOL功能过于强大,所以使用起来命令过于复杂,而CACTI就在这时出现了,它是图形界面,使用简单,使不用直接和RRDTOOL接触。但是它是以SNMP和RRDTOOL为基础的,所以最好深入学习一下NET-SNMP和RRDTOOL的使用。
好了,废话不多说了,我们来看看在Windows下如何安装CACTI吧。正如我前面说的那样,CACTI是一套PHP系统,所以如果说是安装调试的话最主要的还的PHP环境的建立。其它的RRDTOOL和Net-Snmp简单应用的话只要安装上就可以,不用做太多的设置。
PHP是一套强大的脚本语言,最初只能应用于Linux下面,随着它的发展,已经能够在Windows下使用了。由于它最初是应用于Linux下的,所以它安装起来不像Windows的其它软件那样简单,需要进行一些必要的配置,这对使惯Windows的人来说可能一时不能适应。它本身是一套脚本解释引擎,本身并不具有Web服务器的功能,它是以插件的形式和Apache、IIS等Web服务一起工作的。
  Mysql是一套开源的强大的数据库系统,最初也是在Linux上应用,现在也可以在Windows下使用,最新版本有安装、设置向导,使用起来还是很方便的。
  1、、Appserv的安装,及PHP的设置
    通过在网上的搜索,我发现Appserv这个软件,AppServ 是 Windows下PHP 网页架站工具组合包,泰国的作者将一些网络上免费的架站资源重新包装成单一的安装程序,以方便初学者快速完成架站,AppServ 所包含的软件有:Apache、Apache Monitor、PHP、MySQL、PHP-Nuke、phpMyAdmin,目前最新版本是2.5.8。这个软件安装起来非常方便,一路下一步就可以非常方便的安装完成,而且安装完成后一个Apache+PHP+Mysql的环境就算搭建好了。而且这个工具还安装了PhpMyAdmin这个Mysql的管理工具,对于菜鸟来说实在是太方便了。在这里主要需要注意的是如果本机默认的80端口已经在使用了,记着把默认的80端口改成没有使用的,如:8080,还有就是Mysql的登录密码。
  由于这个环境是PHP网站的环境,所以我们还要对PHP进行一些必要的设置,让它符合我们的需求,其实主要就是加几个环境变量。我们打开“开始”-“控制面板”-“系统”-“高级”-“环境变量”。在“系统变量”选项卡里点添加,在弹出的窗口中变量名输入MIBDIRS,变量值输入C:\AppServ\php5\extras\mibs,确定就可以了;再找到“path”变量,点编辑,在变量值最后加入PHP的搜索路径,就是你的PHP安装路径和扩展插件路径,这里是C:\AppServ\php5和C:\AppServ\php5\ext,所以我加入了“; C:\AppServ\php5; C:\AppServ\php5\ext”。注意不要加双引号,只添加双引号里面的内容就可以了。
  我们还要开启PHP对SNMP、GD、Socket的支持,打开c:\windows\php.ini文件,确保extension=php_gd2.dll、extension=php_mysql.dll、 extension=php_snmp.dll、
  extension=php_sockets.dll三个选项前面没有分号。
  这时我们要重新启动Windows使刚才所做的设置生效。
2、安装CACTI
  系统重新启动以后,我们首先要做的就是在Windows安装Net-Snmp,这个工具安装起来也是很方便的,一路下一步就好了,不用做什么设置,最好是按照Cacti默认的路径安装,这样设置起CACTI来会省不少事,Cacti默认查找Net-Snmp的路径是C:\net-snmp,所以我们最好将它安装在这个目录下。

而RRDTOOL也已经有Windows下的版本的了,我们只要把它解压就可以了,由于CACTI默认的搜索路径是c:\rrdtool,所以我们把它解压到这个目录就可以了。
  最后我们只要把CACTI复制到Web服务器的根目录就可以了,我这里是C:\AppServ\www,所以我把从网上下载到的CACTI解压到了这个目录下的CACTI目录,然后打开IE输入:[url]http://localhost[/url],点phpMyAdmin Database Manager Version 2.9.2链接,输入Mysql的用户名和密码(用户名是root,密码是安装Appserv时设置的。),进入PhpMyAdmin后,新建一个数据库“cacti”,新建一个用户“cactiuser”,密码“cactiuser”,给这个用户完全控制“cacti”数据库权限。然后选择导入数据,把C:\AppServ\www\cacti\cacti.sql文件导入到cacti数据库。到此我们就可以打开IE在浏览器中输入:
[url]http://localhost/cacti/[/url]  默认用户名:admin 密码:admin.更改密码后。进入设置路径界面。把相对应的路径设置好。如图2所示:

在windows系统里,配置“计划任务”,将poller.php设置为每5分钟执行一次。
开始-设置-控制面板-任务计划-添加任务计划-浏览c:\php\php.exe 设置成每天执行,高级里面选每5分钟执行一次,持续24小时;再返回到属性的首页,运行®改成C:\php\php.exe C:/apache2/htdocs/cacti/poller.php
起始于改成C: /Apache2/htdocs/cacti。

关于时间轴的问题,因为cacti是美国人开发的。时间是美国时间,为了使spine能实时使用。必须把该软件的时间修改下。在cacti/inclde/gloabl.php文件中添加以下函数:
date_default_timezone_set('Asia/shanghai');
到此,我们的CACTI已经完全建立好了。你就可以把你的网络设备添加到你的cacti里去了。
三、 使用篇:
1.界面介绍
登陆Cacti后,可以看到左上角是两个选项卡,“console”和“graphs”。console表示控制台,在此进行所有的配置等操作;而graphs则是用来查看所有服务器的性能图像的界面。

2.console菜单
Create:
New Graphs——创建新图像的快捷方式;
Management:
Graph Management——图像管理。可以在此删除、复制图像,Cacti会自动创建图像。不过如果我们有特殊的需要,比如将几张图上的数据合并在一张图像上的话也可以在此手工新建图像;
Graph Trees——图像树。在graphs界面里,图像或devices是树状结构显示的,可以在此设置树的结构;

Data Sources——管理rrd文件。一般无需修改,Cacti会自己创建rrd文件;

Devices——设备管理。这是我们最经常需要修改的地方,可以在此创建新的设备或修改其名称等信息。
Collection Methods
Data Queries 和Data Input Methods是采集数据的方式,一般我们无需对这两项进行修改;
Templates
Graph Templates 、Host Templates和Data Templates 分别是图像模板、主机类型模板和数据模板。这些模板可以导出、导入也可以自己编写,一般无需修改。
Import/Export
Import Templates 和Export Templates,对上述模板的导入、导出。我们可以在Cacti的官方网站上找到这些模板,不过需要注意模板对于的Cacti的版本。
Configuration
Settings ——Cacti的主要配置菜单;
可以在此重新设置对应的程序的路径、版本等信息。也可以设置图像的输出方式(允许ftp)、显示效果、登陆方式(允许使用LDAP)等。
Utilities
System Utilities ——显示Cacti系统的一些cache和log信息,如果log文件太大建议直接到后台查看;
User Management ——用户管理。可以在此添加、删除用户,并对每个用户设置详细的权限;
Logout User ——注销用户。

3.创建监测点
假设被监测的服务器名叫“Test Host”,IP为192.168.100.110,SNMP的community为public。
进入Cacti的console面板->
点击“Devices”进入设备面板->

点击“Add”添加新设备->

填写要监测服务器的各种信息,其中Host Template请选择“Local Linux Machine”或“ucd/net SNMP Host”(选择一个合适的主机模板)->
点击“Create”保存信息,如果SNMP连接没有问题,左上角会出现该服务器的信息,否则会出现“SNMP error”的红色字样->
击上部的“Create Graphs for this Host ”为该设备创建需监测的内容。监测的内容分两种,“Graph Templates”和“Data Query”,区别在于“Data Query”能根据SNMP信息列出监测项目的信息。例如Data Query里的“Interface Statistics”可以看到该主机所有网卡的信息,这样我们可以选择需要监测的网卡。点击右侧的正方形选择框勾选上要监测的项目->

点击“Create”创建选择的监测内容,已经选择创建的内容会自动变成灰色并且不能再点选。Cacti会自动创建该监测点的rrd文件(在rra文件夹中)、“Data Source”和“graph”条目。


创建监测点完毕。
4.查看监测点
点击“Graph Management”可以看到刚才创建的监测点对应的图像,注意由于Cacti默认每5分钟到监测服务器上取一次数据,所以刚创建的监测点会出现图像不能显示的现象,需要等几分钟查看才会正常显示。

为了方便查看,可以将刚才新创建的设备或图像加入到“图像树”上:
点击“Graph Tree”进入“图像树”面板->

点击分支名称或“Add”新的分支->

点击“Add”,添加新的“Tree Items”->

“Tree Item Type”中选择“Host”,“Tree Item Value”的“host”中选择刚才新添加的主机“Test Host”->

点击“Create”。
直接在ViewTree中添加一个host节点进行监控无疑是一个简单的方法,但随监控图的增多,将所有的图像放到一个host节点上,当查看图像时图像的显示速度会变慢,而且监控图的条理也不清除,所以通常可以根据监控图监控的功能和监控服务的类型等进行分类,整理出一棵有条理的图像树。可以按下面步骤添加节点。
首先添加一个root节点,“Tree Item Type”中选择“Header”,“Title”中填写一个合适的描述性信息,如本例填写“Host Monitor”,Host Monitor节点的图像主要是和主机性能相关的一些图像,如CPU、内存、磁盘空间等;

点击刚创建的root节点(Host Monitor)后面的Add链接来添加一个Graph;

在“Tree Item Type”中选择“Graph”,在“graph”中选择加入想要加入的监控图,重复此过程加入所有你想加入的监控图。


你还可以添加Tree Items,如MySQL Monitor,此节点用来监控与MySQL服务相关的信息,重复上面的过程直到一颗有条例的树创建完成。

这样,我们就可以在“graphs”界面中查看“Test Host”的所有监测图像了。

5.为已有host添加新的监控图
在console控制台下点击“New Graphs”,选择要添加监控图的主机。在Graph Templates中选择一个Graph模板,本例选择SNMP - Ceneric OID Template,点击create按钮。

填写以下信息,在“Title”文本框中填写Graph的名字,在“Vertical Lable”文本框中填写描述信息或是所绘图片使用的单位等,显示在所绘图片的左侧,在“name”文本框中填写此数据源的名字,在“LegendColor”中选择画图使用的颜色,在“Legend Text”填写图例的名字,在“OID”文本框中填写要监控的主机的OID信息,点击“create”按钮完成Graph的创建。

完成后监控图如下:


6.合并多个数据源到一张图上
在console控制台下点击“Graph Management”,然后点击Add链接。


在“Select Graph Template”下拉框中选择None,在“Host”下拉框中选择None,然后点击create按钮。

在“Title”文本框中输入Graph的名字。

点击Add链接,添加Graph Items。

添加多个数据源,将所选的多个数据源画到一张监控图上。





完成后将所画的监控图放到Graph Trees中。
本文转自 song8575 51CTO博客,原文链接:http://blog.51cto.com/song8575/110783

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