CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

简介:

一、简介

LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。

LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。

LogAnalyzer 采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。

二、系统环境

Rsyslog Server OS:CentOS 6.5

Rsyslog Server IP:192.168.1.107

Rsyslog 版本:rsyslog-5.8.10-8.el6.i686

LogAnalyzer 版本:LogAnalyzer 3.6.5 (v3-stable)

LAMP 版本:httpd-2.2.15-30.el6.centos.i686 + mysql-5.1.73-3.el6_5.i686 + php-5.3.3-27.el6_5.i686

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

Rsyslog Client OS:RHEL 6.4

Rsyslog Client IP:192.168.1.108

三、安装并设置LAMP环境

3.1 安装LAMP环境

# yum -y install httpd mysql* php*

3.2 启动服务并加入开机启动

启动Apache

# /etc/init.d/httpd start

# chkconfig httpd on

启动数据库

# /etc/init.d/mysqld start

# chkconfig mysqld on

3.3 设置MySQL root 密码

# mysqladmin -uroot password 'abc123'

3.4 测试php运行环境

# cd /var/www/html/

[root@TS html]# cat > index.php <<EOF 
> <?php    
> phpinfo();    
> ?>    
> EOF

1

打开浏览器访问:http://192.168.1.107/index.php

2

LAMP环境配置完毕。

四、检查并安装服务器端软件

4.1 检查是否安装了rsyslog软件

# rpm -qa|grep rsyslog    //默认系统都安装了该软件

4.2 安装rsyslog 连接MySQL数据库的模块

# yum install rsyslog-mysql –y

rsyslog-mysql 为rsyslog 将日志传送到MySQL 数据库的一个模块,这里必须安装。

五、配置服务器端

5.1 导入rsyslog-mysql 数据库文件

# cd /usr/share/doc/rsyslog-mysql-5.8.10/

# mysql -uroot -pabc123 < createDB.sql

3

查看做了哪些操作

# mysql -uroot –p

mysql> show databases;

mysql> show tables;

5

导入数据库操作创建了Syslog 库并在该库中创建了两张空表SystemEvents 和SystemEventsProperties。

5.2 创建rsyslog 用户在mysql下的相关权限

# mysql -uroot –p

mysql> grant all on Syslog.* to rsyslog@localhost identified by '123456';

mysql> flush privileges;

mysql> exit

7

5.3 配置服务端支持rsyslog-mysql 模块,并开启UDP服务端口获取网内其他LINUX系统日志

# vi /etc/rsyslog.conf

$ModLoad ommysql   
*.* :ommysql:localhost,Syslog,rsyslog,123456

在 #### MODULES #### 下添加上面两行。

说明:localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,123456为该用户密码。

5.4 开启相关日志模块

# vi /etc/rsyslog.conf

$ModLoad immark    #immark是模块名,支持日志标记

$ModLoad imudp    #imupd是模块名,支持udp协议

$UDPServerRun 514    #允许514端口接收使用UDP和TCP协议转发过来的日志

6

5.5 重启rsyslog 服务

# /etc/init.d/rsyslog restart

六、配置客户端

6.1 检查rsyslog 是否安装

# rpm -qa|grep rsyslog

6.2 配置rsyslog 客户端发送本地日志到服务端

# vi /etc/rsyslog.conf

*.* @192.168.1.107

行尾新增上面这行内容,即客户端将本地日志发送到服务器。

6.3 重启rsyslog 服务

# /etc/init.d/rsyslog restart

6.4 编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中。

# vi /etc/bashrc

在文件尾部增加一行

export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'

设置其生效

# source /etc/bashrc

客户端配置完毕。

七、测试Rsyslog Server是否可以正常接受Client端日志

Client 端测试:

11

Server 端侦测:

10

说明接收正常,包括你重启机器的一些Log都可以查看到。

八、安装LogAnalyzer

# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz

# tar zxf loganalyzer-3.6.5.tar.gz

# cd loganalyzer-3.6.5

# mkdir -p /var/www/html/loganalyzer

# rsync -a src/* /var/www/html/loganalyzer/

12

九、在浏览器安装向导中安装LogAnalyzer

9.1 打开浏览器访问:http://192.168.1.107/loganalyzer/

13

提示没有配置文件,点击 here 利用向导生成。

9.2 第一步,测试系统环境

14

点击 “Next”,进入第二步。

15

提示错误:缺少config.php 文件,并且权限要设置为666,可以使用contrib目录下的configure.sh 脚本生成。

查看configure.sh 文件内容

16

需要在/var/www/html/loganalyzer/ 下创建config.php 文件,并设置其权限为666。

# touch /var/www/html/loganalyzer/config.php

# chmod 666 /var/www/html/loganalyzer/config.php

17

做完上面的操作之后,执行 ReCheck 操作,config.php 文件可写,点击 Next 进入下一步。

18

9.3 第三步,基础配置

21

在User Database Options 中,填入上面设置的参数,然后点击 Next.

9.4 第四步,创建表

22

点击 Next 开始创建表。

9.5 第五步,检查SQL结果

23

9.6 第六步,创建管理用户

24

9.7 第七步,创建第一个系统日志source.

27

9.8 第八步,完成

28

十、测试

LogAnalyzer 首页

点击任何一条记录,查看详情。

30

查看Statistics

31

登录测试

32

在Admin Center 里可以进行一些系统设置。

34

Rsyslog + LogAnalyzer 日志服务器部署完毕。

 



本文转自 dengaosky 51CTO博客,原文链接:http://blog.51cto.com/dengaosky/1864886,如需转载请自行联系原作者

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
存储 缓存 监控
MySQL服务器配置优化:my.cnf参数调优指南
本文深入解析了MySQL核心配置参数及性能优化技巧,涵盖内存结构、调优原则、存储引擎优化、查询性能优化等内容,通过实战案例帮助读者构建高性能MySQL服务器配置,解决常见的性能瓶颈问题。
1510 0
|
SQL 运维 关系型数据库
深入探讨MySQL的二进制日志(binlog)选项
总结而言,对MySQL binlogs深度理解并妥善配置对数据库运维管理至关重要;它不仅关系到系统性能优化也是实现高可靠性架构设计必须考虑因素之一。通过精心规划与周密部署可以使得该机能充分发挥作用而避免潜在风险带来影响。
406 6
|
SQL 监控 关系型数据库
MySQL日志分析:binlog、redolog、undolog三大日志的深度探讨。
数据库管理其实和写小说一样,需要规划,需要修订,也需要有能力回滚。理解这些日志的作用与优化,就像把握写作工具的使用与运用,为我们的数据库保驾护航。
1052 23
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
697 28
|
SQL 运维 关系型数据库
MySQL Binlog 日志查看方法及查看内容解析
本文介绍了 MySQL 的 Binlog(二进制日志)功能及其使用方法。Binlog 记录了数据库的所有数据变更操作,如 INSERT、UPDATE 和 DELETE,对数据恢复、主从复制和审计至关重要。文章详细说明了如何开启 Binlog 功能、查看当前日志文件及内容,并解析了常见的事件类型,包括 Format_desc、Query、Table_map、Write_rows、Update_rows 和 Delete_rows 等,帮助用户掌握数据库变化历史,提升维护和排障能力。
|
安全 关系型数据库 MySQL
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
5274 32
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
728 9
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1572 55