Rsyslog的三種傳輸協議簡要介紹

rsyslog的三種傳輸協議服務器

rsyslog 能夠理解爲多線程加強版的syslog.網絡

 rsyslog提供了三種遠程傳輸協議,分別是:多線程

1. UDP 傳輸協議

基於傳統UDP協議進行遠程日誌傳輸,也是傳統syslog使用的傳輸協議;性能

可靠性比較低,但性能損耗最少, 在網絡狀況比較差,spa

或者接收服務器壓力比較高狀況下,可能存在丟日誌狀況。線程

在對日誌完整性要求不是很高,在可靠的局域網環境下能夠使用。日誌

 

2.TCP 傳輸協議

基於傳統TCP協議明文傳輸,須要回傳進行確認,可靠性比較高;code

但在接收服務器宕機或者二者之間網絡出問題的狀況下,會出現丟日誌狀況。orm

這種協議相比於UDP在可靠性方面已經好不少,而且rsyslog原生支持,配置簡單,server

同時針對可能丟日誌狀況,能夠進行額外配置提升可靠性,所以使用比較廣。

 

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
相關文章
相關標籤/搜索