设为首页 收藏本站
查看: 1620|回复: 0

[经验分享] loganalyzer的安装使用和rsyslog server的创建

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-5-18 14:16:34 | 显示全部楼层 |阅读模式
一、为什么要建rsyslog
    当我们有多台服务器需要记录日志时,分开的日志记录不便于分析,这时就需要用到集中式存储与分析。rsyslog支持把日志存储于mysql中,便于集中式存储与分析。

    我们这里是从最基础的开始做起:先是建立rsyslog与mysql结合,建立rsyslog server,完成集中式存储与分析。然后为了比较分析的方便,加入loganalyzer,让分析比对更方便明了。

    mysql性能是有限的,适用于小级别的日志信息,可能瓶颈:消耗磁盘I/O;
中小级别的日志系统不宜用此方式,用elk还是比较好用的,比如web日志;
大并发量(每秒数千成万)既不适用mysql,也不适用elk,用分布式mangodb、hbase等nosql中才合理,如facebook、google级别。   

二、loganalyzer简介

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

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

三、loganalyzer的安装使用
    (这一部分都是在服务器主机上操作)
    我们这里是先实现rsyslog与mysql的结合,然后再与loganalyzer的结合,所以,一开始没有先构建好lamp。如果一开始就确定要使用loganalyzer,直接先构建lamp,再将rsyslog的日志数据存储指向mysql也是可以的。

(1) 有可用的MySQL服务器;
                [iyunv@blue_c ~]# yum install -y mysql-server
                Installed:
                  mysql-server.x86_64 0:5.1.73-3.el6_5                                          

                Dependency Installed:
                  mysql.x86_64 0:5.1.73-3.el6_5       perl-DBD-MySQL.x86_64 0:4.013-3.el6
        共安装了三个包,如果没法yum安装,就手动下载这三个包安装也可
                [iyunv@blue_c ~]# chkconfig | grep mysqld
                mysqld                 0:off        1:off        2:off        3:off        4:off        5:off        6:off
                # chkconfig mysqld on
                [iyunv@blue_c ~]# chkconfig | grep mysqld
                mysqld                 0:off        1:off        2:on        3:on        4:on        5:on        6:off

(2) 安装rsyslog-mysql程序包;
                [iyunv@blue_c ~]# yum install -y rsyslog-mysql
                ……
                Installed:
                  rsyslog-mysql.x86_64 0:5.8.10-8.el6                                          

                Complete!
                [iyunv@blue_c ~]# rpm -ql  rsyslog-mysql
                /lib64/rsyslog/ommysql.so
                /usr/share/doc/rsyslog-mysql-5.8.10
                /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
                [iyunv@blue_c ~]#
        安装的包,及生成的文件,主要就是生成了ommysql模块和createDB.sql。其中后者在下一步建日志数据库时会用到。

(3) 创建rsyslog依赖的数据库;

        先启动mysqld服务器再创建
                [iyunv@blue_c ~]# service mysqld start
                [iyunv@blue_c ~]# mysql < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
        createDB.sql是一个创建日志数据库的脚本;创建的表名为Syslog、SystemEvents、SystemEventsProperties。
                [iyunv@blue_c ~]# mysql
                wKiom1VVTHGyUtY_AAIUVVll3T0840.jpg
(4) 修改配置文件 /etc/rsyslog.conf
        ① 配置rsyslog启用ommysql模块;
