
我們主要嘗試使用 SNMP 來監控我們的伺服器。由於效能原因,我們將其從單一請求更改為 snmp-bulk-requests(如 SNMP v2c 中允許的那樣)。
理論上(至少據我所知)應該可以在單一批次請求中請求多個分支/值,因此所需的 tcp 會話數量將是最少的。
我們目前為此使用 CentOS 5 - 所討論的高級命令是snmpbulkwalk
- 但這似乎只能一次請求一個分支(即子樹)。
我在理論上是錯的,還是有一個高階指令可以做我想做的事?
答案1
該指令snmpbulkget
允許您指定任意的、非連續的 OID 請求。正確設定非重複次數和最大重複次數可能需要一些實驗。
這裡有一個很好的例子:http://docstore.mik.ua/orelly/networking_2ndEd/snmp/ch02_06.htm
答案2
你說得對。snmpbulkwalk
網路效率更高。然而,SNMP通常不使用TCP;它使用UDP。
SNMP 批次請求不在 SNMPv1 規格中,因此請確保您要求的 SNMP 代理程式至少為 SNMPv2c 或更高版本。
如果需要,您可以將其包裝snmpbulkwalk
在腳本中以協助完成批次請求作業。
如果您想要監視大量資訊,您可能需要考慮使用RRDTool
成熟的監視系統,例如Nagios
.