Centos7.4部署rsyslog+loganalyzer+mysql日志管理服务器

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 一、随着管理的服务器与网络设备的增加,系统日志的采集与收集变得繁琐起来。此时在一台服务器上构建集中日志管理服务器,实现从其他服务器上采集到的系统日志发送到日志管理服务器进行统一管理与存储就变得很有必要了。

一、随着管理的服务器与网络设备的增加,系统日志的采集与收集变得繁琐起来。此时在一台服务器上构建集中日志管理服务器,实现从其他服务器上采集到的系统日志发送到日志管理服务器进行统一管理与存储就变得很有必要了。
日志管理服务器可以解决以下问题:
1、不再需要逐台服务器去查询系统日志文件
2、将日常的系统信息存储在mysql数据中,方便进行查询、统计、审计过滤等操作
3、通过其他软件可以实现扩平台日志收集,如使用evtsys采集window日志发送到linux日志服务器上
4、在linux下rsyslog配置比较简单,维护较为容易。
5、rsyslog+loganalyzer可以实现前端图形化查询等操作.

二、rsyslog的安装与配置
使用yum安装相关程序包:
1、安装LAMP:yum install mysql-server,mysql-devel, httpd,php-mysql
php ,php-gd, php-xml
2、安装rsyslog及驱动 libcurl-devel ,net-snmp-devel ,rsyslog, rsyslog-mysql
3、阿里云服务器上自带的yum仓库源上默认没有mysql-server,网上下载mysql57-community-release-el7-11.noarch.rpm并使用rpm安装:rpm -ivh mysql57-community-release-el7-11.noarch.rpm
三、启动mysql服务:
1、初次启动时会在/var/log/mysqld.log随机生成root密码,使用grep 'password' '/var/log/mysqld.log'查看:
Z79P2_ZU_5NY_2_ABZ_B
2、使用刚才找到的密码登录并修改root密码:
mysqladmin -u root password 'yourpassword'.
假设将root密码设为123456:
set password for root@'localhost'=password('12345678');
将会提示错误信息:
2
原因为mysql默认参数validate_password_policy=medium,将这个值设为0,set global validate_password_policy=0;修改就能使用较为简单的密码。
3、设置mysql默认字符集为UTF-8:编辑/etc/my.cnf文件,在[mysqld]下添加一行:character-set-server = utf8
skip-name-resolve=on ###禁止域名解析
然后重启mysql服务:systemctl restart mysqld
4、使用刚才安装的rsyslog-mysql程序包文档目录下的sql文件创建rsyslog数据库:
使用rpm -ql rsyslog-mysql 查询并找到该sql文件
3
使用该文件创建数据库 mysql -u root -p < mysql-createDB.sql
创建的数据库名为:syslog
5、mysql中创建数据库Syslog的使用用户syslog并授权:
grant all on Syslog.* to 'syslog'@'127.0.0.1';
flush privileges;

6、修改rsyslog配置文件:
vim /etc/sysconfig/rsyslog
添加两行:
SYSLOGD_OPTIONS="-c 2 -r -x -m 180"
KLOGD_OPTIONS="-x"
4

编辑rsyslog主配置文件/etc/rsyslog.conf:
在#### MODULES ####下进行以下操作:
取消ModLoadimudpUDPServerRun 514 这2行的注释表示通过UPD协议的514端口接收日志文件。
5

添加$ModLoad ommysql 一行 #######配置服务端支持rsyslog-mysql模块
添加. :ommysql:127.0.0.1,Syslog,rsyslog,123456789
6
重启rsyslog:
systemctl restart rsyslog

