CACTI安装syslog插件

来源:互联网 发布:邢台seo外包 编辑:程序博客网 时间:2024/05/21 13:57

                    CACTI安装syslog插件    

   Cacti安装syslog插件,使之成为中央日志服务器,通过syslog插件展示,从服务器通过网络将日志实时发送到中央日志服务器。

syslog插件,是通过rsyslog或syslog-ng与mysql的交互,将日志存放到mysql数据库中,cacti中的syslog插件从mysql中检索查看日志数据。因此,首先要配置一台rsyslog与mysql的日志中心服务器来接收客户机的日志;其次,配置cacti的syslog插件,通过该插件检索与查询mysql中的日志。可以收集来自linux、windows等服务器和交换机路由器的日志。做到集中和分类查看。 

其中涉及到的有监控端和被监控端,以下从这两个方向说起:

第一个、监控端(即安装Cacti的服务器

 一、设置接收日志    

    在这里我们要想接收日志信息,并在cactisyslog插件中显示接收到的日志,首先是接收日志,有二种办法:

  a.使用syslog-ng,在centos5.5及以下系统上,系统默认有syslog,可以发送日志,但不能接受日志,因此要借助于syslog-ng,来接收发送过来的日志,并规范成一个模版,再通过自己写的脚本,插入到mysql数据库里

  b.使用rsyslogrsyslog是在centos6以上系统自带的,rsyslog不仅能接收日志,还可以发送日志,因此要是在centos6以上系统就不需要额外安装syslog-ng接收日志了,用自带的rsylog就可以接收日志,再用rsyslog-mysql就可以把接收到的日志写入mysql数据库

由于我现在的系统是centos6.0,因此不采用第一种,而是采用第二种方案进行设置;

 1.安装rsyslog,首先需要在监控端安装rsyslogrsyslog-mysql


(由于我本身已经安装了,其显示信息的如下:)


2.编辑rsyslog的配置文件(/etc/rsyslog.conf


在其最后添加下面的内容:


##新增加的内容

# 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)

$ModLoad 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

$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%', '%msg%')", SQL

# Insert the log's text into the Syslog database by the costomer timestamp format of the cacti_syslog template

*.*             :ommysql:localhost,syslog,cacti,123456;cacti_syslog

# Write the log to the /var/log/file.log repeat

*.*             /var/log/file.log


其中syslog为数据库,cacti为数据库用户,123456为密码

编辑完成后,保存并退出。

3.修改/etc/sysconfig/rsyslog文件

添加以下代码,使之允许远程接收日志


保存并退出!

4.重启rsyslog,


二、安装syslog插件

1.下载并安装syslog插件


#tar  xvf  syslog-v1.22-2.tar

#mv syslog ./cacti/plugins

#chown -R cacti.cacti 

2.创建数据库syslog,并导入数据

#mysql -ucacti -p123456

mysql>create database syslog;

mysql>grant all privileges on syslog.* on cacti@localhost identified by '123456' with grant option;

mysql>flush privileges;

mysql>exit;

#mysql -ucacti -p123456  syslog 

 --default-character-set=utf8</var/www/cacti/plugins/syslog/syslog.sql

3.修改配置文件config.php



我们在上面设置$use_cacti_db = false;这个是设置syslog是否要使用cacti的数据库,我在这里不使用cacti的数据,因为syslog往往比较多,日志比较多,为了便于备份和使用,还是选择用一个独立的数据库。因此要在下面设置连接数据库的用户名,密码,数据库名等 

第二个、被监控端

 被监控端的设置很简单,只是修改其中的/etc/rsyslog.conf的的设置即可,如下


在最后一行添加


(注:192.168.7.125为我们监控端的IP

三、cacti主页中启动syslog


和其他的插件启动一样的设置,这里不再赘述!简单说说刚启动后,出现的一些设置情况,


这里是对syslog数据的一些设置第分别为Database Storage Engine(数据库存储引擎)、Database Architecutre(数据库架构)这二项在一般默认,如果你的mysql数据库为5.1.6后者以上可以选择InnoDB Storage 和Partitioned Table,可以提高syslog的性能最后一项是Retention Policy(保留策略)就是要在syslog存储多长的时间,这个可以根据自己的需求设定 。

原创粉丝点击