Cacti的设置以及Spine轮询器

Cacti的设置

接着上一篇的cacti系列讲解,在配置选项中有两个子项目,Settings和Plugin Management。我们点击Settings后,出现以下界面。

我们看到上图中,箭头指向的地方,我们可以针对这些项目进行设置。

首先我们看一下“General”,通用配置,配置的内容主要有以下几项

  • 日志
  • SNMP相关的设置
  • 其他配置

其实这里基本上不需要进行修改,保持默认的配置即可。如果需要修改,也就是“Required Tool Versions”和“SNMP Defaults”,修改后点击“Save”。

接下来看“Path”选项,很明显,这是和路径相关的。主要配置的内容有

  • 所需工具的路径(snmp, rrdtool, php)
  • Cacti日志文件的存放路径
  • Spine轮询优化器的路径(在下面的内容中我们马上讲解)
  • 结构化RRD路径(勾选此选项,那么每一个主机的RRD文件会单独存放在某个目录下)

我们看到,这里的配置路径和刚开始安装和初始化Cacti时的检测的一致。所有的配置保持默认即可,基本不需要配置。

唯一我们下面需要更改的地方就是 Alternate Poller Path, 先记住,我们下面再说。

接下来看“Poller”选项,Cacti采集器的配置,主要配置内容有

  • 通用配置
  • 采集器参数设置
  • 主机高可用配置
  • 主机在线/宕机配置

在Poller配置中我们可以选择“Poller Type”(采集器类型),cmd.php及poller.php采集器,此采集器是用php编写的,功能比较简单。另一种是spine采集器,是多线程的,效率比较高,适合大规模的监控。等一下我们就会详细介绍spine的安装使用,这里先别动。

接下来是“Graphs Export”选项,可以将我们生成的图片导出到什么地方。可以导出到本地,或是远程FTP服务器上,主要的配置选项有:

  • 通用配置
  • 图形树配置
  • 缩略图配置
  • 路径配置
  • 导出时间配置FTP选项等

我们一般不需要导出图形。

下面是“Visual”选项,主要设置Cacti页面是如何显示的,主要配置有

  • 图形管理配置
  • 数据查询配置
  • 图形创建配置
  • 数据源显示配置
  • 主机显示配置
  • 日志管理配置
  • 默认的RRDTool工具配置

保持默认的配置即可。

最后,我们讲解“Authentication”选项,主要有四种认证方式,分别为:

  • 无             无认证方式,所有的用户都将拥有全部访问权限(危险)
  • 内建验证       Cacti控制用户认证,这将允许你建立用户并设置它们访问Cacti的权限。
  • WEB基本认证    通过Apache控制用户认证,如果定义了模板用户,新用户将在第一次登陆时被创建,否则将会使用已定义的来宾用户权限。
  • LDAP认证       允许将认证交给LADP服务器,如果定义了模板用户,新用户将在第一次登录时被创建,否则,将会使用已定义的来宾用户权限,如果没有启用PHP的LDAP模块,下拉菜单中不会出现LDAP认证。

通常,我们会选择内建验证。

开启匿名访问用户:guest

第一步:User management -> 出现用户列表, 点击“用户名”

User management -> 点击“guest”, 会出现如下界面,勾选 Enabled

第二步:针对graph等进行默认的权限设置。也就是被圈住的各个选项,分别配置其访问的权限。



Cacti优化之spine轮询器

由于效率的原因,在需要大量采集数据时,如果使用自带的cmd.php轮询器会比较慢,1分钟1次的采集频率可能无法完成轮询所有的被监控的机器。为了解决效率问题,Cacti官方也推出spine,采用多线程的方式高效的轮询。

这里直接引入官方的文档:http://www.cacti.net/spine_install.php

Spine Installation

Spine needs to be compiled before it can be used. If you found a binary package of Spine for your operating system, you can skip the next step about compiling Spine.

Compiling Spine

Compiling Spine for Redhat/Fedora Linux

Before you continue, check if any pre-compiled packages are available for your version of Redhat/Fedora Linux. These instructions will help you compile Spine from source if no binary packages are available.

Prerequisites

Make sure that the following packages are installed before attempting to compile Spine:

  • net-snmp-devel
  • mysql
  • mysql-devel
  • openssl-devel

Compiling Spine

Download the latest source distribution of Spine and run the following commands to get a working binary:

tar xvzf cacti-spine-0.8.7.tar.gz
cd spine-0.8.7
./configure
make