四、loganalyzer的配置
1、在apache的默认documentRoot目录下创建loganalyzer目录:
mkdir -p /var/www/html/loganalyzer
创建loganalyzer日志目录:
mkdir -p /var/log/httpd/loganalyzer
2、官网上下载Loganalyzer解压到/usr/loca/src下:
wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.6.tar.gz
cd /usr/local/src
tar -zxvf loganalyzer-4.1.6.tar.gz
在解压后的loganalyzer-4.1.6目录内复制src/与contrib/下的所有文件到/var/www/html/loganalyzer目录下:
cp -r src/* /var/www/html/loganalyzer
cp -r contrib/* /var/www/html/loganalyzer
7

3、在/var/www/html/loganalyzer下创建config.php并设置权限:
touch config.php
chmod 666 config.php

4.在/etc/httpd/conf/httpd.conf文件为找到并修改配置为:
Listen 8080
DocumentRoot "/var/www/html/loganalyzer"
ErrorLog /var/log/httpd/loganalyzer/error.log
CustomLog /var/log/httpd/loganalyzer/access_log combined
重启httpd: systemctl restart httpd

5、浏览器上输入日志服务器ip+端口号:
8
点击next 到step3:
10
配置后数据库用户及密码,点击next。

step6:创建loganalyzer登录用户:
11

step7:
13
点击next并登录即可完成初始化配置:

14

6、可以在网上搜索下载loganalyzer3.6.5 中文语言包并将解压后的3个文件放在/var/www/html/loganalyzer/lang下并重启rsyslog即可使用loganalyzer中文界面:
16

7.修改客户端服务器/etc/rsyslog.conf文件实现将日志传输至构建好的日志服务器:
17
在#### RULES ####中添加配置:
@表示使用upd协议传输文件,划线部分为搭建的集中日志服务器ip.
也可以使用. @ip 表示所有日志文件都传输至日志服务器

8、刷新loganalyzer页面就可看到客户端服务器的日志信息也被记录到数据库中,构建完成.

参考博客:https://blog.csdn.net/cmzsteven/article/details/50413837

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
3
分享
相关文章
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
【YashanDB知识库】YMP从mysql迁移到崖山,报错:服务器错误
如何解决 MySQL 数据库服务器 CPU 飙升的情况
大家好,我是 V 哥。当 MySQL 数据库服务器 CPU 飙升时,如何快速定位和解决问题至关重要。本文整理了一套实用的排查和优化套路,包括使用系统监控工具、分析慢查询日志、优化 SQL 查询、调整 MySQL 配置参数、优化数据库架构及检查硬件资源等步骤。通过一个电商业务系统的案例,详细展示了从问题发现到解决的全过程,帮助你有效降低 CPU 使用率,提升系统性能。关注 V 哥,掌握更多技术干货。
182 0
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
1435 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
110 9
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log、原理、写入过程;binlog与redolog区别、update语句的执行流程、两阶段提交、主从复制、三种日志的使用场景;查询日志、慢查询日志、错误日志等其他几类日志
142 35
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
Tomcat log日志解析
理解和解析Tomcat日志文件对于诊断和解决Web应用中的问题至关重要。通过分析 `catalina.out`、`localhost.log`、`localhost_access_log.*.txt`、`manager.log`和 `host-manager.log`等日志文件,可以快速定位和解决问题,确保Tomcat服务器的稳定运行。掌握这些日志解析技巧,可以显著提高运维和开发效率。
78 13
图解MySQL【日志】——Redo Log
Redo Log(重做日志)是数据库中用于记录数据页修改的物理日志,确保事务的持久性和一致性。其主要作用包括崩溃恢复、提高性能和保证事务一致性。Redo Log 通过先写日志的方式,在内存中缓存修改操作,并在适当时候刷入磁盘,减少随机写入带来的性能损耗。WAL(Write-Ahead Logging)技术的核心思想是先将修改操作记录到日志文件中,再择机写入磁盘,从而实现高效且安全的数据持久化。Redo Log 的持久化过程涉及 Redo Log Buffer 和不同刷盘时机的控制参数(如 `innodb_flush_log_at_trx_commit`),以平衡性能与数据安全性。
46 5
图解MySQL【日志】——Redo Log
|
6月前
|
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
597 3

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等