CentOS7.3下部署Rsyslog+LogAnalyzer+MySQL中央日志服务器

简介: 一、简介1、LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。

img_b89fff8e1e0234e5632a857d3b9a4f2f.png

一、简介

1、LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。
2、LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。
3、LogAnalyzer 采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。

二、架构图

所有主机将日志都交给日志日志服务器管理,日志服务器配置将所有存储在MySQL数据库中。
搭建Loganalyzer将日志服务器中的所有日志进行web展现于管理。
img_1c6c7659f3fb266a057f0202ae42aa26.png

三、服务器环境

作用 系统 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
    img_ddd2f249d63ebc5fd1faef8cf82e865d.png
    2、点击下一步
    img_ddd2f249d63ebc5fd1faef8cf82e865d.png
    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

    img_f9dc622a9ac8434b65bad66d3769e25b.png
    4、配置数据库文件
    在第三部创建完配置文件之后,就一直点击next。直到如图所示
    这里会填写数据库相关的信息,一定要注意大小写,一定要手动填写表名,因为默认的是小写。
    img_1726f84e441d9e906b779b3533591829.png
    5、点击安装
    一切都配置完毕,最后点击安装。如果不能安装成功可能是之前的数据库配置错误。只要将config.php删除然后重新安装即可。
    img_63e88aef65e6b18cc9e5310b00e1d7c5.png
    6、测试
    进入页面之后可以看到一些日志,那就说明所有的部署工作完成!
    img_22c5219acfbb165b3b3d15bdc72cabb3.png
    7、安全加固
    记得前面创建了config.php文件吗?这个文件保存了数据库的账号密码ip等等。在安装前权限为666,但是在安装后就不需要读权限了所将其其改为644。

    chmod 644 /var/www/html/loganalyzer/config.php

五、安装中文语言包

LogAnalyzer默认为中文,个人也是推荐使用英文。这里也提供中文语言包。http://download.csdn.net/download/qq_36120510/10015028
解压后将整个目录方至/var/www/html/loganalyzer/lang目录下。然后再次访问页面在右上角选择中文即可。

相关实践学习
每个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服务器配置,解决常见的性能瓶颈问题。
1483 0
|
12月前
|
SQL 运维 关系型数据库
深入探讨MySQL的二进制日志(binlog)选项
总结而言,对MySQL binlogs深度理解并妥善配置对数据库运维管理至关重要;它不仅关系到系统性能优化也是实现高可靠性架构设计必须考虑因素之一。通过精心规划与周密部署可以使得该机能充分发挥作用而避免潜在风险带来影响。
388 6
|
安全 Linux Shell
使用SCP命令在CentOS 7上向目标服务器传输文件
以上步骤是在CentOS 7系统上使用SCP命令进行文件传输的基础,操作简洁,易于理解。务必在执行命令前确认好各项参数,尤其是目录路径和文件名,以避免不必要的传输错误。
1155 17
|
SQL 监控 关系型数据库
MySQL日志分析:binlog、redolog、undolog三大日志的深度探讨。
数据库管理其实和写小说一样,需要规划,需要修订,也需要有能力回滚。理解这些日志的作用与优化,就像把握写作工具的使用与运用,为我们的数据库保驾护航。
1022 23
|
Ubuntu 安全 小程序
服务器版本的CentOS和Ubuntu哪个更适合你?
但是以上的比较并不说明Ubuntu是不稳定的或者是不安全的,只是以上比较过程中,在稳定性方面Ubuntu稍微逊色了一点。由于Ubuntu在个人桌面电脑的使用率远远高于CentOS,用Ubuntu搭建服务器,如果遇到什么问题,寻找解决方案相对比较容易,这让Ubuntu在选择方面更优于CentOS。如果你是一个初学者,那么毫无疑问Ubuntu是更适合的选择。如果你正在经营自己的公司,在这两者之间,CentOS会更好一些。
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
675 28
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
591 0
|
Kubernetes Ubuntu Linux
阿里云服务器使用centos还是ubuntu?
在选择阿里云服务器操作系统时,CentOS和Ubuntu各有优势。CentOS以企业级稳定性著称,适合数据库、ERP等长期稳定需求;而Ubuntu开发者友好,支持最新硬件与功能,更适合开发/测试环境及云计算场景。两者在阿里云上均有官方镜像支持,性能差异可忽略。无特殊需求时推荐Ubuntu 22.04 LTS,若需RHEL生态则选AlmaLinux。根据实际需求、团队技术栈及场景灵活决策,阿里云还支持更换系统盘降低试错成本。
|
数据采集 SQL 弹性计算
使用云服务器ECS部署了自己的第一个爬虫
云服务器部署爬虫爬取网站最新通告并推送
使用云服务器ECS部署了自己的第一个爬虫