Now you must move your new binary, spine and spine.conf to a more permanent home such as /usr/local/spine. Edit thespine.conf file and specify your database connection information for Cacti.

You should now be ready to start using Spine!

Setting Up Spine

Once Spine is installed on your system, you must perform the following steps to make your Cacti installation aware of it.

  1. Login to Cacti as an admin user.
  2. Select Settings on the menu and click the Paths tab.
  3. Enter the complete path to your Spine binary in the Spine Poller File Path field and click Save.
  4. Click the Poller tab.
  5. Choose "spine" from the Poller Type dropdown box and click Save.

After completing these steps, Cacti will spawn Spine every 5 minutes instead of cmd.php. If you are having problems getting Spine to gather data, you can always temporarily change Poller Type back to "cmd.php".

鉴于有些同学看着英文就有点头晕,这里我也演示一下。

1、解决依赖关系

## 依赖于mysql mysql-devel net-snmp-devel openssl-devel
## 我们在安装cacti的时候已经安装 mysql  mysql-devel 所以,这里只需安装另外2个
[[email protected] ~]# yum -y install  net-snmp-devel openssl-devel

2、安装spine,下载的版本最好与cacti一致,spine-0.8.8b

[[email protected] ~]# tar xf cacti-spine-0.8.8b.tar.gz 
[[email protected] ~]# cd cacti-spine-0.8.8b
[[email protected] cacti-spine-0.8.8b]# ./configure
[[email protected] cacti-spine-0.8.8b]# make && make install

3、提供配置文件

[[email protected] ~]# cp /usr/local/spine/etc/spine.conf.dist /etc/spine.conf
## 编辑配置文件,请根据实际情况修改
[[email protected] ~]# vi /etc/spine.conf 
DB_Host         localhost
DB_Database     cactidb
DB_User         cactiuser
DB_Pass         cactiuser
DB_Port         3306
DB_PreG         0

