阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Rsyslog+Loganalyer+MySQL下部署日志服务器

236次阅读
没有评论

共计 2989 个字符,预计需要花费 8 分钟才能阅读完成。

准备工作 ( 三台 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 
<?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 < /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql

这个时候你登陆数据库会看见数据库中多了 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 即可

Rsyslog+Loganalyer+MySQL 下部署日志服务器

Rsyslog+Loganalyer+MySQL 下部署日志服务器

Rsyslog+Loganalyer+MySQL 下部署日志服务器

填入数据库 HOST, 库名,表名,用户名和密码,然后 NEXT, 之后 FINISH

Rsyslog+Loganalyer+MySQL 下部署日志服务器

Rsyslog+Loganalyer+MySQL 下部署日志服务器

Rsyslog+Loganalyer+MySQL 下部署日志服务器

Rsyslog+Loganalyer+MySQL 下部署日志服务器

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-08/146468.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2989字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中