问题

Cisco的交换机和路由器到底有几个CPU,都分布在哪个模块上?这些是否能通过命令查出,查出来是否有问题,本文来深入分析一下。(本文参考Cisco的文档和现场实例进行编写的)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

分析依据

要查Cisco交换机和路由器上的多CPU,必须有CISCO-PROCESS MIB,从该MIB中表cpmCPUTotalTable 查找到对象cpmCPUTotal5minRev(即5分钟CPU收到的占有率),通过通过这个表的CPU索引 cpmCPUTotalPhysicalIndex 找到CPU所在位置;最好后通过索引,从entPhysicalName 对象找到CPU分布在那些模块。

cpmCPUTotal5minRev的值需要确认IOS版本,再确认不同的对象。
Cisco 交换机、路由器多CPU深入分析

 

综上,分三步查找:

 

1、          cpmCPUTotal5minRev (.<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1.3.6.1.4.1.9.9.109.1.1.1.1.5) (以IOS12.0(3)T-12.2(3.5) 之间为例),查找该设备有几个CPU,同时每个CPU占有率多少。

 

2、          cpmCPUTotalPhysicalIndex (.1.3.6.1.4.1.9.9.109.1.1.1.1.2) 查找CPUcpmCPUTotalTable 中的索引。

 

3、          entPhysicalName (.1.3.6.1.2.1.47.1.1.1.1.7) 通过引用索引,定位CPU在哪个板卡上。

 

 

实例分析(Cisco catalyst 6509

 

三步:

 

1、查找CPU的个数,及5分钟占有率

C:\ >snmpwalk 10.1.0.2 .1.3.6.1.4.1.9.9.109.1.1.1.1.5

cisco.ciscoMgmt.109.1.1.1.1.5.1 : Unsigned32: 6

cisco.ciscoMgmt.109.1.1.1.1.5.2 : Unsigned32: 7

cisco.ciscoMgmt.109.1.1.1.1.5.3 : Unsigned32: 91

cisco.ciscoMgmt.109.1.1.1.1.5.4 : Unsigned32: 91

 

Cisco 6509交换机有4CPU,分别占用为 6% 7%91%91%

 

2、查找CPU的索引

 

C:\ >snmpwalk 10.1.0.2 .1.3.6.1.4.1.9.9.109.1.1.1.1.2

cisco.ciscoMgmt.109.1.1.1.1.2.1 : INTEGER: 4017

cisco.ciscoMgmt.109.1.1.1.1.2.2 : INTEGER: 4001

cisco.ciscoMgmt.109.1.1.1.1.2.3 : INTEGER: 1007

cisco.ciscoMgmt.109.1.1.1.1.2.4 : INTEGER: 5007

 

3、通过索引,定位CPU在哪些板卡上

 

C:\ >snmpget 10.1.0.2 .1.3.6.1.2.1.47.1.1.1.1.7.4017

47.1.1.1.1.7.4017 : OCTET STRING- (ascii):    CPU of Routing Processor 5

 

C:\ >snmpget 10.1.0.2 .1.3.6.1.2.1.47.1.1.1.1.7.4001

47.1.1.1.1.7.4001 : OCTET STRING- (ascii):     CPU of Switching Processor 5

 

C:\ >snmpget 10.1.0.2 .1.3.6.1.2.1.47.1.1.1.1.7.5007

47.1.1.1.1.7.5007 : OCTET STRING- (ascii):  CPU of Sub-Module 1 DFC Card

 

C:\>snmpget 10.1.0.2 .1.3.6.1.2.1.47.1.1.1.1.7.1007

47.1.1.1.1.7.1007 : OCTET STRING- (ascii):  CPU of Sub-Module 2 DFC Card

 

 

 

通过参看交换机的板卡,定位对应关系:

 <?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /> Cisco 交换机、路由器多CPU深入分析

 

从上面的分析上看

 

 

可以看出6509 配置的5个模块,CPU的分布如下:

 

板卡号
模块名
子模块名
Cpu个数
CPU占用率
1
16SFM  1000MB模块
DFC
1
91%
2
16SFM  1000MB模块
DFC
1
91%
3
81000 MB 模块

-

0

 

4
48100 MB 模块

-

0

 

5
SUP 720 引擎
PFCMSFC2
2
PFC 6% MSFC2 7%

 

为什么DFC CPU 占有率如此高?

 

DFC中有一个进程为  lcp schedular ,这个进程在系统初始化的时候,占用CPU时间为100% ,之后其他的进程需要CPU时间时,分配给其他的进程,也就是说lcp scheduler 占用的都是没有用的CPU时间, lcp scheduler 进程是接管所有没有用的CPU时间来动态分配CPU

某些网管软件和命令 show process cpu  不关心DFCcpu ,所以查不到。

 

参考:

How to Collect CPU Utilization on Cisco IOS Devices Using SNMP

转载于:https://blog.51cto.com/zhuowq/97986

相关文章:

  • 2021-11-03
  • 2021-10-21
  • 2021-08-03
  • 2021-12-28
  • 2022-02-03
  • 2021-10-19
  • 2021-12-24
  • 2021-12-09
猜你喜欢
  • 2021-12-16
  • 2022-02-08
  • 2021-09-22
  • 2021-12-16
  • 2021-11-13
相关资源
相似解决方案