2009-04-24 66 views
9

我的任務是爲我公司的服務器軟件編寫監控程序,該軟件通過snmp與zenoss集成。SNMP監控簡介

簡而言之,我無法得到任何東西。我認爲我的第一個目標是找出編寫snmp代理的正確方法(以任何語言開始,儘管它最終將用java編寫)。那裏有好的測試線束嗎?我用snmptest,這是與zenoss一起發貨的,但如果我不能讓測試代理脫離地面,那對我來說並不好。任何我認識zenoss手冊的東西都有很多信息,但它似乎假定了標準系統監控實踐和工具的先前知識,而我幾乎無法滲透它。

另外,使用snmp監視軟件通常是一種很好的做法嗎?

+0

嗨,兄弟,我閱讀下面的每條評論,他們都是垃圾。我也有相同的要求,不知道從哪裏開始。我被給了一個星期來自己理解整個事情。有了恐懼和恐慌的力量,纔開始理解。我很幸運是一個碼頭工人/ python ubermaster,當我諮詢hub.docker.com時,我看到了snmp模擬。我繼續前進,接下來我看到了PySNMP。最後,我看到了net-snmp-5.7.3/base源代碼,你可以在其中重新編譯snmpd.c並將其擴展。然後這個「ManageEngine免費工具MibBrowser」幫助了我,因爲我在Ubuntu中。 – ifelsemonkey 2017-12-22 13:59:43

回答

14

簡短說明:

  1. 設置代理了。這通常需要告訴它將警報發送到哪個服務器。

  2. 運行它。

  3. 當事情發生時,發送適當的SNMP消息到配置的服務器。

  4. 回覆來自已配置服務器的請求。

所有的請求/回覆內容都是使用SNMP消息完成的。如果您的公司沒有爲服務器軟件特別設計/分配的OID,則需要查看標準MIB定義以確定哪些OID是合適的。

MIB:管理信息塊。這些來自標準和定製口味。標準組織由一個標準組織(IETF)定義。自定義的是由供應商創建的,以支持其產品特有的信息。 MIB基本上是OID的集合。

OID:對象標識符 - 這是一個虛線符號數字字符串,用於標識硬件/軟件以及您要查找的信息位 - 例如,以太網上的TX衝突數端口可能類似於:1.5.82.316.8.4.3(儘管這不是一個有效的OID,它只是一個製作的例子)。

更多詳細信息請登錄Wikipedia。下載免費的MIB browser以瞭解OID的外觀,以及他們可以獲得的詳細信息。請查閱RFCs瞭解更多詳細信息。看看perl的Net-SNMP之類的東西 - 你甚至可以使用它附帶的snmpd軟件來完成大部分工作。

+0

我認爲3)你指的是陷阱? – 2009-04-24 21:16:44

1

Zenoss相當複雜,並帶有許多預定義的SNMP內容。你真的需要編寫你自己的SNMP代理嗎?

+0

我不完全知道我是否需要編寫自己的snmp代理。我想我需要設計自己的snmp代理,因爲我需要定義一些定期發送的陷阱和一些可以請求的屬性。如何手動我將不得不這樣做對我來說是個謎。 – 2009-04-24 21:01:37

5

SNMP無疑是一種可以接受的監控網絡,設備和服務器的方式。因爲它使用UDP,所以它不會通過TCP重試等壓力網絡(SNMP客戶端,或應該被設計爲處理丟棄的數據包等)。此外,您將擁有大量的客戶端解決方案來監控您的系統並進行整合。

如果設想在Java中的最終解決方案,請參閱Java/SNMP documentationSNMP4J

SNMP.com(傑弗裏案中,SNMP的建築師之一成立)出售可擴展的SNMP agents。其中之一可能會爲你挽救一個悲傷的世界。

1

SNMP是一個很大的話題,如果您深入瞭解協議和相關工具的所有細節和所有歷史版本,都會帶來很多複雜性。我建議你挑選一份由Mauro和Schmidt提供的Essential SNMP,它清楚地介紹了SNMP背後的基本思想,以及如何開始使用它並在parctice中使用它的一些不同的實例工具。

0

你可以瞄準更低的地方並嘗試仙人掌(http://www.cacti.net/)。

我也嘗試了Zenoss,但放棄了。仙人掌啓動並運行得非常快。我只是監視全國各地交換機中使用帶寬不少的路由器和許多端口。但有一些模板用於監控與單個服務器相關的所有類型的事物(溫度,風扇速度等)。

BR。 Anders