Syslogserver(日誌伺服器) 安裝和使用
介面展示
一、作用介紹
NAS(伺服器等裝置)當機或出現任何錯誤後,可用於日誌回溯,找出裝置故障的原因。
二、資料簡介
映象(x86):reddorcleaner/syslogserver:amd64
映象(arm):reddorcleaner/syslogserver:aarch64
引數 | 型別 | 值 | 備註 |
---|---|---|---|
SYSLOG_USERNAME | 環境變數 | 按需填寫(如admin) | 必填 |
SYSLOG_PASSWORD | 環境變數 | 按需填寫(如admin) | 必填 |
8080 | 埠 | 8080:80 | 可將容器80埠對映到主機的任何未被佔用的埠,該埠用於檢視日誌 |
514 | 埠 | 514:514 | 注意:該埠為UDP埠!可將容器514埠對映到主機的任何未被佔用的埠,該埠用於收集日誌 |
日誌存放路徑 | 路徑 | /urpath:/var/log/net | 冒號前面為宿主機目錄,後部為容器內路徑,請將宿主機路徑修改到自己的目錄 |
三、安裝
實際上,你可以簡單使用一行命令安裝syslogserver容器(請按需修改使用者名稱、密碼以及日誌路徑):
arm:
docker run -d --name syslogserver -e SYSLOG_USERNAME=admin -e SYSLOG_PASSWORD=1234 -p 8080:80 -p 514:514/udp -v /urpath:/var/log/net reddorcleaner/syslogserver:aarch64
同理 x86架構的機器:
docker run -d --name syslogserver -e SYSLOG_USERNAME=admin -e SYSLOG_PASSWORD=1234 -p 8080:80 -p 514:514/udp -v /urpath:/var/log/net reddorcleaner/syslogserver:amd64
四、使用
在執行了上面的命令且無任何報錯的之後,Syslogserver服務端的安裝到此完成;你可以嘗試透過瀏覽器訪問 http://Syslogserverip:8080 ,輸入環境變數中設定的賬號和密碼之後就能登入到軟體中,見本文圖一、圖二。
但是,有更大的可能你會見到下面這個介面,因為此時還沒有配置任何客戶端,Syslogserver沒收集到任何日誌。
下面以unraid和PVE為例子,演示如何新增日誌伺服器:
unraid
unraid的系統日誌伺服器位置在:設定->系統日誌伺服器中,在裡面配置好日誌伺服器的IP地址以及埠號然後儲存即可,如圖:
PVE
PVE的日誌伺服器稍微複雜些,不能在WEBGUI上進行設定,需要修改配置檔案設定日誌伺服器,具體的路徑為/etc/rsyslog.d
,檔名為99-remote-log-forwarding.conf
,檔案內容只有1行,將ip地址和埠修改為Syslogserver對應的地址和埠即可。
*.* @172.16.0.73:5514
如下圖
在完成以上步驟後,你的Syslogserver應該就能正常顯示客戶端傳來的日誌了,且日誌會持久儲存在你第三步設定的宿主機路徑中,你也可以在客戶端上使用命令向Syslogserver手動傳送測試日誌
logger -n 172.16.0.73 -P 5514 "test"
如果一切工作正常,Syslogserver將會收到如下圖的日誌:
END
至於更多其他的功能,如選擇顯示的內容、時區設定、重新整理時間和日誌條數,就交由你自己去探索了。
另外,筆者十分不建議將此容器部署在你需要收集日誌的宿主機上,畢竟沒人知道是宿主機先當機還是docker先死,我建議的部署模式是在軟路由上部署一個,用於收集NAS的日誌,在NAS上部署一個,用於收集軟路由的日誌。當然,如果你是一名堅定的AIO玩家,那我祝你好運,再見。