CentOS7快速安装Rsyslog+MySQL+Loganalyzer

    分析系统日志有助于排查故障,管理几台服务器可以通过远程登录的方式逐台搜集分析,随着服务器设备越来越多,集中分析管理各类日志信息也就显得越来越重要。搭建合适的日志管理平台有助于提高日志分析工作效率,对于服务器设备不多的机房而言,推荐使用Rsyslog+MySQL+Loganalyzer搭建日志管理服务器。

    实验环境

    操作系统:CentOS 7.9

    服务端IP:192.168.168.201

    服务端篇

    第一步 安装软件

    1. # yum -y install httpd mariadb-server php php-gd php-mysql rsyslog rsyslog-mysql  
    2. # systemctl enable rsyslog  
    3. # systemctl enable httpd  
    4. # systemctl enable mariadb  

    第二步 启动配置数据库

    根据向导按需修改数据库root密码、禁止root远程登录、移除测试用户、删除多余数据库、刷新表权限。

    1. # systemctl start mariadb  
    2. # mysql_secure_installation  

    第三步 创建数据库

    初始化过程中我已修改数据库root管理员密码为123456,数据库默认名称为Syslog,再新建一个rsyslog用户来管理Syslog数据库,密码设置为123456。

    1. # mysql -uroot -p123456 < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql  
    2. # mysql -uroot -p123456  
    3. MariaDB [(none)]> grant ALL on Syslog.* to rsyslog@'localhost' identified by '123456';  
    4. MariaDB [(none)]> flush privileges;  
    5. MariaDB [(none)]> exit  

    第四步 配置启动Rsyslog

    1. # mv /etc/rsyslog.conf /etc/rsyslog.conf.bak     
    2. # vim /etc/rsyslog.conf    
    3.   
    4. #开启DNS功能    
    5. global(net.enableDNS = "on")    
    6. #使用IPv4协议    
    7. global(net.ipprotocol = "ipv4-only")    
    8. #加载MySQL数据库模块    
    9. module(load="ommysql")    
    10. #加载本地系统日志记录模块    
    11. module(load="imuxsock")    
    12. #加载内核级别日志记录模块    
    13. module(load="imklog")    
    14. #加载TCP协议接收日志模块    
    15. module(load="imtcp")    
    16. input(type="imtcp" address="192.168.168.201" port="514")    
    17. #日志截断最大容量    
    18. $maxMessageSize      16K    
    19. #设置允许发送日志的来路(传输协议、主机IP地址范围)    
    20. $AllowedSender       TCP,127.0.0.1,192.168.168.0/24    
    21. #设置默认的TimeStamp格式    
    22. $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat    
    23. #设置配置文件路径    
    24. $IncludeConfig /etc/rsyslog.d/*.conf    
    25. #记录所有的kernel日志到/var/log/kernel    
    26. kern.*                                                  /var/log/kernel    
    27. #记录大于等于info级别的日志到/var/log/messages(不记录类型为mail、authpriv、cron的日志)    
    28. *.info;mail.none;authpriv.none;cron.none                /var/log/messages    
    29. #记录类型为auth、authpriv的所有级别日志到/var/log/secure    
    30. auth.*;authpriv.*                                       /var/log/secure    
    31. #记录类型为mail的所有级别日志到/var/log/maillog    
    32. mail.*                                                  /var/log/maillog    
    33. #记录类型为cron的所有级别日志到/var/log/cron    
    34. cron.*                                                  /var/log/cron    
    35. #记录类型为daemon的所有级别日志到/var/log/daemon    
    36. daemon.*                                                /var/log/daemon    
    37. #记录类型为user的所有级别日志到/var/log/user    
    38. user.*                                                  /var/log/user    
    39. #记录所有类型的严重级别日志,并让全体用户看到    
    40. *.emerg                                                 :omusrmsg:*    
    41. #记录uucp、news的重要级别日志到/var/log/spooler    
    42. uucp,news.crit                                          /var/log/spooler    
    43. #记录自定义程序(boot)的所有级别到/var/log/boot    
    44. local7.*                                                /var/log/boot    
    45. #发送所有日志信息到MySQL数据库    
    46. *.*                                                     :ommysql:localhost,Syslog,rsyslog,123456  
    1. # systemctl restart rsyslog  

    第五步 安装Loganalyzer

    打开浏览器访问:http://192.168.168.201,根据安装向导输入相关信息,多注意一下数据库、表名称的大小写。

    1. # cd /var/www/html/    
    2. # wget --no-check-certificate http://download.adiscon.com/loganalyzer/loganalyzer-4.1.7.tar.gz    
    3. # tar xzf loganalyzer-4.1.7.tar.gz && rm -rf loganalyzer-4.1.7.tar.gz    
    4. # mv loganalyzer-4.1.7/src/* ./ && rm -rf loganalyzer-4.1.7    
    5. # chown -R apache:apache ./    
    6. # systemctl start httpd  

    CentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+LoganalyzerCentOS7快速安装Rsyslog+MySQL+Loganalyzer

    客户端篇

    第一步 安装软件

    1. # yum -y install rsyslog
    2. # systemctl enable rsyslog

    第二步 配置软件

    1. # mv /etc/rsyslog.conf /etc/rsyslog.conf.bak
    2. # vim /etc/rsyslog.conf
    3.   
    4. #开启DNS功能    
    5. global(net.enableDNS = "on")    
    6. #使用IPv4协议    
    7. global(net.ipprotocol = "ipv4-only")    
    8. #加载本地系统日志记录模块    
    9. module(load="imuxsock")    
    10. #加载内核级别日志记录模块    
    11. module(load="imklog")    
    12. #日志截断最大容量    
    13. $maxMessageSize      16K    
    14. #设置默认的TimeStamp格式    
    15. $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat    
    16. #设置配置文件路径    
    17. $IncludeConfig /etc/rsyslog.d/*.conf    
    18. #记录所有的kernel日志到/var/log/kernel    
    19. kern.*                                                  /var/log/kernel    
    20. #记录大于等于info级别的日志到/var/log/messages(不记录类型为mail、authpriv、cron的日志)    
    21. *.info;mail.none;authpriv.none;cron.none                /var/log/messages    
    22. #记录类型为auth、authpriv的所有级别日志到/var/log/secure    
    23. auth.*;authpriv.*                                       /var/log/secure    
    24. #记录类型为mail的所有级别日志到/var/log/maillog    
    25. mail.*                                                  /var/log/maillog    
    26. #记录类型为cron的所有级别日志到/var/log/cron    
    27. cron.*                                                  /var/log/cron    
    28. #记录类型为daemon的所有级别日志到/var/log/daemon    
    29. daemon.*                                                /var/log/daemon    
    30. #记录类型为user的所有级别日志到/var/log/user    
    31. user.*                                                  /var/log/user    
    32. #记录所有类型的严重级别日志到/var/log/emerg    
    33. *.emerg                                                 /var/log/emerg    
    34. #记录uucp、news的重要级别日志到/var/log/spooler    
    35. uucp,news.crit                                          /var/log/spooler    
    36. #记录自定义程序(boot)的所有级别到/var/log/boot    
    37. local7.*                                                /var/log/boot    
    38. #使用TCP通信协议发送所有日志信息到指定日志服务器    
    39. *.*                                                     @@192.168.168.201:514    

    1. # systemctl restart rsyslog  

    测试篇

    打开浏览器访问:http://192.168.168.201,输入相关用户名、密码登陆,顺利的话便能看到服务端、客户端相关日志记录。如果出现中文乱码,请参考扩展阅读。

    扩展阅读展开隐藏

    1. # vim /var/www/html/include/functions_common.php  

    大约在第1214行,找到:

    1. return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding']); //"UTF-8");  

    修改为:

    1. return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding'],"UTF-8");  

    再访问Loganalyzer网站,进入Admin Center找到Default character encoding,选择UTF-8,点击Send Change保存退出。再次刷新网页时,就可以正常显示中文日志了。

    CentOS7快速安装Rsyslog+MySQL+Loganalyzer

    下载信息 文件名称:Loganalyzer 运行平台:Linux 文件版本:4.1.7 解压密码:www.wanghualang.com
    下载地址
    匿名

    发表评论

    匿名网友 填写信息