码迷,mamicode.com
首页 > 数据库 > 详细

rsyslog 存储到 mysql

时间:2018-06-17 17:50:56      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:kth   admin   httpd服务   出现   blank   rest   theme   pre   数据   

输出Host1/2的系统日志, 记录到mysql服务器数据库中, 并发布loganalyzer

结构关系如下图:

技术分享图片

 

准备工作:

  1. VMware

  2. CentOS 7 最小系统安装镜像

  3. loganalyzer源码包 下载

  4. 安装三台主机, 拷贝loganalyzer到MariaDB主机

IP地址与主机对应关系表:

MariaDB主机 192.168.142.128/24
HOST1 192.168.142.135/24
HOST2 192.168.142.141/24

 

 

 

MariaDB服务器操作:

  1. yum -y install mariadb mariadb-server httpd php php-mysql php-gd
    #安装mysql服务端, httpd服务端, php --> php-gd 是 loganalyzer 需要使用的
    systemctl start mariadb
  2. 登陆mysql 
    1. mysql -uroot -p  登陆;
    2. GRANT ALL ON Syslog.* TO sysloguser@192.168.142.% INDENTIFIED BY 123456; FLUSH PRIVILEGES;

      建立 rsyslog 数据库账号并授权;

      • 注意: 此处Syslog数据库并不需要我们自己建立, 在HOST1/2上安装rsyslog-mysql后, 会有一个 sql 脚本, 该数据库及表由 此脚本 建立, 后文有提到

  3. 编辑mysql配置文件
  4. vim /etc/my.cnf
    
    ###添加如下项目
    
    skip_name_resolve = on
    innodb_file_per_table = on
    
    ####保存退出, 重启服务
    systemctl restart mariadb

     

HOST1/2 操作:

  1. yum -y install rsyslog-mysql mariadb
    # 安装mysql模块, 安装mysql客户端
    mysql -usysloguser -p123456 -h192.168.142.128
    # 测试是否可以连接上 --> 如果连接失败, 在mariadb服务器端重做授权; 检查服务器的防火墙和selinux是否关闭

     

  2. 查看rsyslog-mysql 这个包相关文件等:

    [root@host1 ~]# rpm -ql rsyslog-mysql
    /usr/lib64/rsyslog/ommysql.so --> rsyslog模块
    /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql --> 此sql脚本即为上文提到的, rsyslog-mysql这个包提供的 建库脚本

     

  3. 通过输入重定向的方式, 安装上述sql脚本: 
    mysql -usysloguser -h192.168.142.128 -p < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

    检查库建立是否成功:技术分享图片

     

  4. 编辑 /etc/rsyslog.conf 配置文件
    vim /etc/rsyslog.conf
        ####MODULES####
        $ModLoad ommysql      --> 加载ommysql模块以支持功能
    
        ####RULES####
        *.info;mail.none;       :ommysql:192.168.142.128,Syslog,sysloguser,123456

     

  5. 重启rsyslog服务 systemctl restart rsyslog 

 回到MariaDB服务器, 部署 loganalyzer 

  • mysql -uroot -p -->连接查看是否记录成功
MariaDB [(none)]> use Syslog
MariaDB [Syslog]> SELECT * FROM SystemEvents\G;

技术分享图片

技术分享图片

 

  1. 测试httpd, php, php-mysql 是否配置成功 --> 参见上一篇
    • 这里碰到一个问题:sysloguser 1045拒绝登陆;root可以登陆; 解决办法: 删除所有空密码用户;
      -21-[root@vm]16:07 ~ # mysql -usysloguser -h192.168.142.128 -p
      Enter password: 
      ERROR 1045 (28000): Access denied for user sysloguser@vm (using password: YES)

      技术分享图片

       

  2. 部署loganalyzer
    1. 下载资源包, 解压技术分享图片

       

    2. 我们需要 ./contrib 下的两个脚本, 以及./src 下的全部文件
      -44-[root@vm]16:18 ~/loganalyzer-4.1.6 # ls
      ChangeLog  contrib  COPYING  doc  INSTALL  src
      -45-[root@vm]16:18 ~/loganalyzer-4.1.6 # cp -r ./src /var/www/html/log
      -46-[root@vm]16:20 ~/loganalyzer-4.1.6 # cd /var/www/html/log
      -47-[root@vm]16:20 /var/www/html/log # ls
      admin               chartgenerator.php  cron         export.php   include      js         reportgenerator.php  statistics.php  userchange.php
      asktheoracle.php    classes             css          favicon.ico  index.php    lang       reports.php          templates
      BitstreamVeraFonts  convert.php         details.php  images       install.php  login.php  search.php           themes
      -48-[root@vm]16:20 /var/www/html/log # cd -
      /root/loganalyzer-4.1.6
      -49-[root@vm]16:20 ~/loganalyzer-4.1.6 # ls
      ChangeLog  contrib  COPYING  doc  INSTALL  src
      -50-[root@vm]16:20 ~/loganalyzer-4.1.6 # cp ./contrib/*.sh /var/www/html/log
      -51-[root@vm]16:21 ~/loganalyzer-4.1.6 # cd -
      /var/www/html/log
      -52-[root@vm]16:21 /var/www/html/log # ls
      admin               chartgenerator.php  convert.php  details.php  images     install.php  login.php            search.php      templates
      asktheoracle.php    classes             cron         export.php   include    js           reportgenerator.php  secure.sh       themes
      BitstreamVeraFonts  configure.sh        css          favicon.ico  index.php  lang         reports.php          statistics.php  userchange.php
      -53-[root@vm]16:21 /var/www/html/log # chmod +x *.sh
      -54-[root@vm]16:21 /var/www/html/log # ./configure.sh 
      -55-[root@vm]16:21 /var/www/html/log # ./secure.sh 
      -56-[root@vm]16:21 /var/www/html/log # chmod -x *.sh
      -57-[root@vm]16:21 /var/www/html/log # touch config.php;chmod 666 config.php

       

    3. 直接访问192.168.142.128/log 
      • 技术分享图片

         

    4. 直接点击Click here   开始安装
    5. 在第三步(Step 3),可以勾选, 并使用mysql做 loganalyzer 的用户数据库; 我们这里做测试就直接跳过了技术分享图片

       

    6. Step 7技术分享图片

      • 请务必使用chrome, 点击MYSQL Native后, IE/ EDGE/ 360浏览器不会弹出下面的数据库选项框;

    7. 搞定技术分享图片

       

 

 


 

总结: 

  1. 使用纯洁的虚拟机安装; 这次偷懒, 上次用完httpd实验后接着使用, 出现了mysql报错的问题;

  2. 360浏览器垃圾, 浪费我半个小时;

  3. 不要怕玩坏了, 大不了重装, 反正ks文件做好了, 装系统又不用咱动手

 

rsyslog 存储到 mysql

标签:kth   admin   httpd服务   出现   blank   rest   theme   pre   数据   

原文地址:https://www.cnblogs.com/gettolive/p/9193228.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!