簡介
本文說明如何從量程原則套件(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
目錄。若要尋找正確的目錄:
-
使用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
-
檢視伺服器的檔案後,您可以找到包含特定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上的活動負載平衡器虛擬機器上執行這些步驟。
- 使用以下命令確保snmpd進程在各自的VM上正常工作:
service snmpd status
- 如果snmpd服務已停止,請使用以下命令啟動該服務:
service snmpd start
- 確保iptables已關閉,並檢查UDP埠162的狀態(如果在NMS中也使用UDP埠162)。
- 使用以下命令確保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
包含共用二進位制檔案和應用程式的運行時庫。
- 輸入
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
- 為了確保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。
- 確保
snmpd.conf
檔案包含行 rocommunity Broadhop
使用以下命令: cat /etc/snmp/snmpd.conf
此行是必需的,因為從各種QNS VM到活動負載平衡器VM的所有內部陷阱都通過預設社群名稱傳送 Broadhop
.
- 檢查以確保負載平衡器和外部NMS系統在命令中使用相同的陷阱社群名稱:
/etc/snmp/scripts/snmp_communities
例如,確保負載平衡器和外部NMS系統都使用 trap_community=Cisco
.
- 請檢視
/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
- 捕獲日誌
/var/log/messages
並查詢與SNMP相關的任何錯誤消息。