CentOS6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器一、简介LogAnalyzer是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。LogAnalyzer获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。LogAnalyzer采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。二、系统环境RsyslogServerOS:CentOS6.5RsyslogServerIP:192.168.1.107Rsyslog版本:rsyslog-5.8.10-8.el6.i686LogAnalyzer版本:LogAnalyzer3.6.5(v3-stable)LAMP版本:httpd-2.2.15-30.el6.centos.i686+mysql-5.1.73-3.el6_5.i686+php-5.3.3-27.el6_5.i686防火墙已关闭/iptables:Firewallisnotrunning.SELINUX=disabledRsyslogClientOS:RHEL6.4RsyslogClientIP:192.168.1.108三、安装并设置LAMP环境3.1安装LAMP环境#yum-yinstallhttpdmysql*php*3.2启动服务并加入开机启动启动Apache#/etc/init.d/httpdstart#chkconfighttpdon启动数据库#/etc/init.d/mysqldstart#chkconfigmysqldon3.3设置MySQLroot密码#mysqladmin-urootpassword'abc123'3.4测试php运行环境#cd/var/[root@TShtml]#catindex.phpEOF?phpphpinfo();?EOF打开浏览器访问:环境配置完毕。四、检查并安装服务器端软件4.1检查是否安装了rsyslog软件#rpm-qa|greprsyslog//默认系统都安装了该软件4.2安装rsyslog连接MySQL数据库的模块#yuminstallrsyslog-mysql–yrsyslog-mysql为rsyslog将日志传送到MySQL数据库的一个模块,这里必须安装。五、配置服务器端5.1导入rsyslog-mysql数据库文件#cd/usr/share/doc/rsyslog-mysql-5.8.10/#mysql-uroot-pabc123createDB.sql查看做了哪些操作#mysql-uroot–pmysqlshowdatabases;mysqlshowtables;导入数据库操作创建了Syslog库并在该库中创建了两张空表SystemEvents和SystemEventsProperties。5.2创建rsyslog用户在mysql下的相关权限#mysql-uroot–pmysqlgrantallonSyslog.*torsyslog@localhostidentifiedby'123456';mysqlflushprivileges;mysqlexit5.3配置服务端支持rsyslog-mysql模块,并开启UDP服务端口获取网内其他LINUX系统日志#vi/etc/rsyslog.conf$ModLoadommysql*.*:ommysql:localhost,Syslog,rsyslog,123456在####MODULES####下添加上面两行。说明:localhost表示本地主机,Syslog为数据库名,rsyslog为数据库的用户,123456为该用户密码。5.4开启相关日志模块#vi/etc/rsyslog.conf$ModLoadimmark#immark是模块名,支持日志标记$ModLoadimudp#imupd是模块名,支持udp协议$UDPServerRun514#允许514端口接收使用UDP和TCP协议转发过来的日志5.5重启rsyslog服务#/etc/init.d/rsyslogrestart六、配置客户端6.1检查rsyslog是否安装#rpm-qa|greprsyslog6.2配置rsyslog客户端发送本地日志到服务端#vi/etc/rsyslog.conf*.*@192.168.1.107行尾新增上面这行内容,即客户端将本地日志发送到服务器。6.3重启rsyslog服务#/etc/init.d/rsyslogrestart6.4编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中。#vi/etc/bashrc在文件尾部增加一行exportPROMPT_COMMAND='{msg=$(history1|{readxy;echo$y;});logger[euid=$(whoami)]:$(whoami):[`pwd`]$msg;}'设置其生效#source/etc/bashrc客户端配置完毕。七、测试RsyslogServer是否可以正常接受Client端日志Client端测试:Server端侦测:cd/var/log目录下面说明接收正常,包括你重启机器的一些Log都可以查看到。八、安装LogAnalyzer#wget*/var/九、在浏览器安装向导中安装LogAnalyzer9.1打开浏览器访问:提示没有配置文件,点击here利用向导生成。9.2第一步,测试系统环境点击“Next”,进入第二步。提示错误:缺少config.php文件,并且权限要设置为666,可以使用contrib目录下的configure.sh脚本生成。查看configure.sh文件内容需要在/var/下创建config.php文件,并设置其权限为666。#touch/var/做完上面的操作之后,执行ReCheck操作,config.php文件可写,点击Next进入下一步。9.3第三步,基础配置在UserDatabaseOptions中,填入上面设置的参数,然后点击Next.9.4第四步,创建表点击Next开始创建表。9.5第五步,检查SQL结果9.6第六步,创建管理用户9.7第七步,创建第一个系统日志source.9.8第八步,完成十、测试LogAnalyzer首页点击任何一条记录,查看详情。查看Statistics登录测试在AdminCenter里可以进行一些系统设置。Rsyslog+LogAnalyzer日志服务器部署完毕。