Logging
如何設置 rsyslog 以將所有日誌發送到多個遠端伺服器?
我試圖讓 rsyslog 將所有日誌發送到 2 個遠端伺服器,但如果第一個失敗,rsyslog 似乎只發送到輔助伺服器。
*.* @@server1 *.* @@server2
如果我將上述內容放在 /etc/rsyslog.conf 中,只要 server1 啟動,server2 就不會收到任何日誌。無論如何,我如何告訴 rsyslog 發送到兩台伺服器?
另外,作為額外的獎勵,如果遠端伺服器出現故障,我想使用 2 個不同的本地“緩衝區”文件進行本地儲存。
從 轉發到多台伺服器;
然而,重要的是要知道全套指令構成一個動作。因此,您不能簡單地添加(僅)第二條轉發規則,還需要複製規則配置。請注意,為第二個操作使用不同的隊列文件名,否則會弄亂系統。
因此,實際上,您必須使用 2 個不同的本地隊列。
配置工作目錄。
$WorkDirectory /var/spool/rsyslog
配置您的轉發規則。
$ActionQueueType LinkedList $ActionQueueFileName Forward1 $ActionResumeRetryCount -1 $ActionQueueSaveOnShutdown on *.* @@server1 $ActionQueueType LinkedList $ActionQueueFileName Forward2 $ActionResumeRetryCount -1 $ActionQueueSaveOnShutdown on *.* @@server2