Syslog 安装 (中央日志收集器)

syslog插件可将网络中所有设备的日志信息收集到一起,并将接收到的信息写入到数据库中,通过插件web界面可以实现简单的日志查询功能。因此,首先要配置一台rsyslog日志中心服务器来接收客户机的日志,并将日志数据存放到mysql中,其次,配置cacti的syslog插件,通过该插件检索与查询mysql中的日志,syslog可以收集来自linux、windows(需要安装软件将格式统一即可)等服务器和交换机路由器的日志,并做到集中和分类查看。

一、将Cacti服务器配置为syslog服务器

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

[root@game-inc ~]# yum -y install  rsyslog-mysql  #centos6.0 默认已经安装rsyslog

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

[root@game-inc ~]# vi /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)

$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:game-inc,syslog,cacti,p@ssw0rd;cacti_syslog

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

*.*             /var/log/file.log

其中syslog为数据库,cacti为数据库用户,p@ssw0rd为密码,cacti_syslog为模板名称

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

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

[root@game-inc opt]# vi /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
="-r -m 0" 
KLOGD_OPTIONS="-x"

保存并退出!

4.重启rsyslog

[root@game-inc opt]# service rsyslog restart

二、安装syslog插件

1.安装syslog插件

[root@game-inc opt]# tar zxf syslog-v1.22-2.tgz

[root@game-inc opt]# mv syslog /var/www/html/cacti/plugins

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

[root@game-inc opt]mysql -uroot

mysql>create database syslog;

mysql> grant all privileges on syslog.* on cacti@localhost identified by 'p@ssw0rd' 

mysql>flush privileges;

mysql>exit;

[root@game-inc opt]mysql -ucacti -pp@ssw0rd syslog --default-character-set=utf8</var/www/html/cacti/plugins/syslog/syslog.sql #导入数据库结构

 

3.修改配置文件config.php

[root@game-inc opt]# cd /var/www/html/cacti/plugins/syslog/

[root@game-inc syslog]# vi config.php 

+-------------------------------------------------------------------------+ 
*/

global $config, $database_type, $database_default, $database_hostname; 
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 = 'cacti'; 
        $syslogdb_password = 'p@ssw0rd'; 
        $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; 

    修改配置文件,特别注意$syslogdb_default = 'syslog',由于我们不使用cacti的数据库(本文中为cacit)而使用我们刚刚建立的syslog数据库,所以将$use_cacti_db = true,改为$use_cacti_db = false; 因为syslog日志往往比较多,为了便于备份和使用,还是选择用一个独立的数据库来存储日志信息。此外还要在下面设置连接数据库的用户名,密码,数据库名等

被监控端设置

如果希望本机cacti服务器能够作为日志服务器的被监控端,只需修改其中的/etc/rsyslog.conf的的设置即可,如下
[root@game-inc syslog]# vi /etc/rsyslog.conf 

Cacti部署及常用插件安装(5)_cacti

在最后一行添加 *.*             @@10.248.34.130

网络设备设置

以华为S5700为例,系统视图下执行

info-center loghost 10.248.34.130 facility local5

三、cacti主页中启动syslog

Cacti部署及常用插件安装(5)_监控_02

和其他的插件启动一样的设置,这里不再叙述

Cacti部署及常用插件安装(5)_syslog_03

这里有一些设置比如:数据库引擎的选择,以及日志保存的时间等

再稍等一会就可以看到有日志出现了。

至此所有的部署工作以及插件安装工作都已经完成