1
2
3
4
# vim /etc/rsyslog.conf
#### MODULES ####
顶格添加如下行
$ModLoad ommysql



                (ommysql这个名字怎么来的,请参阅 # man rsyslogconf中的MODULES部分)
        ② 定义某facility把日志记录至指定的数据库的指定表中;
1
2
#### RULES ####
*.info;mail.none;authpriv.none;cron.none              :ommysql:127.0.0.1,Syslog,monitor,123456



                wKiom1VVTIvzFPcAAALlzuWaZlw571.jpg        
(5) 在mysql中,授权rsyslog用户可以访问使用数据库

1
2
3
4
mysql> GRANT ALL ON Syslog.* TO ‘monitor’@‘127.0.0.1’ IDENTIFIED BY ‘123456’;
mysql> GRANT ALL ON Syslog.* TO ‘monitor’@‘localhost’ IDENTIFIED BY ‘123456’;
mysql> FLUSH PRIVILEGES;
# service rsyslog restart



        这时设置的*.info;mail.none;authpriv.none;cron.none就会记录到mysql数据库中而不是原来的/var/log/messages中了

(6)验证并查看日志:

        (这时就可以开始记录了,yum安装或删除一个程序包就可以有记录了)
                wKioL1VVTiCT8D7dAAOlssUKb78148.jpg        
1
2
mysql> use Syslog
mysql>  SELECT * FROM SystemEvents\G;



                wKiom1VVTL3zuz9OAAJvBli0G1E322.jpg

(7) 可选:使用loganalyzer (WebGUI)来展示日志信息;
        依赖:lamp组件;
1
2
3
4
5
6
7
[iyunv@blue_c ~]# yum install -y httpd php php-mysql php-gd
……
Installed:
  httpd.x86_64 0:2.2.15-39.el6.centos   php.x86_64 0:5.3.3-38.el6   php-gd.x86_64 0:5.3.3-38.el6   php-mysql.x86_64 0:5.3.3-38.el6  
Dependency Installed:
  libXpm.x86_64 0:3.5.10-2.el6                                      php-pdo.x86_64 0:5.3.3-38.el6                                    
Complete!



        下载loganalyzer,并展开至网页DocumentRoot下(这里以loganalyzer-3.6.5为例)
1
2
3
4
5
6
7
8
9
10
11
[iyunv@blue_c ~]# lftp 172.16.0.1:/pub/Sources/sources/loganalyzer>
lftp 172.16.0.1:/pub/Sources/sources/loganalyzer>  get loganalyzer-3.6.5.tar.gz
[iyunv@blue_c ~]# tar xf loganalyzer-3.6.5.tar.gz -C /var/www/html/
[iyunv@blue_c html]# cp -r loganalyzer-3.6.5/src /var/www/html/loganalyzer
[iyunv@blue_c html]# cp loganalyzer-3.6.5/contrib/* /var/www/html/loganalyzer
[iyunv@blue_c html]# cd /var/www/html/loganalyzer
[iyunv@blue_c loganalyzer]# chmod +x configure.sh secure.sh
[iyunv@blue_c loganalyzer]# ./configure.sh
[iyunv@blue_c loganalyzer]# ./secure.sh
[iyunv@blue_c loganalyzer]# chmod 666 config.php
[iyunv@blue_c loganalyzer]# chown -R apache.apache ./*



        访问:http://SERVER_IP/loganalyzer/install.php
wKiom1VVTOqxaGyTAAII5LMBCbQ087.jpg
wKioL1VVToDQ-z5yAAK8qAgMnt4253.jpg
wKiom1VVTQjjIOKWAAGLpeEjtkU133.jpg
wKioL1VVToTzIAlUAAGQ-zDTGpc988.jpg
wKiom1VVTQ3CO5dnAALdyTGs6pQ556.jpg
wKioL1VVTonBx80hAAHEjT_aNhs289.jpg



四、构建rsyslog server

(一)在日志服务器上的操作:


    1、日志服务器按照上面配置好。
    2、编辑配置文件,打开日志服务器的监听端口:
1
2
3
4
5
6
7
8
[iyunv@blue_c conf]# ss -unl | grep 514
[iyunv@blue_c conf]# vim /etc/rsyslog.conf
[iyunv@blue_c conf]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]
[iyunv@blue_c conf]# ss -unl | grep 514
UNCONN     0      0                         *:514                      *:*     
UNCONN     0      0                        :::514                     :::*





   wKioL1VVTuCAT1hKAAJKdH-anos613.jpg


(二)在日志记录需求的客户端的操作:

① 需要先在客户端主机上设置好配置文件,并重启日志服务。

     首先确定哪些日志需要发往远程主机记录,然后将需要有日志服务器代为记录的 target填写为服务器地址:

1
2
[iyunv@holding ~]# vim /etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none    @172.16.20.97



        wKioL1VVTyqANEIBAAFhk4FrFBU543.jpg
1
[iyunv@holding ~]# service rsyslog restart



② 配置完毕,可以测试使用
在客户端安装一个程序包
1
2
3
4
5
[iyunv@holding ~]# yum install -y zsh
……
Installed:
  zsh.x86_64 0:4.3.10-7.el6                                                                                                           
Complete!



查看日志服务器的loganalyzer:
         wKiom1VVTcOiVN-rAAKhe9ZltqQ852.jpg


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-68199-1-1.html 上篇帖子: rsyslog服务器实现通过loganalyzer管理 下篇帖子: 基于mariadb的日志服务器及用loganalyzer实现日志的管理分析 server
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表