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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
日志服务 SLS,月写入数据量 50GB 1个月
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 一、随着管理的服务器与网络设备的增加,系统日志的采集与收集变得繁琐起来。此时在一台服务器上构建集中日志管理服务器,实现从其他服务器上采集到的系统日志发送到日志管理服务器进行统一管理与存储就变得很有必要了。

一、随着管理的服务器与网络设备的增加,系统日志的采集与收集变得繁琐起来。此时在一台服务器上构建集中日志管理服务器,实现从其他服务器上采集到的系统日志发送到日志管理服务器进行统一管理与存储就变得很有必要了。
日志管理服务器可以解决以下问题:
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 ####下进行以下操作:
取消$ModLoad imudp、$UDPServerRun 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
目录
相关文章
|
2月前
|
数据可视化 关系型数据库 MySQL
ELK实现nginx、mysql、http的日志可视化实验
通过本文的步骤,你可以成功配置ELK(Elasticsearch, Logstash, Kibana)来实现nginx、mysql和http日志的可视化。通过Kibana,你可以直观地查看和分析日志数据,从而更好地监控和管理系统。希望这些步骤能帮助你在实际项目中有效地利用ELK来处理日志数据。
290 90
|
1月前
|
SQL 运维 关系型数据库
MySQL Binlog 日志查看方法及查看内容解析
本文介绍了 MySQL 的 Binlog(二进制日志)功能及其使用方法。Binlog 记录了数据库的所有数据变更操作,如 INSERT、UPDATE 和 DELETE,对数据恢复、主从复制和审计至关重要。文章详细说明了如何开启 Binlog 功能、查看当前日志文件及内容,并解析了常见的事件类型,包括 Format_desc、Query、Table_map、Write_rows、Update_rows 和 Delete_rows 等,帮助用户掌握数据库变化历史,提升维护和排障能力。
|
2月前
|
存储 安全 Linux
CentOS 7.9系统备份:每日定期发送最新备份文件到另一台服务器。
注意,这个解决方案忽略了很多细节,例如错误处理和通知、备份版本控制、循环处理旧的备份文件等等。此外,你也应该尽量保持源服务器和目标服务器之间快速,稳定且安全的网络连接,并且目标服务器应该有足够的空间用于存放每天的备份文件。如果你需要更高级的备份解决方案,可能需要考虑一下使用专门的备份工具或者服务。
79 18
|
3月前
|
存储 SQL 关系型数据库
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log、原理、写入过程;binlog与redolog区别、update语句的执行流程、两阶段提交、主从复制、三种日志的使用场景;查询日志、慢查询日志、错误日志等其他几类日志
230 35
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
|
2月前
|
存储 运维 网络协议
【Syslog】Centos下的syslog服务器配置
通过本文的配置指导,您不仅学会了如何安装和配置 `rsyslog`,还掌握了如何在防火墙中开放必要的端口,并验证服务器的配置是否正确。希望这些知识能够帮助您更好地管理和维护您的Linux系统。
179 15
|
2月前
|
存储 SQL 关系型数据库
mysql的undo log、redo log、bin log、buffer pool
MySQL的undo log、redo log、bin log和buffer pool是确保数据库高效、安全和可靠运行的关键组件。理解这些组件的工作原理和作用,对于优化数据库性能和保障数据安全具有重要意义。通过适当的配置和优化,可以显著提升MySQL的运行效率和数据可靠性。
57 16
|
3月前
|
关系型数据库 MySQL 数据库
图解MySQL【日志】——两阶段提交
两阶段提交是为了解决Redo Log和Binlog日志在事务提交时可能出现的半成功状态,确保两者的一致性。它分为准备阶段和提交阶段,通过协调者和参与者协作完成。准备阶段中,协调者向所有参与者发送准备请求,参与者执行事务并回复是否同意提交;提交阶段中,若所有参与者同意,则协调者发送提交请求,否则发送回滚请求。MySQL通过这种方式保证了分布式事务的一致性,并引入组提交机制减少磁盘I/O次数,提升性能。
109 4
图解MySQL【日志】——两阶段提交
|
3月前
|
存储 缓存 关系型数据库
图解MySQL【日志】——Redo Log
Redo Log(重做日志)是数据库中用于记录数据页修改的物理日志,确保事务的持久性和一致性。其主要作用包括崩溃恢复、提高性能和保证事务一致性。Redo Log 通过先写日志的方式,在内存中缓存修改操作,并在适当时候刷入磁盘,减少随机写入带来的性能损耗。WAL(Write-Ahead Logging)技术的核心思想是先将修改操作记录到日志文件中,再择机写入磁盘,从而实现高效且安全的数据持久化。Redo Log 的持久化过程涉及 Redo Log Buffer 和不同刷盘时机的控制参数(如 `innodb_flush_log_at_trx_commit`),以平衡性能与数据安全性。
103 5
图解MySQL【日志】——Redo Log
|
2月前
|
存储 SQL 关系型数据库
mysql的undo log、redo log、bin log、buffer pool
MySQL的undo log、redo log、bin log和buffer pool是确保数据库高效、安全和可靠运行的关键组件。理解这些组件的工作原理和作用,对于优化数据库性能和保障数据安全具有重要意义。通过适当的配置和优化,可以显著提升MySQL的运行效率和数据可靠性。
48 4
|
3月前
|
SQL 缓存 关系型数据库
MySQL原理简介—7.redo日志的底层原理
本文介绍了MySQL中redo日志和undo日志的主要内容: 1. redo日志的意义:确保事务提交后数据不丢失,通过记录修改操作并在系统宕机后重做日志恢复数据。 2. redo日志文件构成:记录表空间号、数据页号、偏移量及修改内容。 3. redo日志写入机制:redo日志先写入Redo Log Buffer,再批量刷入磁盘文件,减少随机写以提高性能。 4. Redo Log Buffer解析:描述Redo Log Buffer的内存结构及刷盘时机,如事务提交、Buffer过半或后台线程定时刷新。 5. undo日志原理:用于事务回滚,记录插入、删除和更新前的数据状态,确保事务可完整回滚。
195 22

热门文章

最新文章