




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CentOS 6.3 运维Cacti监控Cacti Version 0.8.8a2013.03.30Cacti目录一、Cacti概述31常见Cacti监控应用42Cacti优点4二、准备安装软件包41Cacti所需的安装包4三、Cacti安装配置51安装apache+php+gd的LAMP环境52安装Rrdtool52编辑snmp配置文件54安装Cacti55在数据库中建库、授权、导入数据库结构66浏览器登录访问77添加任务计划8四、Cacti监控主机与设备91Cacti监控Linux客户端92Cacti监控Windows server 2003服务器113Cacti监控Windows 7客户
2、端164Cacti监控交换机185Cacti监控路由器18五、Cacti常用插件安装191Monitor(以图形方式显示设备状态)192Setting(用于邮件报警)213Thold(用于设备异常预警、阀值报警)234Spine(轮询插件)235Mactrack (插件的安装使用)276Syslog(中央日志收集器)29六、Cacti模板351Tcp并发连接数352. 监控LINUX磁盘IO363. 监控Windows磁盘IO37七、常见故障排除38一、Cacti概述Cacti是一款优秀的开源监控软件,使用php实现,它的主要特点是使用snmp服务获取数据,然后用rrdtool存储和更新数据,
3、当用户查看数据的时候,rrdtool生成图表呈现给用户。mysql数据库用于存储变量并进行调用。mysql数据库并不存储snmp捕获到的数据,snmp捕获到的数据,存在于rrdtool生成的rrd文件中,这些文件位于cacti目录下的rra目录中。CACTI采用PHP编写,基于B/S结构。本文主要介绍cacti英文版的安装,配置,cacti插件的安装,配置。拓朴图与Cacti架构流程图主机名操作系统IP地址作用CactiCentOS 6.3_x6460监控机Web_linux_61CentOS 6.3_x6461被监控机YF_share_10.1
4、.1.33Windows sever 20033被监控机YF_share_1Windows sever 20031被监控机My_win 7_80Windows 780被监控机Switch_2960Swithc_2960被监控交换机Route_7200Route_7200被监控路由器服务器信息统计表1常见Cacti监控应用1、监控服务器资源:CPU、内存、磁盘IO、进程、连接数等;2、监控服务器类型有:WEB、Mail、FTP、数据库、中间件;3、监控网络接口:流量、转发速度、丢包率;
5、4、监控设备运行状态:风扇、电源、温度;5、监控机房运行环境:电流、电压、温湿度;2Cacti优点1、是开源软件;2、界面相对其他监控软件很漂亮,能画出漂亮准确的数据图;3、能够实现跨平台的监控;4、具有很强的可扩展性,我们可以通过添加不同的模块来实现不同的监控功能;二、准备安装软件包由于cacti使用php来实现,通过WEB来管理,使用snmp来捕获数据,使用rrdtool来生成图表,使用mysql来存储变量,因此需要先安装这些软件,直接使用yum进行安装即可,共需安装以下rpm包:httpdmysql mysql-server mysql-develphp php-pdo php-mysq
6、l perl-DBD-MySQLcairo-devel libxml2-devel pango-develrrdtool* net-snmp*1Cacti所需的安装包cacti-0.8.8a.tar.gz(管理控制台)下载:cacti-spine-0.8.8a.tar.gz(轮询插件)下载:monitor-v1.3-1.tgz(图形方式显示设备状态)下载:settings-v0.71-1.tgz(邮件报警)下载:thold-v0.4.9-3.tgz(设备异常预警、阀值报警)下载:syslog-v1.22-2.tgz(中央日志收集器)下载:mactrack-v2.9-1.tgz(查看交换机的端口
7、信息)下载:三、Cacti安装配置1安装apache+php+gd的LAMP环境在主监控服务器上安装apache+php+gd的LAMP环境,推荐编译安装。(可以用yum安装)rootcacti #yum install httpd mysql mysql-server mysql-devel php php-pdo php-mysql perl-DBD-MySQL net-snmp*2安装Rrdtool在主监控服务器Rrdtool安装需要cairo、libxml2、pango库支持,可通过yum安装rootcacti # yum -y install cairo-devel libxml2-
8、devel pango-devel rootcacti # yum -y install rrdtool*/ cacti用来保存数据及绘图形的工具2编辑snmp配置文件rootserver #vim /etc/snmp/snmpd.conf查找以下字段:#将下边这行中的default com2sec notConfigUser default public#将“default”改为监控主机IP地址:或60com2sec notConfigUser public#将下边这行中的systemviewaccess notConfigGroup &
9、quot;" any noauth exact systemview none none#改为:allaccess notConfigGroup "" any noauth exact all none none#将下边这行的注释“#”去掉view all included .1 80:wq重启snmpd服务rootcacti # service snmpd restart停止 snmpd: 确定正在启动 snmpd: 确定rootcacti # chkconfig snmpd on4安装Cactirootcacti # mkdir -p /var/www/htm
10、l/cactirootcacti # ll /var/www/htmltotal 4drwxr-xr-x 13 root root 4096 Mar 26 06:50 cactirootcacti # tar-zxvf cacti-0.8.8a.tar.gz rootcacti # mv cacti-0.8.8a/* /var/www/html/cactirootcacti # useradd cacti rootcacti # chown R cacti /var/www/html/cacti rootcacti # chmod -R 775 /var/www/html/cactirootc
11、acti # ll /var/www/html/cactitotal 4drwxrwxr-x 13 cacti root 4096 Mar 26 06:50 cacti5在数据库中建库、授权、导入数据库结构#注意导入cacti.sql时该文件的路径rootcacti # cd /var/www/html/cacti/rootcacti cacti# service mysqld restart rootcacti cacti# chkconfig mysqld on rootcacti cacti# mysql /连接到mysql创建数据库,默认root密码为空mysql> create
12、 database cacti;/创建cacti数据库mysql> grant all privileges on cacti.* to cactilocalhost identified by 'cacti' with grant option;/把数据库cacti授权于用户cactimysql> grant all privileges on cacti.* to cacti identified by 'cacti' with grant option;/把数据库cacti授权于用户cactimyslq> use cac
13、ti;/提示“Database changed”即可myslq>source /var/www/html/cacti/cacti.sql;/将cacti数据库结构导入到cacti数据库中mysql> q配置cacti连接数据库rootcacti cacti# vim /var/www/html/cacti/include/config.php修改如下:/* make sure these values refect your actual database/host/user/password */$database_type = "mysql"$databas
14、e_default = "cacti"/默认数据库名$database_hostname = "localhost"/主机名$database_username = "cacti"/登陆数据库用户名$database_password = "cacti"/登陆数据库密码$database_port = "3306":wqrootcacti cacti# service httpd restart /重启httpdrootcacti cacti# chkconfig httpd on /设置开机启
15、动httpd开启/关闭防火墙有3种: rootcacti # vim /etc/sysconfig/iptables/添加httpd:80、snmp:161端口-A INPUT -m state -state NEW -m tcp -p tcp -dport 80 -j ACCEPT-A INPUT -m state -state NEW -m udp -p udp -dport 161 -j ACCEPTrootcacti # service iptables restart/开启防火墙,重启后生效。rootcacti # chkconfig iptables off /关闭防火墙,重启后生
16、效。rootserver #iptables -F /临时生效,不需要重启SELINUX关闭有2种:rootcacti #vim /etc/selinux/config修改如下:SELINUX=enforcing/修改为:SELINUX=disabled重启:rootcacti # reboot/重启后永久生效rootcacti # setenforce 0/临时关闭,即时生效注意:#setenforce 0如果不关闭会出现很多问题,如访问不了,没有权限等浏览器6浏览器登录访问#浏览器打开:http:/服务器IP/cacti; #Cacti 默认的用户名与密码是:admin,输入用户名与密码,
17、点击:login#为了安全的原因,第一次登录成功后,Cacti会强制要求更改新password,输入新密码并确认密码,点击“save”,进入cacti控制台界面;#点击“Next”#选择“New Install”,点击“Next”#确定 rrdtool php snmp 工具的Binary文件路径,确保所有的路径都是显示“FOUND”,没有“NOT FOUND”的,点击“Finish”完成安装。7添加任务计划添加入一个任务计划,使Cacti每5分钟生成一个监控图表。rootcacti # crontab -e或crontab -ucacti -e 加入以下内容,注意:poller.php 的路
18、径#监控任务计划,Cacti每5分钟更新监控*/1 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1#确保 /var/www/html/cacti/rra/目录存在;#如果暂时未看到图表,可以手工执行,生存图表rootcacti #php /var/www/html/cacti/poller.php rootcacti # tail /var/log/httpd/error_log/查看httpd日志rootcacti # tail /var/log/messages/查看系统日志测试SNMProotca
19、cti #snmpwalk -v 2c -c public /被监控端IP地址四、Cacti监控主机与设备1Cacti监控Linux客户端在被监控的Linux客户端上安装net-snmprootweb #yum install net-snmp* -y配置编辑:rootweb #vim /etc/snmp/snmpd.conf查找以下字段:#将下边这行中的default com2sec notConfigUser default public#将“default”改为监控主机IP地址: 60com2sec notConfigUser 60 pub
20、lic#将下边这行中的systemviewaccess notConfigGroup "" any noauth exact systemview none none#改为:allaccess notConfigGroup "" any noauth exact all none none#将下边这行的注释“#”去掉view all included .1 80:wq#重启snmpd服务rootweb #service snmpd restartrootweb #chkconfig snmpd on开启/关闭防火墙有3种:rootweb #vim /et
21、c/sysconfig/iptables/添加snmpd 161端口-A INPUT -m state -state NEW -m udp -p udp -dport 161 -j ACCEPTrootweb #service iptables restart/开启防火墙,重启后生效。 rootcacti # chkconfig iptables off /关闭防火墙,重启后生效。rootweb #iptables -F /临时生效,不需要重启选择consoleGraph Trees-右边“add” : Name: monitor, Create;Devices-Add填入一下内容,这是要监控
22、的客户端,编辑以下几点:Description:Web_Linux_61Hostname:61Host Template: Local Linux MachineDowned Device Detection:Ping and SNMP UptimePing Method:ICMP PingSNMP Version: Version 2可以Add 添加或者“Save”点击右下角“Save”-*Create Graphs for this -右边全部“勾”选,“Create”,“Create”,“Create”,完成!Graph Trees-monito
23、r(监控)或Default Tree(默认)-Add:Parent Item:rootTree Item Type:HostHost:Web_Linux_60(61)“Create”,“Save”,完成!选择graphs就可以看到监控主机。2Cacti监控Windows server 2003服务器1.确定能与Cacti服务器相互通讯C:Documents and SettingsAdministrator>ping 60Pinging 60 with 32 bytes of data:Reply from
24、60: bytes=32 time<1ms TTL=64Reply from 60: bytes=32 time<1ms TTL=64Reply from 60: bytes=32 time<1ms TTL=64Reply from 60: bytes=32 time<1ms TTL=642.安装SNMP服务组件开始-控制面板-添加或删除程序-添加/删除windows组件:3.配置SNMP服务开始-运行输入“services.msc”双击打开,陷阱安全配置完成!4.在cacti服务器上测试snmp是否可以正常沟通:命令:r
25、ootcacti # snmpwalk -v 2c -c public 35.在cacti服务器添加windows被监控节点添加设备保存出现了snmp的信息,这代表我们的设置是正确的。开始创建图形选择要监控的选项,点击创建图形模板点击“Create”选择颜色(默认),点击创建点击“Create”创建成功6.在Cacti上添加图形树在moniror 下添加主机完成!3Cacti监控Windows 7客户端1.安装SNMP服务组件开始-控制面板-程序和功能-打开或关闭windows功能:2.配置SNMP服务开始-运行输入“services.msc”双击打开,陷阱安全配置完成!重启S
26、NMP服务。3.在cacti服务器上测试snmp是否可以正常沟通:命令:rootcacti # snmpwalk -v 2c -c public 604.在cacti服务器添加windows 7被监控节点(与windows server 2003相同,请参考),下面就不在详细说明。查看监控图:4Cacti监控交换机5Cacti监控路由器五、Cacti常用插件安装前面的文章向大家介绍了如何部署cacti,其实整个过程还是很简单的,那部署完了怎么使用呢?不着急咱们先把常用的一些插件安装好再说。顺便说一下,Version 0.8.8a之前的版本还需要先安装架构扩展包才能再安装插件,但
27、是到了Version 0.8.8a这个版本,本身就已经被集成,无需再单独安装架构扩展包。1Monitor(以图形方式显示设备状态)最新版本cacti-0.8.8a 集成了plugin架构扩展,cacti安装完成后就可以安装其他插件rootcacti # tar -zxvf monitor-v1.3-1.tgzrootcacti # mv monitor /var/www/html/cacti/plugins打开Cacti的web页面“Plugin Management”激活monitor插件效果如图所示,可以让我们对监控的设备状态Monitor设置,声音报警图标显示Monitor设置,声音报警
28、与树形显示2Setting(用于邮件报警)rootcacti # tar -zxvf settings-v0.71-1.tgzrootcacti # mv settings /var/www/html/cacti/plugins同上,打开Cacti的web页面“Plugin Management”激活settings插件打开“console”-“Settings”可以找到Mail/DNS可以对告警邮件进行一些设置3Thold(用于设备异常预警、阀值报警)rootcacti # tar -zxvf thold-v0.4.9-3.tgzrootcacti # mv thold /var/www/h
29、tml/cacti/plugins再次打开Cacti的web页面“Plugin Management”激活thold插件配置好后可以看到一些告警日志信息4Spine(轮询插件)在设备比较多的情况下使用spine替代原有的轮询程序。可以加速轮询的时间,及图像生成时间。1.安装spinerootcacti # tar -zxvf cacti-spine-0.8.8a.tar.gzrootcacti # cd cacti-spine-0.8.8arootcacti cacti-spine-0.8.8a# ./configure -prefix=/usr/local/cacti-spine如果出现如下
30、报错: 重新安装libtool(工具):yum -y install libtool*rootcacti cacti-spine-0.8.8a# make;make installrootcacti cacti-spine-0.8.8a# cd /usr/local/cacti-spine/etcrootcacti etc# cp spine.conf.dist spine.confrootcacti etc# vim spine.confDB_Host localhostDB_Database cactiDB_User cactiDB_Pass cactiDB_Port 3306DB_Pre
31、G 0:wq这里修改对应的mysql用户名和密码,以及连接参数打开“console”-“settings”-“Paths”“Alternate Poller Path”中填写spine的路径:/usr/local/cacti-spine/bin/spine,然后“save”rootcacti etc# cd /usr/local/cacti-spine/bin/rootcacti bin# lltotal 264-rwxr-xr-x 1 root root 269411 Mar 27 15:16 spine 2.选择轮询模式打开“console”-“settings”-“Poller”-“sa
32、ve”添加“每分钟”流量视图打开“console”-“Data Templates”“Interface - Traffic”修改任务计划,使Cacti每分钟生成一个监控图表。rootcacti # crontab -e或crontab -ucacti -e 加入以下内容,注意:poller.php 的路径#监控任务计划,Cacti每分钟更新监控* * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1#如果暂时未看到图表,可以手工执行,生存图表rootcacti #php /var/www/html/cact
33、i/poller.phprootcacti # tail /var/log/httpd/error_log/查看日志rootcacti # tail /var/log/messages/查看日志查看cacti日志:System Utilities->View Cacti Log File5Mactrack (插件的安装使用)Mactrack插件安装完成后,可以使得cacti能够查看交换机的端口信息,mac地址与ip地址对应关系,ip网段的统计,以及网卡的制造商等信息。rootcacti # tar -zxvf mactrack-v2.9-1.tgzrootcacti # mv mactr
34、ack /var/www/html/cacti/plugins再次打开Cacti的web页面“Plugin Management”激活thold插件点击“User Management”(用户管理)-admin勾选Mactrack三个插件-Save;保存Mactrack出来了。Mactrack监控路由器与交换机设备,实验没有具体设备,无法实现。6Syslog(中央日志收集器)syslog插件可将网络中所有设备的日志信息收集到一起,并将接收到的信息写入到数据库中,通过插件web界面可以实现简单的日志查询功能。因此,首先要配置一台rsyslog日志中心服务器来接收客户机的日志,并将日志数据存放到m
35、ysql中,其次,配置cacti的syslog插件,通过该插件检索与查询mysql中的日志,syslog可以收集来自linux、windows(需要安装软件将格式统一即可)等服务器和交换机路由器的日志,并做到集中和分类查看。(1)将Cacti服务器配置为syslog服务器1.安装rsyslog,首先需要在监控端安装rsyslog和rsyslog-mysqlrootcacti # rpm -qa |grep rsyslog/CentOS6.3 默认已经安装rsyslogrsyslog-5.8.10-2.el6.x86_64 rootcacti # yum install rsyslog* -y/
36、升级rsyslog、安装rsyslog-mysql2.编辑rsyslog的配置文件(/etc/rsyslog.conf)rootcacti # vim /etc/rsyslog.conf在最后面添加以下内容:#cacti_syslog model# provides UDP syslog reception $ModLoad imudp# start a UDP syslog server at standard port 514 $UDPServerRun 514# Provides kernel logging support (previously done by rklogd) $Mo
37、dLoad imklog# Provides support for local system logging (e.g. via logger command) $ModLoad imuxsock# provides -MARK- message capability $ModLoad immark# provides UDP syslog reception $ModLoad imudp# provides TCP syslog reception and GSS-API (if compiled to support it) $ModLoad imtcp# provides mysql
38、$ModLoad ommysql# Use costomer timestamp format $template cacti_syslog,"INSERT INTO syslog_incoming(facility, priority, date, time, host, message) values (%syslogfacility%, %syslogpriority%, '%timereported:date-mysql%', '%timereported:date-mysql%', '%HOSTNAME%', '%ms
39、g%')", SQL# Insert the log's text into the Syslog database by the costomer timestamp format of the cacti_syslog template *.* :ommysql:cacti,syslog,cacti,cacti;cacti_syslog# Write the log to the /var/log/file.log repeat *.* /var/log/file.log其中syslog为数据库,cacti为数据库用户,cacti为密码,cacti_syslog为
40、模板名称编辑完成后,保存并退出。3.修改/etc/sysconfig/rsyslog文件修改以下代码,使rsyslog能够远程接收日志# Options for rsyslogd# Syslogd options are deprecated since rsyslog v3.# If you want to use them, switch to compatibility mode 2 by "-c 2"# See rsyslogd(8) for more details#SYSLOGD_OPTIONS="-c 5"SYSLOGD_OPTIONS=&
41、quot;-r -m 0"KLOGD_OPTIONS="-x"保存并退出。4.重启rsyslogrootcacti # service rsyslog restart(2)安装syslog插件1.安装syslog插件rootcacti # tar -zxvf syslog-v1.22-2.tgzrootcacti # mv syslog /var/www/html/cacti/plugins2.创建数据库syslog,并导入数据rootcacti # mysqlmysql> create database syslog;mysql> grant all
42、 privileges on syslog.* to cactilocalhost identified by 'cacti' with grant option; mysql> flush privileges;mysql> qrootcacti # mysql -ucacti -pcacti syslog -default-character-set=utf8</var/www/html/cacti/plugins/syslog/syslog.sql3.修改配置文件config.phprootcacti #cd /var/www/html/cacti/pl
43、ugins/syslogrootcacti syslog# vim config.php <?php/* +-+ | Copyright (C) 2007 The Cacti Group | | | | This program is free software; you can redistribute it and/or | | modify it under the terms of the GNU General Public License | | as published by the Free Software Foundation; either version 2 |
44、| of the License, or (at your option) any later version. | | | | This program is distributed in the hope that it will be useful, | | but WITHOUT ANY WARRANTY; without even the implied warranty of | | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | | GNU General Public License for more
45、 details. | +-+ | Cacti: The Complete RRDTool-based Graphing Solution | +-+ | This code is designed, written, and maintained by the Cacti Group. See | | about.php and/or the AUTHORS file for specific developer information. | +-+ | | +-+*/global $config, $database_type, $database_default, $database_h
46、ostname;global $database_username, $database_password, $database_port;/* revert if you dont use the Cacti database */$use_cacti_db = false;if (!$use_cacti_db) $syslogdb_type = 'mysql' $syslogdb_default = 'syslog' $syslogdb_hostname = 'localhost' $syslogdb_username = 'cact
47、i' $syslogdb_password = 'cacti' $syslogdb_port = 3306;else $syslogdb_type = $database_type; $syslogdb_default = $database_default; $syslogdb_hostname = $database_hostname; $syslogdb_username = $database_username; $syslogdb_password = $database_password; $syslogdb_port = $database_port;/*
48、 field in the incomming table */$syslog_incoming_config'dateField' = 'date'$syslog_incoming_config'timeField' = 'time'$syslog_incoming_config'priorityField' = 'priority'$syslog_incoming_config'facilityField' = 'facility'$syslog_incoming
49、_config'hostField' = 'host'$syslog_incoming_config'textField' = 'message'$syslog_incoming_config'id' = 'seq'修改配置文件,特别注意$syslogdb_default = 'syslog',由于我们不使用cacti的数据库(本文中为cacit)而使用我们刚刚建立的syslog数据库,所以将$use_cacti_db = true,改为$use_cacti_db = false;
50、因为syslog往往比较多,日志比较多,为了便于备份和使用,还是选择用一个独立的数据库。因此还要在下面设置连接数据库的用户名,密码,数据库名等被监控端设置如果希望本机cacti服务器能够作为日志服务器的被监控端,只需修改其中的/etc/rsyslog.conf的的设置即可,如下rootcacti # vim /etc/rsyslog.conf 在最后添加以下内容:*.* 60:wqrootcacti # service rsyslog restart打开Cacti的web页面“Plugin Management”安培训rsyslog插件激活Syslog这里有一些设置比如:数据库引擎的选择,以及日志保存的时间等,最后的效果如图.六、Cacti模板1Tcp并发连接数(1)下载netstat_tcp.z
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年网络规划设计师学习评价试题及答案
- Msoffice实战中的案例解析试题及答案
- 2025年网络设计师考试成功案例的试题及答案
- 2025年系统集成考试真相试题及答案
- 上海社工笔试题目及答案
- 交互媒体设计测试及答案
- 专家管理面试题目及答案
- 多媒体设计师考试必考知识点试题及答案
- 2025规范版汽车租赁合同样本
- 初级社工专业培训需求考题及答案
- 漆艺课件教学课件
- GB/T 19077-2024粒度分析激光衍射法
- 第六章 方差分析课件
- 班主任工作经验交流:在班级管理中要尊重、关爱学生班主任班级管理方案
- 《PLC应用技术(西门子S7-1200)第二版》全套教学课件
- 2024年成人高考成考(高起专)语文试题与参考答案
- 《高危新生儿分类分级管理专家共识(2023)》解读
- iso220002024食品安全管理体系标准
- 2025高考物理步步高同步练习选修1第一章 动量章末检测试卷(一)含答案
- 军人优待金委托书
- 2024年广东省广州市中考英语试卷附答案
评论
0/150
提交评论