cpu会出现什么故障(CPU故障)
cpu会出现什么故障(CPU故障)
CPU使用率高故障处理步骤- 检查CPU使用率是否偏高。
- 多次执行命令display cpu查看设备CPU使用率,确认是否持续偏高。
- 如果CPU平均使用率(“System CPU Using Percentage”字段)持续高于75%,或者单个CPU的使用率(“Current”字段)持续高于75%,那么可以确认CPU使用率偏高。<HUAWEI> display cpu CPU utilization statistics at 2016-11-02 06:16:36 772 ms System CPU Using Percentage : 6% CPU utilization for five seconds: 5% one minute: 5% five minutes: 5%. Max CPU Usage : 36% Max CPU Usage Stat. Time : 2016-11-01 12:39:45 908 ms State: Non-overload Overload threshold: 90% Overload clear threshold: 75% Duration: 480s --------------------------- ServiceName UseRate --------------------------- SYSTEM 6% AAA 0% ...... --------------------------- CPU Usage Details ---------------------------------------------------------------- CPU Current FiveSec OneMin FiveMin Max MaxTime ---------------------------------------------------------------- cpu0 10% 9% 9% 9% 48% 2016-11-01 12:39:28 cpu1 4% 3% 3% 3% 51% 2016-11-01 12:39:28 cpu2 4% 4% 3% 3% 56% 2016-11-01 12:39:18 cpu3 6% 6% 5% 5% 48% 2016-11-01 12:39:28 ----------------------------------------------------------------
- 设备CPU使用率过高常常会导致业务异常,例如BGP震荡、VRRP频繁切换,甚至用户无法登录交换机。但某些情况下,CPU使用率高并不会导致网络问题。例如交换机在某一时刻集中读取光模块信息、瞬间流量增多等情况,导致CPU使用率暂时性偏高的现象是正常的、可接受的。所以不能简单的将CPU使用率高当作故障处理,只有当设备长时间不能正常处理业务时,才需要定位是否由于CPU使用率高而引起的。
- 如下一些场景可能导致CPU使用率高,属于正常现象,而非故障。如果过一段时间,CPU使用率又恢复到正常值,则无需处理:
- 交换机单板刚启动。
- 网管系统在频繁操作交换机。
- 交换机在执行copy flash:/或输出信息量大、执行时间长的命令,如debugging、display diagnostic-information命令。
- 批量读取光模块信息(执行命令display interface transceiver或者在网管读取光模块信息)。
- 批量配置命令下发(一键式提交大量配置,或通过控制器、脚本批量下发命令)。
- 交换机在进行生成树STP的计算。
- 对于MSTP,CPU使用率同实例数和活跃端口数成正比。对于VBST,由于每个VLAN独立运行一个实例,因此在相同VLAN和端口数目下,VBST比MSTP占用更多的CPU资源。
- 交换机接收到大量路由更新信息,大规模更新路由表。
- 当接收到路由更新消息时,设备需占用CPU资源将路由信息更新到转发面。对于堆叠系统,路由信息还需要同步到其他成员交换机。
- 在路由表更新过程中影响CPU使用率大小的因素有:
- 路由表项的规模。
- 更新的频率。
- 接收更新的路由协议进程数。
- 堆叠系统成员交换机数量。
- 如下一些场景,可能导致CPU持续偏高,需要关注处理:
- 以太网广播风暴(ARP、VRRP、OSPF)。
- 大量协议报文上送CPU(如ARP-Miss、TTL-Expired、FIB-Hit)。
- SSH或Telnet、SNMP连接攻击。
- 大量端口频繁Up/Down。
- 检查各服务的CPU使用率是否异常。
- 通过命令display cpu和display system service [ service-name ]查看当前占用CPU最高的服务和进程。
- <HUAWEI> display cpu CPU utilization statistics at 2015-08-17 08:22:36 388 ms System CPU Using Percentage : 20% CPU utilization for five seconds: 4% one minute: 5% five minutes: 4%. Max CPU Usage : 63% Max CPU Usage Stat. Time : 2015-08-17 01:10:08 959 ms State: Non-overload Overload threshold: 90% Overload clear threshold: 75% Duration: 480s --------------------------- ServiceName UseRate --------------------------- SYSTEM 20% CMF 0% DEVICE 0% ...... <HUAWEI> system-view [~HUAWEI] diagnose [~HUAWEI-diagnose] display system service SYSTEM Service : SYSTEM -------------------------------------------------------------------------------- Component CID CGID Process HaState CpuUsage MemUsage -------------------------------------------------------------------------------- TTY 0x809003ED 0x809003ED 15 PRIMARY 0% 29952 SYSLOG 0x8062040F 0x620402 1000 PRIMARY 0% 2792 TELC 0x8091271C 0x91271A 10001 PRIMARY 0% 14136 SSHC 0x8092271D 0x92271B 10001 PRIMARY 0% 31852 SSHS 0x80932720 0x93271E 10001 PRIMARY 20% 20480 FTPC 0x8094271F 0x94271D 10001 PRIMARY 0% 91988 ......
- 例如,通过以上命令可以看出系统当前CPU占用率最高的服务名为“SYSTEM”,进程名为“SSHS”。
- 以下是部分常见的CPU使用率高的服务说明。
表1 常见CPU使用率高的服务及解决措施
- 通过上述表格,可以大致判断出引起CPU使用率高的原因,具体原因及措施需继续下一步,分情况排查解决。
- 检查是否配置流采样功能。
- 如果通过命令display cpu查询到“FEA” “netstream”或“FEA” “SFLOW”服务占用CPU高,可以确认设备配置了流采样功能,并且由于流量较高、采样比较高导致的CPU偏高。
- 此时需要查询流采样配置,根据接口的流量,调低流量采样比,观察CPU是否有下降到合适水平。
- 调整NetStream采样比。
- 在系统视图下配置所有接口的采样功能。
- <HUAWEI> system-view [~HUAWEI] netstream sampler random-packets 32768 inbound [*HUAWEI] netstream sampler random-packets 32768 outbound [*HUAWEI] commit
- 在接口视图下配置该接口的采样功能。<HUAWEI> system-view [~HUAWEI] interface 10ge 1/0/1 [~HUAWEI-10GE1/0/1] netstream sampler random-packets 32768 inbound [*HUAWEI-10GE1/0/1] netstream sampler random-packets 32768 outbound [*HUAWEI-10GE1/0/1] commit
- 调整sFlow采样比。<HUAWEI> system-view [~HUAWEI] interface 10ge 1/0/1 [~HUAWEI-10GE1/0/1] sflow sampling rate 32768 [*HUAWEI-10GE1/0/1] commit
- 检查是否存在网络攻击。
- 执行命令reset cpu-defend statistics all清除上送CPU报文的统计信息。隔几秒后执行命令display cpu-defend statistics all查看上送CPU报文的统计信息,判断是否存在过多由于来不及处理而丢弃的协议报文。
- 如果观察到过去五分钟(“Last 5 Min Passed/Dropped”字段)通过或丢弃的某种协议报文过多,根据组网判断是否可能出现这么多的协议报文。如果不可能出现这么多协议报文,则可基本判断为该协议报文的攻击。<HUAWEI> reset cpu-defend statistics all <HUAWEI> display cpu-defend statistics all Statistics(packets) on slot 1 : -------------------------------------------------------------------------------- PacketType Total Passed Total Dropped Last Dropping Time Last 5 Min Passed Last 5 Min Dropped -------------------------------------------------------------------------------- arp 784824 0 - 8 0 arp-miss 0 0 - 0 0 fib-hit 25993 0 - 0 0 snmp 4922372 0 - 599 0 telnet 425 0 - 0 0 ...... --------------------------------------------------------------------------------
- 交换机提供本机防攻击功能来保护CPU,解决CPU因处理大量上送CPU的报文而造成的业务中断问题。可采取以下步骤找到并处理攻击源。
- 使用本机防攻击的攻击溯源功能找出攻击源。
- <HUAWEI> system-view [~HUAWEI] cpu-defend policy policy1 //使能攻击溯源功能 [*HUAWEI-cpu-defend-policy-policy1] auto-defend enable [*HUAWEI-cpu-defend-policy-policy1] auto-defend trace-type source-ip source-mac //配置攻击溯源的溯源模式为基于源MAC地址和源IP地址 [*HUAWEI-cpu-defend-policy-policy1] auto-defend protocol all //匹配防范所有协议报文 [*HUAWEI-cpu-defend-policy-policy1] quit [*HUAWEI] cpu-defend-policy policy1 //全局应用攻击溯源策略 [*HUAWEI] commit配置基于攻击溯源的本机防攻击功能后,可以执行命令display auto-defend attack-source查看攻击源的信息(IP和MAC地址)。<HUAWEI> display auto-defend attack-source Attack Source User Table on Slot 1 : ------------------------------------------------------------------------- MAC Address Interface PacketType VLAN:Outer/Inner Total ------------------------------------------------------------------------- 0000-c102-0102 10GE1/0/1 ICMP 1000/ 4832 ------------------------------------------------------------------------- Total: 1 Attack Source IP Table on Slot 1 : ------------------------------------------------------------------------- IP Address PacketType Total ------------------------------------------------------------------------- 10.1.1.2 ICMP 1144 ------------------------------------------------------------------------- Total: 1 Attack Source Port Table on Slot 1 : ------------------------------------------------------------------------- Interface VLAN:Outer/Inner PacketType Total ------------------------------------------------------------------------- 10GE1/0/1 1000/-- ICMP 4832 ------------------------------------------------------------------------- Total: 1
- 对攻击源进行处理。
- 根据查看到的攻击源信息,结合现网情况,选择处理方法。
- 配置ARP安全功能,防范ARP协议攻击。
- 针对ARP和ARP-Miss协议报文攻击,可以部署ARP安全功能,来防止设备后续遭受这类攻击。设备支持多种ARP安全的解决方案,请参考产品文档的《配置指南-安全配置-ARP安全配置》进行配置。
- 对于CE8800&7800&6800&5800系列交换机,可配置黑名单功能,直接丢弃黑名单用户上送的报文。
- 如果判断攻击源为特定用户的恶意报文攻击,可通过ACL把符合特定特征的用户纳入到黑名单中,被纳入黑名单的用户发送的攻击报文到达设备CPU后均会被丢弃。
- 假设攻击源的IP为1.1.1.0/24,配置ACL匹配该IP,丢弃攻击报文。
- <HUAWEI> system-view [~HUAWEI] acl number 2001 [*HUAWEI-acl4-basic-2001] rule permit source 1.1.1.0 0.0.0.255 [*HUAWEI-acl4-basic-2001] quit [*HUAWEI] cpu-defend policy policy1 [*HUAWEI-cpu-defend-policy-policy1] blacklist 1 acl 2001 [*HUAWEI-cpu-defend-policy-policy1] commit
- 检查是否存在二层环路。
- 出现网络环路时,设备上MAC表频繁漂移,同时产生的广播风暴造成大量协议报文上送设备处理,导致CPU使用率高。
- 基本排查方法如下,详细排查方法参考《MAC地址漂移异常告警》。
- 定位方法
- 网络出现环路后,一般会有如下现象产生:
- 设备出现MAC漂移告警,执行display mac-address flapping命令可以查询到有MAC漂移记录。
- 设备CPU使用率偏高。
- 设备上发生环路的VLAN的接口指示灯频繁闪烁。
- 管理用户无法远程登录设备,且使用Console口登录设备时,操作比较慢。
- 通过ping命令进行网络测试时丢包或不通。
- 执行display interface命令查看接口统计信息时,接口有大量广播/组播报文。
- 设备下接的PC机上能收到大量的广播报文或未知单播报文。
- 处理建议
- 如果明确故障发生前有配置或连线变更,优先建议回退变更,否则按照如下步骤进行排查:
- 通过接口指示灯的闪烁情况和接口流量情况,确认存在广播风暴的接口。
- 根据链路拓扑,逐跳排查产生环路的设备。
- 判断产生环路的接口并破环。
- 检查是否存在STP震荡。
- 在STP频繁震荡时,设备需要不断进行STP拓扑计算,更新MAC表、ARP表等转发表,引起CPU使用率高。
- 定位方法
- 当怀疑网络中存在频繁的STP震荡时,可以通过隔几秒连续执行display stp topology-change命令查看当前STP的拓扑变化信息,也可以查看设备输出的告警和日志信息观察设备是否产生过STP拓扑变化。
- 隔几秒连续执行一次该命令,查看设备上STP拓扑变化统计信息,观察“Number of topology changes”是否有增长。
- <HUAWEI> display stp topology-change CIST topology change information Number of topology changes :5 Time since last topology change :0 days 0h:23m:19s Topology change initiator(detected) :10GE1/0/1 Number of generated topologychange traps : 5 Number of suppressed topologychange traps: 3
- 确认存在频繁的网络拓扑变化后,隔几秒连续执行display stp tc-bpdu statistics命令查看端口接收到的TC-BPDU统计,以确定TC(Topology Change)报文的来源,找到发送拓扑变化的设备。
- <HUAWEI> display stp tc-bpdu statistics -------------------------- STP TC/TCN information -------------------------- MSTID Port TC(Send/Receive) TCN(Send/Receive) 0 10GE1/0/3 2/3 0/0 1 10GE1/0/5 1/0 -/-
- 如果显示信息中只有“TC(Send)”计数增长,表明是本设备发生拓扑变化。
- 如果只是单个接口的“TC(Send)”计数增长,确定是该接口产生震荡。
- 如果是多个接口的“TC(Send)”计数增长,请查看网管事件和日志信息分析STP拓扑变化的根因,确定是哪个端口频繁震荡。
- 如果显示信息中“TC(Send/Receive)”计数均有增长,先查看本设备网管事件和日志信息排查本设备是否发生拓扑变化,产生STP震荡,再排查与发生问题的端口连接的设备是否产生STP震荡。
- 处理建议
- 打开TC保护的告警开关,帮助管理用户了解设备对TC报文的具体处理情况。
- 系统视图下,执行命令snmp-agent trap enable feature-name mstp和stp tc-protection,打开TC保护功能和告警。
- 告警开关打开后,设备会触发MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.15 hwMstpiTcGuarded和MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.16 hwMstpProTcGuarded两个告警。
- 设备开启防拓扑变化攻击功能后,在stp tc-protection interval interval-value命令指定的生成树协议处理最大数量的TC报文所需的时间内(默认2s),设备只会处理stp tc-protection threshold threshold指定的最大数量的TC报文(默认1个)。
- 根据拓扑变化情况进行处理。
- 对于接入侧端口Up/Down引起的STP拓扑变化,可以配置STP边缘端口或开启STP-BPDU保护功能,减少BPDU对CPU的冲击,配置命令如下:
- <HUAWEI> system-view [~HUAWEI] interface 10ge 1/0/1 [~HUAWEI-10GE1/0/1] stp edged-port enable [*HUAWEI-10GE1/0/1] quit [*HUAWEI] stp bpdu-protection [*HUAWEI] commit
- 收集信息并寻求技术支持。
- 如果上述步骤未能解决问题,请先按如下步骤收集相关信息,然后寻求技术支持。
- 收集上述步骤的操作结果,并记录到文件中.
- 一键式收集设备的所有诊断信息并导出文件。
- 在用户视图下,执行display diagnostic-information file-name命令,采集设备诊断信息并保存为文件。<HUAWEI> display diagnostic-information dia-info.txt Now saving the diagnostic information to the device 100% Info: The diagnostic information was saved to the device successfully.
- 生成的文本文件的缺省保存路径为flash:/,您可以在用户视图下使用dir命令可以确认文件是否正确生成。
- 当诊断信息文件生成之后,您可以通过FTP、SFTP、SCP等方式将其从设备上导出,详细操作可参考“管理本地文件”。
- 您也可以直接执行display diagnostic-information命令,并通过终端日志存盘方式获取设备诊断信息文件,详细操作可参见“设备诊断信息文件获取指导”。
- 收集设备的日志和告警信息并导出文件。
- 执行以下命令,将缓冲区的日志和告警信息保存为文件。<HUAWEI> save logfile //收集普通用户日志 <HUAWEI> system-view [~HUAWEI] diagnose [~HUAWEI-diagnose] save logfile diagnose-log //收集诊断日志 [~HUAWEI-diagnose] collect diagnostic information //收集操作系统诊断信息
- 当日志信息文件生成之后,您可以通过FTP、SFTP、SCP等方式将其从设备上导出,详细操作可参考“管理本地文件”。
- 您也可以直接执行display logbuffer和display trapbuffer命令查看设备的日志和告警信息,并通过终端日志存盘方式获取日志和告警信息文件,操作方法与设备诊断信息文件的获取方式相同,可参见“设备诊断信息文件获取指导”。
- 寻求技术支持。请您参考如下网页链接信息http://e.huawei.com/cn/how-to-buy/contact-us,寻求技术支持。
- 在技术支持过程中,请按技术支持人员的指导,将收集的所有信息和文件完整提交,方便技术支持人员进行问题定位。