共计 3351 个字符,预计需要花费 9 分钟才能阅读完成。
一、简介
1、LogAnalyzer 是一款 syslog 日志和其他网络事件数据的 Web 前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的 syslog 文本文件中获取,所以 LogAnalyzer 不需要改变现有的记录架构。基于当前的日志数据,它可以处理 syslog 日志消息,Windows 事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。
2、LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端 /var/log/ 目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。
3、LogAnalyzer 采用 php 开发,所以日志服务器需要 php 的运行环境,本文采用 LAMP。
二、架构图
所有主机将日志都交给日志日志服务器管理,日志服务器配置将所有存储在 MySQL 数据库中。
搭建 Loganalyzer 将日志服务器中的所有日志进行 web 展现于管理。
三、服务器环境
作用 | 系统 | IP |
---|---|---|
前端调度 | CentOS7.3 | 172.18.68.71 |
Web 服务器 1 | CentOS7.3 | 172.18.68.72 |
Web 服务器 2 | CentOS7.3 | 172.18.68.73 |
MySQL 服务器 1 | CentOS7.3 | 172.18.68.74 |
MySQL 服务器 2 | CentOS7.3 | 172.18.68.75 |
日志服务器 | CentOS7.3 | 172.18.68.10 |
四、部署过程
1. 所有服务器日志汇集至日志服务器
-
客户端配置
CentOS6 和 CentOS7 默认使用 Rsyslog 记录系统日志,他的优点在与多线程,可以通过 TCP、UDP 发送,可是下 MySQL 存储等等。
Rsyslog 的主配置文件问为 /etc/rsyslog.conf,所以要在所有客户端中编辑主配置文件,把所有的日志全部发送至远程主机管理。# 在所有客户端服务器编辑一下配置文件 [root@tiaobanji ~]# vim /etc/rsyslog.conf *.info;mail.none;authpriv.none;cron.none @172.18.68.10 # 重启服务 systemctl restart rsyslog
-
服务端配置
将 Rsyslog 默认不接受其他主机传来的日志信息。只要编辑配置文件加载 TCP、UDP 模块,并且监听端口,就可以接收其他主机传来的日志信息。# 将一下四行注释取消 [root@tiaobanji ~]# vim /etc/rsyslog.conf $ModLoad imudp $UDPServerRun 514 $ModLoad imtcp $InputTCPServerRun 514
2. 配置服务端 – 将日志存储在数据库
Rsyslog 默认将日志文件存储在本地,可以通过配置文件将其修改为存储在 MySQL 数据库中。不过这需要模块支持,需要先安装
rsyslog-mysql
软件包.# 安装 rsyslog-mysql [root@tiaobanji ~]# yum install rsyslog-mysql -y
使用
rpm -ql rsyslog-mysql
看一下生成 2 个文件。一个是模块、一个是初始化数据库的 SQL 语句。只要编辑配置文件将模块加载,然后将 sql 语句导入至 MySQL 数据库服务器中即可。在数据库中创建的用户要与 Rsyslog.conf 的一致。# 1. 查看软件包 [root@tiaobanji ~]# rpm -ql rsyslog-mysql /usr/lib64/rsyslog/ommysql.so /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql # # 2. 修改主配置文件 [root@tiaobanji ~]# vim /etc/rsyslog.conf $ModLoad ommysql #:ommysql: 数据库 IP, 数据库名, 用户名, 密码 *.info;mail.none;authpriv.none;cron.none :ommysql:172.18.68.74,Syslog,logadmin,centos # # 3. 初始化数据库 [root@tiaobanji ~]# mysql -h172.18.68.74 -uroot -p </usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql # # 4. 授权用户 [root@tiaobanji ~]# mysql -h172.18.68.74 -uroot -p MariaDB [(none)]> grent all on Syslog.* to 'logadmin'@'172.18.68.%' identified by 'centos';
3. 部署 LogAnalyzer 前端展示
以上两个步骤就将所有服务器的日志全部汇集至日志服务器并存储在数据库中。接下来部署 LogAnalyzer 将日志用前端展示。
-
安装 LogAnalyzer
LogAnalyzer 的部署非常简单在官网 http://loganalyzer.adiscon.com/ 下载并解压,然后将解压文件中的 src 文件复制到 httpd 可以访问到的页面即可。tar xf loganalyzer-4.1.5.tar.gz cp -a loganalyzer-4.1.5/src /var/www/html/loganalyzer cd /var/www/html/loganalyzer
-
配置 LogAnalyzer
1、浏览器打开 http://IP/loganalyzer 后点击here
2、点击下一步
3、创建配置文件
LogAnalyzer 安装时会在系统创建./config.php
配置文件用于存储数据库用户名、密码等信息。但是它并没有权限,所有要手动创建个文件,并且赋予 666 权限。./config.php
存储数据库的账号密码信息,由于这个文件仅仅才安装 LogAnalyzer 时需要 666 权限,所以在安装完毕后将其权限改为 644 更为妥当。touch /var/www/html/loganalyzer/config.php chmod 666 /var/www/html/loganalyzer/config.php
4、配置数据库文件
在第三部创建完配置文件之后,就一直点击 next。直到如图所示
这里会填写数据库相关的信息,一定要注意大小写,一定要手动填写表名,因为默认的是小写。
5、点击安装
一切都配置完毕,最后点击安装。如果不能安装成功可能是之前的数据库配置错误。只要将 config.php 删除然后重新安装即可。
6、测试
进入页面之后可以看到一些日志,那就说明所有的部署工作完成!
7、安全加固
记得前面创建了 config.php 文件吗?这个文件保存了数据库的账号密码 ip 等等。在安装前权限为 666,但是在安装后就不需要读权限了所将其其改为 644。chmod 644 /var/www/html/loganalyzer/config.php
五、安装中文语言包
LogAnalyzer 默认为中文,个人也是推荐使用英文。这里也提供中文语言包。
完整 PDF 文档可以到 Linux 公社资源站下载:
—————————————— 分割线 ——————————————
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2017 年资料 /10 月 /16 日 /CentOS7.3 下部署 Rsyslog+LogAnalyzer+MySQL 中央日志服务器 /
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
—————————————— 分割线 ——————————————
解压后将整个目录方至 /var/www/html/loganalyzer/lang 目录下。然后再次访问页面在右上角选择中文即可。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147693.htm