大纲php
1、实验环境说明node
2、Cacti 基本配置详解 mysql
3、Cacti 监控远程主机sql
4、Cacti 优化之spine轮询器vim
注,操做系统 CentOS 6.4 x86_64 软件版本 Cacti-0.8.8b(目前最版 2013-08-05发布) 说明:这篇博客是基于上一篇博客写的。上一篇博客地址为:http://freeloda.blog.51cto.com/2033581/1308140。bash
1、实验环境说明服务器
1.实验拓扑多线程
注,一台监控机Cacti 192.168.18.201,另外一台是远程主机Node1 192.168.18.202或者多台远程主机都是同样的。(咱们这里实验只有两台主机,一台Cacti 另外一台远程主机)ssh
2.各节点时间同步tcp
[root@node1 ~]# ntpdate 202.120.2.101 [root@node2 ~]# ntpdate 202.120.2.101
3.安装yum源
[root@node1 ~]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm [root@node2 ~]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
4.安装net-snmp
[root@node2 ~]# yum install -y net-snmp net-snmp-utils net-snmp-libs
5.修改net-snmp配置文件
[root@node2 ~]# vim /etc/snmp/snmpd.conf 修改前, view systemview included .1.3.6.1.2.1.1 修改后, view systemview included .1.3.6.1.2.1
6.启动服务并设置开机自启动
[root@node2 ~]# service snmpd start 正在启动 snmpd: [肯定] [root@node2 ~]# chkconfig snmpd on [root@node2 ~]# chkconfig snmpd --list snmpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 [root@node2 ~]# netstat -ntulp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1037/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1114/master tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 1560/sshd tcp 0 0 127.0.0.1:6011 0.0.0.0:* LISTEN 11620/sshd tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 11697/snmpd tcp 0 0 :::22 :::* LISTEN 1037/sshd tcp 0 0 ::1:25 :::* LISTEN 1114/master tcp 0 0 ::1:6010 :::* LISTEN 1560/sshd tcp 0 0 ::1:6011 :::* LISTEN 11620/sshd udp 0 0 0.0.0.0:161 0.0.0.0:* 11697/snmpd
7.在node1上简单测试一下
[root@node1 ~]# snmpnetstat -v 2c -c public -Can -Cp tcp 192.168.18.202 Active Internet (tcp) Connections (including servers) Proto Local Address Remote Address (state) tcp *.22 *.* LISTEN tcp 127.0.0.1.25 *.* LISTEN tcp 127.0.0.1.199 *.* LISTEN tcp 127.0.0.1.6010 *.* LISTEN tcp 127.0.0.1.6011 *.* LISTEN tcp 192.168.18.202.22 192.168.18.19.53904 ESTABLISHED tcp 192.168.18.202.22 192.168.18.138.58958 ESTABLISHED
好了,这里咱们的实验环境就所有配置完成。下面咱们继续……
2、Cacti 基本配置详解
注,在上一篇博客中(http://freeloda.blog.51cto.com/2033581/1308140)咱们主要讲解了Cacti的组成、工做原理、怎么监控localhost等,但咱们没有讲解怎么设置Cacti,以下图
你们能够看到,在配置选项中有两个子项目,一个是设置另外一个插件管理。咱们这一篇博文中先讲设置,插件管理在后面的博文中讲解。那下面咱们就来具体的说一下,首先咱们来看一下“General”,这里指的是通用配置,配置的内容有如下几项:
日志相关
SNMP相关
一些其它配置
基本上不须要修改保持默认便可。若真的要修改,咱们只要修改这三基便可,“Required Tools Versions”、“SNMP Default”、“Other Default”,在所需工具的版本中选择正确的SNMP工具版本与RRDTool版本便可,在SNMP协议中咱们选择Version2便可,在其它默认中咱们只须要配置一下“删除确认”便可。配置好之后点击保存便可。
在下面咱们图形中咱们看到是“Paths”页面,这里主要配置的是SNMP的工具路径,帮助咱们来收集相关主机数据用的。这里主要配置的选项有,
所需工具的路径
Cacti日志文件的路径
Spine 优化器的路径(在下面的内空中咱们将详解)
结构化RRD路径(做用:使用子目录分隔每个主机的RRD文件)
全部配置能够保持默认基本不须要配置。
接下来咱们看到的是“Poller”页面, 这里主要是Cacti采集器的配置。这里的主要本配置有,
通用配置
采集器参数设置
主机高可用配置
主机在线/宕机配置
在General配置中咱们能够选择Poller Type(采集器的类型),一个是cmd.php即Poller采集器,此采集是用PHP编写的配置功能比较简单,另外一种是spine采集器,是多线程的效率比较高在大规模的监控当中能够应用,在下面的内容中咱们将详细讲解。下面的其它配置咱们保持默认便可。
下面是“Graphs Export”页面,能够将咱们生成的图形导出到什么位置,咱们能够导出到本地,也能够导出到FTP服务器上。主要的配置选项有,
通用配置
图形树配置
缩略图配置
路径配置
导出时间配置FTP选项等
咱们通常不须要将生成的图形导出,可是若是你有须要能够设置一下。
下面是“Visual”页面,主要是设置Cacti页面怎么显示的。主要配置有,
图形管理配置
数据查询配置
图形建立配置
数据源显示配置
主机显示配置
日志管理配置
默认的RRDTool工具配置
基本上默认配置便可,也能够根据须要自行设置。
最后咱们将讲解“Authentication”页面,主要有四种认证方式。分别为,
无 - 无验证模式,全部的用户都将拥有所有。
内建验证 - Cacti控制用户验证,这将容许您创建用户并设置他们在Cacti的权限。
WEB基本验证 - Apache控制用户验证.若是定义了模板用户,新用户将在第一次登陆时被建立,不然,将会使用已定义的来宾用户权限。
LDAP验证 - 容许将验证交给LDAP服务器.若是定义了模板用户,新用户将在第一次登陆时被建立,不然,将会使用已民定义的来宾用户权限.若是没有启用PHP的LDAP模块,下拉菜单里不会出现LDAP验证。
咱们通常选择内建验证就是经过Cacti控制用户认证,你也能够选择其它认证。一切根据需求来配置,咱们这里只讲解通用配置。
好了,到这里Cacti的系统设置咱们到这里就基本讲解完成了。下面咱们继续……
3、Cacti 监控远程主在机
注,在上一篇博客中(http://freeloda.blog.51cto.com/2033581/1308140)咱们主要讲解怎么监控localhost,下面咱们来具体讲解一下怎么去监控远程主机。下面咱们来具体说一下,
进入Cacti的console面板->点击“Devices”进入设备面板->
点击“Add”添加新设备->
填写要监测服务器的各类信息,其中Host Template请选择“Local Linux Machine”(选择一个合适的主机模板)->点击“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”条目。
好了,到这里咱们主机就增长完成了。下面咱们来查看一下。点击“Graph Management”能够看到刚才建立的监测点对应的图像,注意因为Cacti默认每5分钟到监测服务器上取一次数据,因此刚建立的监测点会出现图像不能显示的现象,须要等几分钟查看才会正常显示。
为了方便查看,能够将刚才新建立的设备或图像加入到“图像树”上:点击“Graph Tree”进入“图像树”面板->
点击分支名称或“Add”新的分支->
“Tree Item Type”中选择“Host”,“Tree Item Value”的“host”中选择刚才新添加的主机“Node2”->
点击“Create”。
好了,到这里咱们配置的Cacti监控远程主机配置到这里就所有完成了,下面咱们继续……
4、Cacti 优化之spine轮询器
注,出于效率缘由,在大量采集数据时使用自带的cmd.php轮询器会比较慢,1分钟1次的采集频率可能没法完成轮询全部机器。这里为了优化,采用官方推荐的spine来高效轮询。本例使用源代码编译安装,下载的版本是spine-0.8.8b,所用cacti为0.8.8b。
1.解决依赖关系
[root@node1 ~]# yum install -y mysql-devel net-snmp-devel
2.安装spine
[root@node1 ~]# tar xf cacti-spine-0.8.8b.tar.gz [root@node1 ~]# cd cacti-spine-0.8.8b [root@node1 cacti-spine-0.8.8b]# ./configure [root@node1 cacti-spine-0.8.8b]# make && make install
3.提供配置文件并修改
[root@node1 cacti-spine-0.8.8b]# cp /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf [root@node1 cacti-spine-0.8.8b]# vim /usr/local/spine/etc/spine.conf DB_Host localhost DB_Database cactidb DB_User cactiuser DB_Pass cactiuser DB_Port 3306 DB_PreG 0
4.测试一下是否正常
[root@node1 cacti-spine-0.8.8b]# /usr/local/spine/bin/spine -C /usr/local/spine/etc/spine.conf SPINE: Using spine config file [/usr/local/spine/etc/spine.conf] SPINE: Version 0.8.8b starting SPINE: Time: 0.8907 s, Threads: 1, Hosts: 2
5.在cacti里设置spine路径
Console -> Configuration -> Settings -> Paths -> Alternate Poller Path -> Spine Poller File Path
输入spine路径:/usr/local/spine/bin/spine
以下图,
6. 修改Cacti使用的Poller Type
Console -> Cacti Settings->Poller->Poller Type
在下拉中选择spine,以下图:
好了,到这里咱们spine优化器就安装完成了,这一篇博客就到这里吧!在下一篇博文咱们主要讲解Cacti的模板和自定义脚本的应用。但愿你们有所收获^_^……