版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、搭建rsyslog日志服务器和loganalyzer日志分析工具一、rsyslog的介绍2rsyslog日志服务器的优势:2rsyslog的新功能:2rsyslog的软件包2rsyslog配置文件(/etc/rsyslog.conf)的详解3二、logrotate日志滚动的介绍5logrotate的软件包6logrotate的配置文件(/etc/logrotate.conf)详解6三、rsyslog的存储途径7a)日志存储在指定的文件中7b)日志存储在指定的rsyslog服务器中8rsyslog客户端的配置:9rsyslog服务器的配置:9rsyslog+Mysql服务器端的配置:11rsys
2、log客户端的配置:14验证客户端的日志文件存放位置:15四、基于web的loganalyzer日志分析工具的搭建16rsyslog服务器的配置步骤:161、安装httpd,php,php-gd,php-mysql162、下载loganalyzer源码包173、执行脚本174、修改httpd的配置文件,新建一个虚拟主机175、重启服务,创建loganalyzer的数据库,并授权186、安装loganalyzer18一、rsyslog的介绍Linux的日志记录了用户在系统上一切操作,看日志去分析系统的状态是运维人员必须掌握的基本功。rsyslog日志服务器的优势:1、日志统一,集中式管理2、日志
3、实时传送到一个更加安全的远端服务器上,真正记录用户行为,使日志的2次更改可能性大大降低,从而能够对日志进行真实回放,便于问题追踪。rsyslog的新功能:rsyslog是一个加强版的syslog,具有各种各样的新功能,典型的有:1、直接将日志写入到数据库。2、日志队列(内存队列和磁盘队列)。3、灵活的模板机制,可以得到多种输出格式。4、插件式结构,多种多样的输入、输出模块。5、可以把日志存放在Mysql ,PostgreSQL,Oracle等数据库中rsyslog的软件包rootjie1 # rpm -qa | grep rsyslogrsyslog-5.8.10-6.el6.x86_64 #
4、软件包系统默认已经安装rootjie1 # rpm -ql rsyslog #只显示了部分信息/etc/logrotate.d/syslog/etc/rsyslog.conf #rsyslog的配置文件/etc/sysconfig/rsyslog/lib64/rsyslog/imfile.so/lib64/rsyslog/imklog.so #rsyslog的模块,i开头的是输入模块/lib64/rsyslog/immark.so/lib64/rsyslog/impstats.so/lib64/rsyslog/imptcp.so/lib64/rsyslog/imtcp.so/lib64/rsy
5、slog/imudp.so/lib64/rsyslog/imuxsock.so/lib64/rsyslog/lmnet.so/lib64/rsyslog/lmnetstrms.so/lib64/rsyslog/lmnsd_ptcp.so/lib64/rsyslog/lmregexp.so/lib64/rsyslog/lmstrmsrv.so/lib64/rsyslog/lmtcpclt.so/lib64/rsyslog/lmtcpsrv.so/lib64/rsyslog/lmzlibw.so/lib64/rsyslog/ommail.so #o开头的模块是输出模块/lib64/rsyslog/
6、omprog.so/lib64/rsyslog/omruleset.so/lib64/rsyslog/omtesting.so/lib64/rsyslog/omuxsock.so/lib64/rsyslog/pmlastmsg.sorsyslog配置文件(/etc/rsyslog.conf)的详解# MODULES 日志的模块#$ModLoad imuxsock #imuxsock是模块名,支持本地系统日志的模块$ModLoad imklog #imklog是模块名, 支持内核日志的模块#$ModLoad immark #immark是模块名,支持日志标记#$ModLoad imudp #im
7、upd是模块名,支持udp协议#$UDPServerRun 514 #允许514端口接收使用UDP和TCP协议转发过来的日志#$ModLoad imtcp #imtcp是模块名,支持tcp协议#$InputTCPServerRun 514# GLOBAL DIRECTIVES #定义全局日志格式的指令$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat #定义日志格式默认模板$IncludeConfig /etc/rsyslog.d/*.conf #载入rsyslog.d文件中所有以conf结尾的文件# RULES #*.info;m
8、ail.none;authpriv.none;cron.none /var/log/messages#记录所有日志类型的info级别以及大于info级别的信息到/var/log/messages,但是mail邮件信息,authpriv验证方面的信息和cron时间#任务相关的信息除外authpriv.* /var/log/secure#authpriv验证相关的所有信息存放在/var/log/securemail.* -/var/log/maillog#邮件的所有信息存放在/var/log/maillog; 这里有一个-符号, 表示是使用异步的方式记录, 因为日志一般会比较大/cron*.eme
9、rg * (*表示所有用户)#记录所有的大于等于emerg级别信息, 以wall方式发送给每个登录到系统的人uucp,news.crit /var/log/spooler#记录uucp,news.crit等存放在/var/log/spoolerlocal7.* /var/log/boot.log#本地服务器的启动的所有日志存放在/var/log/boot.log中#rsyslog.conf中日志规则的定义的格式facitlity.priority Target#facility: 日志设备(可以理解为日志类型):=auth #pam产生的日志,认证日志authpriv #ssh,ftp等登录信
10、息的验证信息,认证授权认证cron #时间任务相关kern #内核lpr #打印mail #邮件mark(syslog) #rsyslog服务内部的信息,时间标识news #新闻组user #用户程序产生的相关信息uucp #unix to unix copy, unix主机之间相关的通讯local 17 #自定义的日志设备=#priority: 级别日志级别:=debug #有调式信息的,日志信息最多info #一般信息的日志,最常用notice #最具有重要性的普通条件的信息warning, warn #警告级别err, error #错误级别,阻止某个功能或者模块不能正常工作的信息cri
11、t #严重级别,阻止整个系统或者整个软件不能正常工作的信息alert #需要立刻修改的信息emerg, panic #内核崩溃等严重信息#从上到下,级别从低到高,记录的信息越来越少,如果设置的日志内性为err,则日志不会记录比err级别低的日志,只会记录比err更高级别的日志,也包括err本身的日志。=Target: #文件, 如/var/log/messages #用户, root,*(表示所有用户) #日志服务器, #管道 | COMMAND二、logrotate日志滚动的介绍所有的日志文件都会随着时间的推移和访问次数的增加而迅速增长,因此必须对日志文件进行定期清理以
12、免造成磁盘空间的不必要的浪费,同时也加快了管理员查看日志所用的时间。因而logrotate就非常有存在的必要了,Redhat系统中已经默然安装logrotate且利用logrotate设置了相关对rsyslog日志迅速增长的设置。logrotate的执行由crond服务实现。在/etc/cron.daily目录中,有个文logrotate,它实际上是个shell script,用来启动logrotate。logrotate程序每天由cron在指定的时间(/etc/crontab)启动。logrotate的软件包rootjie1 # rpm -qa | grep logrotatelogrota
13、te-3.7.8-16.el6.x86_64 #日志回滚的软件包默认已经安装rootjie1 # rpm -ql logrotate/etc/cron.daily/logrotate/etc/logrotate.conf #日志回滚的配置文件/etc/logrotate.d #日志回滚的子目录/usr/sbin/logrotate/usr/share/doc/logrotate-3.7.8/usr/share/doc/logrotate-3.7.8/CHANGES/usr/share/doc/logrotate-3.7.8/COPYING/usr/share/man/man5/logrotat
14、e.conf.5.gz/usr/share/man/man8/logrotate.8.gz/var/lib/logrotate.statuslogrotate的配置文件(/etc/logrotate.conf)详解rootjie1 # sed -e '/#/d' -e '/$/d' /etc/logrotate.confweekly #每周清理一次日志文件rotate 4 #保存四个轮换日志create #清除旧日志的同时,创建新的空日志文件dateext #使用日期为后缀的回滚文件 #可以去/var/log目录下看看include /etc/logrotate
15、.d #包含/etc/logrotate.d目录下的所有配置文件/var/log/wtmp #对/var/log/wtmp这个日志文件按照下面的设定日志回滚 monthly #每月轮转一次 create 0664 root utmp #设置wtmp这个日志文件的权限,属主,属组 minsize 1M #日志文件必须大于1M才会去轮换(回滚) rotate 1 #保存一个轮换日志/var/log/btmp missingok #如果文件丢失不报错 monthly create 0600 root utmp rotate 1rootjie1 # cat /etc/logrotate.d/syslo
16、g/var/log/cron #这些文件是rsyslog.conf文件中全局配置定义中指定的Target的路径/var/log/maillog/var/log/messages/var/log/secure/var/log/spooler sharedscripts postrotate # 轮换之后重启rsyslog服务 /bin/kill -HUP cat /var/run/syslogd.pid 2> /dev/null 2> /dev/null | true endscript三、rsyslog的存储途径a)日志存储在指定的文件中rootjie1 # vim /etc/rs
17、yslog.conf#vim /etc/rsyslog.conf#=注释掉两行,然后添加一行#*.info;mail.none;authpriv.none;cron.none /var/log/messages*.* /systemlog/jie.log#authpriv.* /var/log/secure#*.info;mail.none;authpriv.none;cron.none /var/log/messages=#这行表示,所有facitlity(设施)的info消息记录,及info级别以上的记录都会保存到 /var/log/messages文件中,除了邮件的所有信息,认证授权的所
18、有信息,计划任务的所有信息。#authpriv.* /var/log/secure=#这行表示认证授权的所有信息,都会保存在/var/log/secure文件中*.* /systemlog/jie.log=#添加的这行表示所有设施的所有信息都会保存在 /systemlog/jie.log文件中,而且此文件不必自己创建,启动rsyslog服务时系统会自动创建,而且权限都是600b)日志存储在指定的rsyslog服务器中rsyslog客户端的配置:rootjie3 # vim /etc/rsyslog.conf#/etc/rsyslog.conf#*.info;mail.none;authpriv
19、.none;cron.none /var/log/messages*.* #添加此行,注释掉其他两行#authpriv.* /var/log/secure#rootjie3 # service rsyslog restartShutting down system logger: OK Starting system logger: OK rsyslog服务器的配置:rootjie1 # grep -v "#" /etc/rsyslog.conf | grep -v "$"#修改配置文件只需开启两个模块和协议支持的端口$ModLo
20、ad imuxsock # provides support for local system logging (e.g. via logger command)$ModLoad imklog # provides kernel logging support (previously done by rklogd)$ModLoad imudp #开启支持upd的模块$UDPServerRun 514 #允许接收udp 514的端口传来的日志ModLoad imtcp #开启支持tcp的模块$InputTCPServerRun 514 #允许接收tcp 514的端口传来的日志$ActionFil
21、eDefaultTemplate RSYSLOG_TraditionalFileFormat$IncludeConfig /etc/rsyslog.d/*.conf*.info;mail.none;authpriv.none;cron.none /var/log/messagesauthpriv.* /var/log/securemail.* -/var/log/maillogcron.* /var/log/cron*.emerg *uucp,news.crit /var/log/spoolerlocal7.* /var/log/boot.log$template SpiceTmpl,&quo
22、t;%TIMESTAMP%.%TIMESTAMP:date-subseconds% %syslogtag% %syslogseverity-text%:%msg:sp-if-no-1st-sp%msg:drop-last-lf%n":programname, startswith, "spice-vdagent" /var/log/spice-vdagent.log;SpiceTmpl#rootjie1 # service rsyslog restartShutting down system logger: OK Starting system logger:
23、OK rootjie1 #c)日志存储在指定的数据库服务器中思路:1、安装mysql服务器,且要安装rsyslog连接mysql的驱动2、解决生成rsyslog服务器的日志特定的格式,3、在rsyslog配置文件中加载连接mysql的模块,把日志存储到mysql中rsyslog+Mysql服务器端的配置:rootjie1 log# yum -y install mysql-server rsyslog-mysql mysql#安装mysql服务器和rsyslog连接mysql的驱动rootjie1 # rpm -ql rsyslog-mysql#查看rsyslog-mysql安装生成了那些文件
24、/lib64/rsyslog/ommysql.so/usr/share/doc/rsyslog-mysql-5.8.10/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sqlrootjie1 # service mysqld start Starting mysqld: OK rootjie1 # mysqladmin -u root password redhat#设置mysql的密码rootjie1 # mysql -u root -pEnter password: #登录mysql服务器mysql> show databases; #显示数
25、据库服务器中没有日志的数据库+-+| Database |+-+| information_schema | mysql | test |+-+3 rows in set (0.00 sec)mysql> qByerootjie1 # cd /usr/share/doc/rsyslog-mysql-5.8.10/#日志文件sql脚本的路径rootjie1 rsyslog-mysql-5.8.10# lscreateDB.sqlrootjie1 rsyslog-mysql-5.8.10# mysql -u root -p < createDB.sqlEnter password: #
26、导入日志文件的sql脚本,生成日志文件的数据库rootjie1 rsyslog-mysql-5.8.10# mysql -u root -pEnter password:mysql> show databases;+-+| Database |+-+| information_schema | Syslog | mysql | test |+-+4 rows in set (0.01 sec)mysql> use Syslog; #Syslog即是记录日志文件的数据库Reading table information for completion of table and colu
27、mn namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+-+| Tables_in_Syslog |+-+| SystemEvents | SystemEventsProperties |+-+2 rows in set (0.00 sec)mysql> grant all on Syslog.* to 'syslogroot''' identified by 'sysl
28、ogpass' #设置用户访问数据库服务器中Syslog数据库的用户名和密码Query OK, 0 rows affected (0.00 sec)mysql> grant all on Syslog.* to 'syslogroot''' identified by 'syslogpass'Query OK, 0 rows affected (0.04 sec)mysql> flush privileges; #重读授权表,及时生效Query OK, 0 rows affected (0.00 sec)
29、mysql> qByerootjie1 rsyslog-mysql-5.8.10#cd /rootjie1 /# grep -v "$" /etc/rsyslog.conf | grep -v "#"#vim /etc/ryslog.conf#$ModLoad imuxsock$ModLoad imklog$ModLoad imudp #加载udp的模块$UDPServerRun 514 #允许接收udp 514的端口传来的日志$ModLoad imtcp #加载tcp的模块$InputTCPServerRun 514 #允许接收tcp 514的端
30、口传来的日志$ModLoad ommysql #加载mysql的模块$ActionFileDefaultTemplateRSYSLOG_TraditionalFileFormat$IncludeConfig /etc/rsyslog.d/*.conf*.* :ommysql:,Syslog,syslogroot,syslogpass #添加这行,把其他行都注释掉,这行表示把所有的设施的所有日志都记录到数据库服务器中的Syslog数据库中,以syslogroot用户,syslogpass密码访问数据库local7.* /var/log/boot.log$template S
31、piceTmpl,"%TIMESTAMP%.%TIMESTAMP:date-subseconds% %syslogtag% %syslogseverity-text%:%msg:sp-if-no-1st-sp%msg:drop-last-lf%n":programname, startswith, "spice-vdagent" /var/log/spice-vdagent.log;SpiceTmpl#rootjie1 /# service rsyslog restartShutting down system logger: OK Starting s
32、ystem logger: OK rsyslog客户端的配置:rootjie3 # sed -e '/$/d' -e '/#/d' /etc/rsyslog.conf# /etc/rsyslog.conf#$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)$ModLoad imklog # provides kernel logging support (previously done by rklogd)$ActionFileDefaul
33、tTemplate RSYSLOG_TraditionalFileFormat$IncludeConfig /etc/rsyslog.d/*.conf*.* #添加这行用于和服务器通信*.* :ommysql:,Syslog,syslogroot,syslogpass #添加这行,把其他行都注释掉,这行表示把所有的设施的所有日志都记录到数据库服务器中的Syslog数据库中,以syslogroot用户,syslogpass密码访问数据库$template SpiceTmpl,"%TIMESTAMP%.%TIMESTAMP:date-subs
34、econds% %syslogtag% %syslogseverity-text%:%msg:sp-if-no-1st-sp%msg:drop-last-lf%n":programname, startswith, "spice-vdagent" /var/log/spice-vdagent.log;SpiceTmpl#rootjie3 # service rsyslog restartShutting down system logger: OK Starting system logger: OK 验证客户端的日志文件存放位置:1)验证是否存放在客户端本地2)
35、验证是否存在服务器的/var/log/messages里面3)验证是否存放在服务器的mysql数据库中虽然日志存放在mysql数据库服务器中,是解决了日志集中管理,但是存放在mysql服务器中让管理人员头疼的是不便于查看这些大量的日志,于是乎搭建一个日志分析工具就非常的有必要性了。四、基于web的loganalyzer日志分析工具的搭建本环境是针对上面的日志存放在mysql服务器中不方便查看,配置loganalyzer日志分析工具来分析查看日志rsyslog服务器的配置步骤:1、安装httpd,php,php-gd,php-mysqlhttpd用来提供web服务php使apache支持php,
36、因为loganalyzer是用php编写php-mysql用于loganalyzer连接数据库php-gd用于绘图rootjie1 # yum -y install httpd php php-mysql php-gdrootjie1 # mkdir -pv /web/loganalyzer #存放loganalyzer的网页文件mkdir: created directory /web'mkdir: created directory /web/loganalyzer'2、下载loganalyzer源码包rootjie1 # lsanaconda-ks.cfg install.log install.log.syslog loganalyzer-3.6.4.tar.gzrootjie1 # tar xf loganalyzer-3.6.4.tar.gzrootjie1 # lsanaconda-ks.cfg install.log.syslog logana
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 44435-2024信息与文献数字文件(档案)转换和迁移过程
- GB/T 25216-2024煤与瓦斯突出危险性区域预测方法
- 合伙协议书签订时的法律审查
- 2024年黄沙石子供货合同范本
- 专业承包工地食堂合同书模板
- 合作经营生意合同协议
- 800字代办委托协议范本
- 房产按揭贷款借款协议示例
- 咖啡店外卖服务合同
- 2024年二手车购买协议格式
- 2024年国家公务员考试《行测》真题卷(行政执法)答案和解析
- 第二次月考卷-2024-2025学年统编版语文六年级上册
- 公共基础知识1000题题库
- 生猪屠宰兽医卫生检验人员理论考试题库及答案
- 2024年北京公交集团第四客运分公司招聘笔试参考题库附带答案详解
- 《陆上风电场工程设计概算编制规定及费用标准》(NB-T 31011-2019)
- 高中数学 第二章 空间向量与立体几何 2.3.3 空间向量运算的坐标表示课件2 北师大版选修2-1
- 中国南阳介绍PPTppt
- (高三化学试卷)--北京四中高三上学期期中测验化学试题
- 温州市第十四高级中学化学学科课程建设纲要
- 输煤运行专业危险点及防范措施
评论
0/150
提交评论