Linux环境下搭建Rsyslog日志服务器

1. Rsyslog日志服务简介

(1)Rsyslog简介

rsyslog( rocket-fast system for log),它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。

(2)为什么要是有Rsyslog

  • web服务器多的时候检查日志是一件痛苦的事情;

  • 使用一台统一的日志服务器,将登录认证,系统日志等全部发送到这台日志服务器上;

  • 可以做监控分析,也能随时获取最新日志;

(3)Rsyslog的特性

  • 多线程的服务,并发性能好;

  • 可以使用udp,tcp,ssl,tls,relp等协议完成信息收集;

  • 将日志可以存储在mysql,pgsql,oracle等数据库管理系统中;

  • 强大的自定义过滤器,实现过滤日志信息中任何部分内容;

  • 自定义输出格式;

(4)使用Rsyslog进行日志集中管理

C/S架构:客户端将其日志上传到服务器端,通过对服务器端日志的查询,来实现对其他客户端的日志进行集中管理;下面实现就是通过两套机器来实现,(server:202.100.10.2)——(client:202.100.10.3),将client上的日志传输到server上;

(5)安装Rsyslog服务

  • 安装(一般系统会默认安装):yum install Rsyslog -y

  • 查看服务状态:service Rsyslog status

  • 启动服务:service Rsyslog start

2. Rsyslog的三种传输协议

编辑配置文件:vim /etc/rsyslog.conf;

注:日志的传输方式主要有三种:UDP,TCP,RELP

(1) UDP 传输协议

  • 基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;
  • 可靠性比较低,但性能损耗最少, 在网络情况比较差,或者接收服务器压力比较高情况下,可能存在丢日志情况。在对日志完整性要求不是很高,在可靠的局域网环境下可以使用。

(2)TCP 传输协议

  • 基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;
  • 但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。
  • 这种协议相比于UDP在可靠性方面已经好很多,并且rsyslog原生支持,配置简单,同时针对可能丢日志情况,可以进行额外配置提高可靠性,因此使用比较广。

(3)RELP 传输协议

  • RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;
  • 是为了解决TCP 与 UDP 协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。
  • 需要多安装一个包rsyslog-relp以支持该协议。

3. Rsyslog日志服务搭建

(1)前期配置

1.1> 配置Rsyslog服务器的IP地址(202.100.10.2);

Linux环境下搭建Rsyslog日志服务器_第1张图片

1.2> 将Rsyslog服务器清除防火墙规则和临时禁用selinux;

1.3> 配置Rsyslog客户端的IP地址(202.100.10.3),使其与服务器在同一个网段;

Linux环境下搭建Rsyslog日志服务器_第2张图片

1.4> 将Rsyslog客户端清除防火墙规则和临时禁用selinux;

1.5> 测试服务器与客户端是否可以ping通;

Linux环境下搭建Rsyslog日志服务器_第3张图片

(2)可以采用三种传输方式:

  1. 启用UDP传输方式;
  2. 启用TCP传输方式;
  3. 启用RELP传输方式;(注:如果采用RELP传输方式,在服务器端和客户端都需要安装rsyslog-relp)

(3)方式一:启用UDP传输方式;

配置Rsyslog服务器

3.1> 编辑配置文件 vim /etc/rsyslog.conf;

Linux环境下搭建Rsyslog日志服务器_第4张图片

3.2> 开启传输端口监听vim /etc/sysconfig/rsyslog;

3.3> 重启服务;

3.4> 查看服务器端运行的端口;

Linux环境下搭建Rsyslog日志服务器_第5张图片

配置Rsyslog客户端

3.5> 指定日志传输的方式   vim /etc/rsyslog.conf;

若采用的传输方式是UDP传输,则在配置文件中添加如下一行;Linux环境下搭建Rsyslog日志服务器_第6张图片

3.6> 重启服务;

3.7> 进行测试,在客户端上执行;

3.8> 在服务器端进行查看;可以看到,测试成功;

(4)方式二:启用TCP传输方式;

配置Rsyslog服务器

4.1> 编辑配置文件 vim /etc/rsyslog.conf

Linux环境下搭建Rsyslog日志服务器_第7张图片

4.2> 开启传输端口监听vim /etc/sysconfig/rsyslog;

4.3> 重启服务;

4.4> 查看服务器端运行的端口;

配置Rsyslog客户端

4.5> 指定日志传输的方式 vim /etc/rsyslog.conf;

若采用的传输方式是TCP传输,则在配置文件中添加如下一行;

Linux环境下搭建Rsyslog日志服务器_第8张图片

4.6> 重启服务;

4.7> 进行测试,在客户端上执行;

4.8> 在服务器端进行查看;可以看到,测试成功;

Linux环境下搭建Rsyslog日志服务器_第9张图片

(5)方式三:启用RELP传输方式;

配置Rsyslog服务器

5.1> 安装rsyslog-relp;

Linux环境下搭建Rsyslog日志服务器_第10张图片

5.2> 查看服务的状态和重新启动服务

5.3> 编辑配置文件 vim /etc/rsyslog.conf;

新增以下2行

Linux环境下搭建Rsyslog日志服务器_第11张图片

5.4> 开启传输端口监听vim /etc/sysconfig/rsyslog;

Linux环境下搭建Rsyslog日志服务器_第12张图片

5.5> 重启服务;

5.6> 查看服务器端运行的端口;

配置Rsyslog客户端

5.7> 安装rsyslog-relp;

Linux环境下搭建Rsyslog日志服务器_第13张图片

5.8> 查看服务的状态和重新启动服务;

Linux环境下搭建Rsyslog日志服务器_第14张图片

5.9> 指定日志传输的方式 vim /etc/rsyslog.conf;

若采用的传输方式是RELP传输,则在配置文件中添加如下一行;

Linux环境下搭建Rsyslog日志服务器_第15张图片

5.10> 重启服务;

5.11> 进行测试,在客户端上执行;

5.12> 在服务器端进行查看;可以看到,测试成功;

Linux环境下搭建Rsyslog日志服务器_第16张图片

 

 

你可能感兴趣的:(Linux)