目錄

簡介

必要條件

需求

採用元件

背景資訊

SNMP架構

SNMP配置檔案

XML檔案

MIB檔案

排除SNMP故障的基本步驟

簡介

本文說明如何從量程原則套件(QPS)的角度對簡易網路管理通訊協定(SNMP)框架架構進行疑難排解。

必要條件

需求

本文件沒有特定需求。

採用元件

本檔案中的資訊是根據QPS 5.5及更新版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

SNMP架構

每個虛擬機器(VM)運行一個「snmpd」進程。QPS中的VM生成的警報或陷阱通過主動負載均衡器（如lbvip01或lbvip02）轉發到使用者網路管理系統(NMS)。

- lbvip01 向外部NMS伺服器傳送SNMP陷阱以進行外部通訊。高QPS可用性心跳可確保 lbvip01在負載均衡器VM上始終可用 lb01 或 lb02.

- lbvip02 由所有VM使用(例如 lb01x, qns0x, portal0x等等)，以便將SNMP陷阱傳送到主動負載均衡器以進行內部通訊。

- lbvip01 和 lbvip02 上的IP地址 lb01和 lb02 位於 /etc/hosts 檔案。

- 162 是用於SNMP陷阱消息的預設UDP埠。

- Broadhop 是用於訪問框架的預設SNMP社群字串。

SNMP配置檔案

負載均衡器VM上存在四個重要的QPS 5.5版SNMP配置檔案或指令碼：

- /etc/snmp/snmpd.conf 用於IP地址和埠配置。「snmp」服務每分鐘輪詢一次虛擬機器，查詢在此檔案中配置的值。檔案將版本2陷阱傳送到 lbvip02 通過此行： trap2sink lbvip02 broadhop.

- /etc/snmp/scripts/snmp_communities 定義要與外部NMS系統通訊的SNMP社群名稱，例如， trap_community=Cisco.

- /etc/snmp/scripts/component_trap_conver 將陷阱轉換為BROADHOP-NOTIFICATION MIB中定義的Quantum Network Suite(QNS)陷阱，並將其傳送到外部使用者NMS IP地址。

- /etc/snmp/snmptrapd.conf 是Net-SNMP通知接收方配置檔案，它使用一個或多個配置檔案來控制其操作以及必須如何處理接收的陷阱。檔案將實際陷阱傳送到外部NMS系統，具體方式為  lbvip0.

XML檔案

策略和更改規則功能(PCRF)客戶端虛擬機器（例如pcrfclient01和pcrfclient02）包含三個與QPS 5.5版SNMP配置相關的XML檔案：

- attributes.xml 包含SNMP對象識別符號(OID)與包含該值的Java管理擴展(JMX)javabean或屬性之間的對映。

- managers.xml 列出接收SNMP陷阱的遠端主機。

- notifications.xml 列出可以傳送的SNMP陷阱，並包含屬性到OID的對映。

三個XML檔案位於 /etc/broadhop/

/snmp

目錄。若要尋找正確的目錄：

1. 使用cat實用程式在PCRF客戶端虛擬機器中查詢正確的伺服器檔案。

cat /etc/broadhop/servers

輸出示例：

lb01=iomanager01

lb02=iomanager02

qns01=pcrf_A

qns01=pcrf_A

qns02=pcrf_A

qns02=pcrf_A

qns03=pcrf_B

qns03=pcrf_B

qns04=pcrf_B

qns03=pcrf_B

qns04=pcrf_B

pcrfclient01=controlcenter

pcrfclient01=pb

pcrfclient02=controlcenter

pcrfclient02=pb

2. 檢視伺服器的檔案後，您可以找到包含特定VM的三個XML檔案的目錄，如下所示：

/etc/broadhop/pcrf_A/snmp

/etc/broadhop/pcrf_B/snmp

/etc/broadhop/pb/snmp

/etc/broadhop/controlcenter/snmp

/etc/broadhop/iomanager01/snmp

/etc/broadhop/iomanager02/snmp

MIB檔案

SNMP使用的MIB位於 /etc/snmp/mibs  目錄。

- BROADHOP-QNS-MIB.mib 定義可檢索統計資料和關鍵效能指標(KPI)。

- BROADHOP-NOTIFICATION-MIB.mib 定義可用的通知和陷阱。

排除SNMP故障的基本步驟

在lb01或lb02上的活動負載平衡器虛擬機器上執行這些步驟。

1. 使用以下命令確保snmpd進程在各自的VM上正常工作：
service snmpd status

2. 如果snmpd服務已停止，請使用以下命令啟動該服務：
service snmpd start

3. 確保iptables已關閉，並檢查UDP埠162的狀態（如果在NMS中也使用UDP埠162）。

4. 使用以下命令確保SNMP的Red Hat Package Manager(RPM)版本相同：
rpm –qa | grep snmp

5.3.2.2所有版本的輸出示例：

net-snmp-5.3.2.2-17.el5

net-snmp-utils-5.3.2.2-17.el5

net-snmp-libs-5.3.2.2-17.el5

- net-snmp 是部署SNMP所需的程式包。

- net-snmp-utils 是一個軟體包，包含各種用於NET-SNMP的實用程式，並且是運行使用SNMP協定管理網路的實用程式所必需的。

- net-snmp-libs 包含共用二進位制檔案和應用程式的運行時庫。

5. 輸入 rpm-qi 命令檢視RPM的詳細資訊。
命令範例：

rpm -qi net-snmp-5.3.2.2-17.el5

rpm -qi net-snmp-utils-5.3.2.2-17.el5

rpm -qi net-snmp-libs-5.3.2.2-17.el5

6. 為了確保QPS將SNMP陷阱傳送到相應的NMS，請檢查外部NMS IP是否在 /etc/hosts 和 /etc/snmp/scripts/ component_trap_convert 使用以下命令：
grep 'corporate_nms_ip'

註：其中「corporate_nms_ip」是NMS IP，例如10.106.74.10。

7. 確保snmpd.conf 檔案包含行 rocommunity Broadhop 使用以下命令：
cat /etc/snmp/snmpd.conf

此行是必需的，因為從各種QNS VM到活動負載平衡器VM的所有內部陷阱都通過預設社群名稱傳送 Broadhop.

8. 檢查以確保負載平衡器和外部NMS系統在命令中使用相同的陷阱社群名稱：
/etc/snmp/scripts/snmp_communities

例如，確保負載平衡器和外部NMS系統都使用 trap_community=Cisco .

9. 請檢視 /var/log/snmp/trap 日誌檔案，以確保來自相應QNS VM的陷阱已正確到達活動負載均衡器VM。
陷阱日誌檔案示例：

Jun 15 04:02:16 AIO-POD1 snmpd[3754]: Received SNMP packet(s) from UDP: [127.0.0.1]

:56568

Jun 15 04:02:16 AIO-POD1 snmpd[3754]: Connection from UDP: [127.0.0.1]:48071

Jun 15 04:02:14 AIO-POD1 snmptrapd[3769]: 2014-06-15 04:02:14 AIO-POD1.cisco.com

[10.106.74.34] (via UDP: [127.0.0.1]:39334) TRAP, SNMP v1, community broadhop

NET-SNMP-MIB::netSnmpNotificationPrefix Enterprise Specific Trap (NET-SNMP-AGENT-MIB

::nsNotifyRestart) Uptime: 62 days, 5:04:42.43

10. 捕獲日誌 /var/log/messages 並查詢與SNMP相關的任何錯誤消息。