作者:交通运输程俊 | 来源:互联网 | 2024-12-24 17:11
本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。
使用rsyslog、MariaDB和LogAnalyzer构建Web日志查看系统
本文将详细介绍如何配置一个基于rsyslog、MariaDB和LogAnalyzer的日志管理系统,以便通过Web界面实时查看和分析Linux日志。
一、环境准备
本架构与之前课程中提到的集中式日志服务器类似,但此次是在特定服务器(如IP地址为192.168.1.55的主机)上进行搭建。
二、服务端设置
1. 安装必要软件包
[root@localhost ~]# dnf install mariadb mariadb-server rsyslog-mysql -y
2. 启动并检查MariaDB服务
[root@localhost ~]# systemctl restart mariadb
[root@localhost ~]# systemctl status mariadb
3. 配置MariaDB
## 设置MariaDB管理员密码
[root@localhost ~]# mysqladmin -u root password 'your_password'
## 创建用于存储日志数据的数据库
[root@localhost ~]# mysql -u root -p
## 验证数据库创建是否成功
[root@localhost ~]# mysql -u root -p
MariaDB [(none)]> show databases;
4. 授权访问权限
GRANT ALL ON Syslog.* TO 'sysloguser'@'127.0.0.1' IDENTIFIED BY 'your_password';
GRANT ALL ON Syslog.* TO 'sysloguser'@'192.168.1.55' IDENTIFIED BY 'your_password';
GRANT ALL ON Syslog.* TO 'sysloguser'@'192.168.1.18' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
5. 修改rsyslog配置文件
[root@localhost ~]# vim /etc/rsyslog.conf
...
module(load="imtcp") # 加载TCP输入模块
input(type="imtcp" port="514")
module(load="ommysql") # 加载MySQL输出模块
...
*.* :ommysql:192.168.1.55,Syslog,sysloguser,your_password
[root@localhost ~]# systemctl restart rsyslog
6. 测试日志记录功能
[root@localhost ~]# logger "Test message"
[root@localhost ~]# mysql -u root -p
MariaDB [(none)]> use Syslog;
MariaDB [Syslog]> select * from SystemEvents;
7. 客户端配置
## 在客户端安装rsyslog-mysql
[root@localhost ~]# dnf install rsyslog-mysql -y
## 修改rsyslog配置文件
[root@localhost ~]# vim /etc/rsyslog.conf
module(load="ommysql")
*.* :ommysql:192.168.1.55,Syslog,sysloguser,your_password
[root@localhost ~]# systemctl restart rsyslog
8. 安装LogAnalyzer
[root@localhost ~]# dnf install httpd php php-mysqlnd php-gd -y
[root@localhost ~]# tar xf loganalyzer-4.1.8.tar.gz
[root@localhost ~]# cp -r loganalyzer-4.1.8/src/* /var/www/html/
[root@localhost ~]# cp loganalyzer-4.1.8/contrib/* /var/www/html/
[root@localhost html]# sh configure.sh
[root@localhost html]# systemctl restart httpd
9. 配置LogAnalyzer数据库
CREATE DATABASE loganalyzer;
GRANT ALL ON loganalyzer.* TO lyzeruser@'192.168.1.55' IDENTIFIED BY 'lyzeruser';
FLUSH PRIVILEGES;
10. 部署LogAnalyzer
打开浏览器访问服务器的IP地址,并按照提示完成LogAnalyzer的安装和配置过程。