Snmp

如何從間歇性連接的站點收集 SNMP 讀數?

  • March 28, 2015

我正在為目前使用 Cacti 的許多系統現場收集 SNMP 數據。這些系統分佈在許多並不總是連接到 Internet 的站點上,但我還需要將數據集中在單個系統(數據中心託管的伺服器)上並從中獲取圖表。

如果我使用集中式 Cacti 直接輪詢遠端系統,當站點未連接到 Internet 時,我會失去數據。我應該在現場記錄數據(我在每個站點都有一個伺服器,我可以在上面執行我想要的任何東西),然後將所有內容“同步”到中央系統。

一個黑客可以是仙人掌或直接rrdtool在現場,然後定期rsync將 RRD 數據發送到中央 Cacti 系統,但這聽起來不像是一個“乾淨”的解決方案:每個 RRD 都必須在兩個地方定義,並且rsync腳本設置使用特定的文件名。

您能提出更好的解決方案嗎?仙人掌不是必需的,但我想在中央系統上使用類似的東西。現場系統只需要收集數據我不需要在那裡繪製圖表或管理使用者查看數據和類似內容的權限,使用者只會訪問集中式系統。

我會設置一個遠端收集系統(一個簡單的 snmp 輪詢器),它可以遠端儲存數據並且可以通過 http 或 ssh 聯繫……中央伺服器會嘗試定期聯繫遠端服務服務。當它管理連接時,它會獲取同時收集的更新……

由於 rrdtool 可以很好地處理帶時間戳的更新,因此您可以將更新重新播放到中央站點的 rrds 中……

作為獎勵,您甚至可能會看到相當不錯的性能,因為在一次呼叫中執行多個更新到 rrd 比逐步執行要有效得多。

引用自:https://serverfault.com/questions/152022