# 这里的配置是怎么来的呢? 还记得吧, 就是 cacti/include/config.php
/* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
$database_ssl = false;

4、测试

[[email protected] ~]# /usr/local/spine/bin/spine
## 报错了
MYSQL: Connection Failed: Error:‘2003‘, Message:‘Can‘t connect to MySQL server on ‘shuttle‘ (61)‘
05/12/2012 07:14:22 PM - SPINE: Poller[0] FATAL: Connection Failed, Error:‘2003‘, Message:‘Can‘t connect to MySQL server on ‘shuttle‘ (61)‘ (Spine init)

## google了一下
You probably checked it out already but make sure: 
DB_Host 127.0.0.1
and NOT
DB_Host localhost

OK, 再测试一下:

[[email protected] ~]# /usr/local/spine/bin/spine 
SPINE: Using spine config file [/etc/spine.conf]
SPINE: Version 0.8.8b starting
SPINE: Time: 0.1707 s, Threads: 5, Hosts: 2
[[email protected] ~]#

5、在cacti的WEB页面进行设置spine的路径

前面,我们已经提到了。

Console -> Configureation -> Settings -> Alternate Poller Path -> Spine Poller File Path

输入spine的路径:默认安装在/usr/local/spine/bin/spine

6、修改Cacti默认的Poller Types

Console -> Cacti Settings -> Poller -> Poller Type

在下拉框中,选择spine, 然后记得“Save”

注意:Spine不必为其添加计划任务,Cacti well spawn Spine every 5 minutes instead of cmd.php

而poller.php需要定义计划任务去执行,然后poller.php再去调度数据收集方法。

好了, 到这里就结束了。

Cacti的设置以及Spine轮询器

时间: 2024-09-27 15:42:28

Cacti的设置以及Spine轮询器的相关文章

Cacti优化之spine轮询器

由于效率的原因,在需要大量采集数据时,如果使用自带的cmd.php轮询器会比较慢,1分钟1次的采集频率可能无法完成轮询所有的被监控的机器,从而可能导致部分监控项目不出图或图形断断续续.为了解决效率问题,Cacti官方也推出spine,采用多线程的方式高效的轮询. 1.解决依赖关系## 依赖于mysql mysql-devel net-snmp-devel openssl-devel## 我们在安装cacti的时候已经安装 mysql mysql-devel 所以,这里只需安装另外2个# yum

Cacti安装spine轮询器

之前安装cacti的时候就知道需要安装spine,但是百度搜出来的教程是死活都装不上,今天无意之间发现了cacti的官方原版教程"Cacti 0.8 Beginner's Guide",百度一下在搬书匠里下了下来看了一下,果然官方的就是不一样,按照步骤马上就装上了 一.当然是需要先安装好必须的软件环境: yum install gcc mysql-devel net-snmp-devel autoconf automake libtool 二.在官网www.cacti.net里down

S5PV210 串口设置与实验(轮询方式)

S5PV210 UART 相关说明 通用异步收发器简称 UART, 即 UNIVERSAL ASYNCHRONOUS RECEIVER AND TRANSMITTER,它用来传输串行数据.发送数据时, CPU 将并行数据写入 UART,UART 按照一定的格式在一根电线上串行发出:接收数据时, UART 检测另一根电线的信号,将串行收集在缓冲区中, CPU 即可读取 UART 获得这些数据. 在 S5PV210 中, UART 提供了 4 对独立的异步串口 I/O 端口,有 4 个独立的通道,每

AngularJs轮询器写法

$interval $interval 是对原生setInterval的一种封装,它会在每次方法调用后自动的执行`$apply``api是这样的: 1 $interval(fn, delay, [count], [invokeApply], [Pass]); fn是目标方法 delay 是延迟时间,单位是毫秒 count 是一共循环多少次 invokeApply 是指是否调用$apply方法,默认true Pass是方法运行是传的参数 对文章开始代码进行改写 1234567891011 app.

Nginx 安装配置 禁止使用IP访问 rewrite重写 别名设置 日志轮询

1.yum install pcre pcre-devel -y#支持rewrite重写功能 2.yum -y install openssl openssl-devel#支持https功能 3.useradd nginx -s /sbin/nologin -M#添加用户 4.tar zxf nginx-1.6.2.tar.gz   cd nginx-1.6.2./configure \--user=nginx --group=nginx \--prefix=/application/nginx

Jenkins定时构建和轮询SCM设置说明

看图说事: 一.定时构建:不管SVN或Git中数据有无变化,均执行定时化的构建任务 : 二.轮询SCM:只要SVN或Git中数据有更新,则执行构建任务: 三.构建语法说明: 1.首先格式为:* * * * *(五个星): 2.第一个*表示分钟,取值0~59   第二个*表示小时,取值0~23   第三个*表示一个月的第几天,取值1~31   第四个*表示第几月,取值1~12   第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日 3.使用举例: 每隔10分钟构建一次:H/5 * *

Nginx 负载均衡-加权轮询策略剖析

本文介绍的是客户端请求在多个后端服务器之间的均衡,注意与客户端请求在多个nginx进程之间的均衡相区别(Nginx根据每个工作进程的当前压力调整它们获取监听套接口的几率,那些当前比较空闲的工作进程有更多机会获取到监听套接口,从而客户端的请求到达后也就相应地被它捕获并处理).如果Nginx是以反向代理的形式配置运行,那么对请求的实际处理需要转发到后端服务器运行,如果后端服务器有多台,如何选择一台合适的后端服务器来处理当前请求,就是本文要说的负载均衡.这两种均衡互不冲突并且能同时生效. nginx不

iOS开发那些事儿(一)轮播器

前言 市面上绝大部分的APP被打开之后映入眼帘的都是一个美轮美奂的轮播器,所以能做出一个符合需求.高效的轮播器成为了一个程序员的必备技能.所以今天的这篇博客就来谈谈轮播器这个看似简单的控件其中蕴含的道理. 正文  首先我们来分析一下该如何去实现一个类似下图的轮播器(图片数量.URL由服务器返回):   策略一:UIScrollView->UIImageView->NSTimer轮询 这算是常规的策略,但是如果仔细想想,如果服务器返回给你50图片是不是就需要创建50个UIImageView来做容

Android 轮询最佳实践 Service + AlarmManager+Thread

android中涉及到将服务器中数据变化信息通知用户一般有两种办法,推送和轮询. 消息推送是服务端主动发消息给客户端,因为第一时间知道数据发生变化的是服务器自己,所以推送的优势是实时性高.但服务器主动推送需要单独开发一套能让客户端持久连接的服务端程序,不过现在已经有很多开源的代码实现了基于xmmp协议的推送方案,而且还可以使用谷歌的推送方案.但有些情况下并不需要服务端主动推送,而是在一定的时间间隔内客户端主动发起查询. 譬如有这样一个app,实时性要求不高,每天只要能获取10次最新数据就能满足要