首页 > 代码库 > Rsyslog的三种传输协议简要介绍
Rsyslog的三种传输协议简要介绍
rsyslog的三种传输协议
rsyslog 可以理解为多线程增强版的syslog.
rsyslog提供了三种远程传输协议,分别是:
1. UDP 传输协议
基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;
可靠性比较低,但性能损耗最少, 在网络情况比较差,
或者接收服务器压力比较高情况下,可能存在丢日志情况。
在对日志完整性要求不是很高,在可靠的局域网环境下可以使用。
2.TCP 传输协议
基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;
但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。
这种协议相比于UDP在可靠性方面已经好很多,并且rsyslog原生支持,配置简单,
同时针对可能丢日志情况,可以进行额外配置提高可靠性,因此使用比较广。
3.RELP 传输协议
RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;
是为了解决TCP 与 UDP 协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。
需要多安装一个包rsyslog-relp以支持该协议。
配置文件一般不会直接修改主配置文件,在/etc/rsyslog.d目录下创建新的配置文件,rsyslog会自动来加载
4.示例
(1)UDP传输配置
服务端创建配置文件udp.conf
# server configure $Modload imudp $UDPServerRun 514 $AllowedSender UDP, 10.0.0.0/16 #设置白名单 $template log_location, /var/log/%fromhost-ip%/%$YEAR%-%$MONTH%-%$DAY%.log $template log_format, "%fromhost-ip% %msg%\n" #把非本地传输的日志按照指定的文件路径及格式保存 :fromhost-ip, !isequal, "172.0.0.1" -?log_location;log_format #已经匹配处理的内容,不再进行其他处理 & ~
客户端配置:
*.* @10.0.0.1:514
(2)TCP传输配置
服务端修改UDP为TCP
客户端修改:
*.* @@10.0.0.1:514
(3)RELP传输配置
$ sudo yum install rsyslog-relp(客户端和服务端)
服务端修改
$Modload imrelp $UDPServerRun 514
客户端修改
*.* :omrelp:10.0.0.1:514
Rsyslog的三种传输协议简要介绍
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。