Rsyslog+Loganalyer+MySQL下部署日志服务器
准备工作(三台Centos服务器Centos7):MySQL服务器(192.168.1.70):收集储存管理日志
web/Rsyslog服务器(192.168.1.52):搭建httpd服务,提供在web端查看日志信息
测试服务器(192.168.1.71):生成日志,并将日志信息发送给Rsyslog服务器
关闭防火墙和selinux
配置MySQL服务器
安装MySQL服务,创建用户,授权对Syslog数据库的访问。#yum -y install mariadb-server
#systemctl start mariadb
#mysql
> GRANT ALL ON Syslog.* TO 'syslog'@'192.168.1.%' IDENTIFIED BY 'syslogpass';
> FLUSH PRIVILEGES;
> exit;
在mariadb服务器的配置文件中添加下面三个选项:# vim /etc/my.cnf
skip_name_resolve=on
innodb_file_per_table=on
配置测试服务器(可以省略)
将该服务器的所有facility产生的日志级别(priority)为info下信息都输出到Rsyslog服务器中。
该服务器可用来进行安装和卸载相关的软件,以此来测试是否web服务器和数据库服务器能否正常通信。
当然也可用来测试Rsyslog服务器。# vim /etc/rsyslog.conf
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
#*.info;mail.none;authpriv.none;cron.none /var/log/messages
*.info;mail.none;authpriv.none;cron.none @192.168.1.52
部署Rsyslog服务器#yum -y install httpd php php-mysql php-gd
#system start httpd
新建下面一个文件,测试 PHP能否和MySQL进行通信(在浏览器中输入192.168.1.52,看见OK,则成功。)# vim /var/www/html/index.php
$comn=mysql_connect('192.168.1.70','syslog','syslogpass');
if ($comn)
echo "OK";
else
echo "failure";
?>
安装rsyslog-mysql程序包并创建数据库:#yum -y install rsyslog-mysql
# rpm -ql rsyslog-mysql
/usr/lib64/rsyslog/ommysql.so
/usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
#mysql -usyslog -psyslogpass -h192.168.1.70
这个时候你登陆数据库会看见数据库中多了Syslog库,> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| Syslog |
+--------------------+
2 rows in set (0.00 sec)
MariaDB [Syslog]> USE Syslog;
Database changed
MariaDB [Syslog]> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| Syslog |
+--------------------+
启用rsyslog服务器功能,并配置使用ommysql模块#启用tcp(推荐)或者udp端口
# vim /etc/rsyslog.conf
# Provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
#在MODULES模块下添加ommysql模块
#### MODULES ####
$ModLoad ommysql
#在RULES下修改目标地址(格式:“ommysql:数据库服务器HOST,数据库名,授权用户,密码”)
#### RULES ####
#*.info;mail.none;authpriv.none;cron.none /var/log/messages
*.info;mail.none;authpriv.none;cron.none :ommysql:192.168.1.70,Syslog,syslog,syslogpass
#systemctl restart rsyslog
安装loganalyer并配置:#wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.2.tar.gz
# tar - xf loganalyzer-4.1.2.tar.gz
# cp -r loganalyzer-4.1.2/src/ /var/www/html/loganalyzer
# cp loganalyzer-4.1.2/contrib/* /var/www/html/loganalyzer/
# cd /var/www/html/loganalyzer/
# chmod +x *.sh
# chmod +x *.sh
# ll *.sh
-rwxr-xr-x 1 root root 49 5月 26 18:37 configure.sh
-rwxr-xr-x 1 root root 31 5月 26 18:37 secure.sh
# ./configure.sh
# ./secure.sh
# chmod 666 config.php
在浏览器中安装loganalyer
注意loganalyer的版本问题,如果使用的是Centos7以上版本的最好使用loganalyer4.0以上的版本,否则不兼容。安装失败。 在浏览器中输入192.168.1.52/loganalyzer/install.php进行安装,配置好相关参数即可。
图片:
1.默认点NEXT即可
填入数据库HOST,库名,表名,用户名和密码,然后NEXT,之后FINISH
2017/5/26 20:25:15