目录

简介

先决条件

使用的组件

Nexus 9000交换机如何中断

对重新加载和崩溃进行故障排除的重要数据

系统重置原因

核心文件

板载日志

进程日志

来自Logflash的日志文件

常见重置原因

与电源相关的重新加载

说明

建议：

进程崩溃

说明

推荐

EOBC故障

说明

推荐

奇偶校验错误

说明

推荐

PCIE错误

说明

推荐

<a href="http://www.cisco.com/MT/eval/zh/nopage.html" >监视器超时

说明

推荐

由于CLI或升级而手动重新加载

说明

推荐

思科漏洞 ID

简介

本文档 d说明 如何排除Nexus 9000交换机上的意外重新加载或崩溃故障。

先决条件

本文档没有任何要求。

使用的组件

本文档不限于特定的软件和硬件版本。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

Nexus 9000交换机如何中断

Cisco NX-OS是一个恢复力强的操作系统，专门设计用于在网络、系统和流程级别实现高可用性。

在Nexus 9000上发生意外重新加载有3个原因：

- 用户空间中的进程可能会发生崩溃。

- 进程或硬件可能遇到监视器超时或心跳故障。

- 内核本身遇到不可恢复的情况并崩溃。

对重新加载和崩溃进行故障排除的重要数据

- 重新加载的确切日期和时间。

- 重新加载之前发生了什么情况？是否更改了配置？规模有变化吗？设备上是否有日志？环境有什么变化吗？CPU/内存使用率是否增加？

- 交换机启动并稳定后，收集并检查输出。

- 如果交换机无法启动，请通过控制台访问，然后检查是否有输出。此外，检查交换机LED。您可以在硬件安装指南中找到有关LED的详细信息。

系统重置原因

N9K#show system reset-reason module 1

----- reset reason for Supervisor-module 1 (from Supervisor in slot 1) ---

1) At 21301 usecs after Tue Jan 17 20:29:20 2023

Reason: Reset Requested due to Fatal Module Error

Service: ipfib hap reset

Version: 9.3(8)

核心文件

N9K#show cores

VDC  Module Instance  Process-name    PID      Date(Year-Month-Day Time)

--- ------ -------- --------------- -------- -------------------------

A     B       C         D             E          2024-01-04 19:17:25

copy core://<module-number>/<process-id>[/instance-num]

copy core://B/E/C ftp://<address>/<directory>

板载日志

show logging onboard

show logging onboard kernel-trace

show logging onboard stack-trace

**************************************************************

STACK TRACE GENERATED AT Sun Sep 10 19:06:39 2023 CCT

**************************************************************

<snip>                                                                        >>>dumps kernel massages before reload

<0>[10925084.972289] [1694343998] sysServices Unexpected call in interrupt context, serviceId=824

<0>[10925084.980666] [1694343998] cctrl_set_card_offline - EOBC switch reset failed

<0>[10925084.987824] [1694343998] sysServices Unexpected call in interrupt context, serviceId=824

<0>[10925084.996200] [1694343998] cctrl_set_card_offline - EPC switch reset failed

<snip>

<4>[10925085.040600] [1694343998] Dumping interrupt statistics                >>>dump interrupt statictics

<4>[10925085.045928] [1694343998] CPU0 CPU1

<4>[10925085.051732] [1694343998] 3: 0 0 axp_irq Armada Error Handler

<4>[10925085.059909] [1694343998] 4: 0 0 axp_irq Armada MBUS unit Error Handle

<4>[10925085.068957] [1694343998] 5: 1012335907 809985523 axp_irq axp_local_clockevent

<4>[10925085.077136] [1694343998] 8: 1260801154 0 axp_irq mv_eth

<4>[10925085.084108] [1694343998] 31: 11230 0 axp_irq mv64xxx_i2c

<4>[10925085.091508] [1694343998] 41: 7111 1 axp_irq serial

<4>[10925085.098471] [1694343998] 51: 2 0 axp_irq mv_xor.0

<4>[10925085.105602] [1694343998] 52: 2 0 axp_irq mv_xor.1

<4>[10925085.112760] [1694343998] 94: 1 0 axp_irq mv_xor.2

<4>[10925085.119890] [1694343998] 95: 1 0 axp_irq mv_xor.3

<4>[10925085.127029] [1694343998] 107: 0 0 axp_irq axp-temp

<4>[10925085.134200] [1694343998] 168: 0 0 axp_irq cctrl_mrv_nmi_irq

<4>[10925085.142134] [1694343998] 195: 29 0 axp_msi_irq cctrl_sc_msi_irq

<4>[10925085.150225] [1694343998] 196: 0 2399172865 axp_msi_irq linux-kernel-bde

<4>[10925085.158325] [1694343998] IPI0 : 0 0 Timer broadcast interrupts

<4>[10925085.166130] [1694343998] IPI1 : 1711470501 3532640372 Rescheduling interrupts

<4>[10925085.173672] [1694343998] IPI2 : 0 0 Function call interrupts

<4>[10925085.181302] [1694343998] IPI3 : 44582 118572 Single function call interrupts

<4>[10925085.189541] [1694343998] IPI4 : 0 0 CPU stop interrupts

<4>[10925085.196734] [1694343998] PMU: : 0 0

<4>[10925085.202186] [1694343998] Err : 0

show logging onboard exception-log                               >>>Check if any exception is raised before reload

进程日志

N9K# show processes log details                                  >>>detail process memory usage prior to crash

Service: ethpm

Description: Test Ethernet Port Manager

Executable: /isan/bin/ethpm

Started at Wed Jun 5 18:20:46 2023 (251615 us)

Stopped at Sat Jun 8 00:08:53 2023 (661042 us)

Uptime: 2 days 5 hours 48 minutes 7 seconds

Start type: SRV_OPTION_RESTART_STATELESS (23)

Death reason: SYSMGR_DEATH_REASON_FAILURE_SIGNAL (2)

Last heartbeat 48.10 secs ago

System image name:

System image version: 7.0(3)I7(6)

PID: 28914

Exit code: signal 5 (core dumped)

CWD: /var/sysmgr/work

RLIMIT_AS: 1019819820                                             >>>limit memory usage

Virtual Memory:

CODE 1007E000 - 1068DBD4

DATA 1068E000 - 106DC3E8

BRK 1194F000 - 11CF9000

STACK FFA28650

TOTAL 576004 KB                                                   >>>memory usage before crash

来自Logflash的日志文件

Nexus 9000上有一个内置的logflash，日志文件在重新加载后仍存在。

N9K#dir logflash:log | grep messages

3714961 Jan 13 18:05:31 2024 messages

4194331 Jan 13 17:30:14 2021 messages.1

5497842 May 11 15:59:00 2021 messages.2

4194341 Jul 30 07:25:36 2022 messages.3

4194510 Feb 09 14:50:50 2023 messages.4

4194426 Jun 04 05:00:40 2023 messages.5

N9K#show file logflash:log/messages

N9K#show file logflash:log/messages.1

N9K#show file logflash:log/messages.2

N9K#show file logflash:log/messages.3

N9K#show file logflash:log/messages.4

N9K#show file logflash:log/messages.5

常见重置原因

与电源相关的重新加载

N9K#show system reset-reason

----- reset reason for module 1 (from Supervisor in slot 1) ---

1) At 280125 usecs after Fri Aug 4 02:01:14 2023

Reason: Module PowerCycled

Service: HW check by card-client

Version:

说明

Nexus 9000交换机支持N+1电源冗余。如果大多数或所有电源都断电，将会重新加载。

建议：

1.检验电源的电源线。

2.检查共用同一入口电路的其他设备是否也发生故障。

3.检查Nexus 9000或PDU上是否有电源相关警报。

进程崩溃

N9K#show system reset-reason module 1

----- reset reason for Supervisor-module 1 (from Supervisor in slot 1)

1) At 21301 usecs after Tue Jan 17 20:29:20 2023

Reason: Reset Requested due to Fatal Module Error

Service: ipfib hap reset                                              >>>ipfib process reset

Version: 9.3(8)

说明

每个服务都有自己的高可用性(HA)策略，包括心跳计时器、重新启动方法和状态重启最大重试。Cisco NX-OS软件允许大多数流程和服务的状态化重启。如果重置进程ha策略（NX-OS在进程重新启动期间无法工作）或进程重新启动时间达到最大重试次数，则会发生重新加载。

推荐

`show cores`

VDC  Module  Instance  Process-name     PID       Date(Year-Month-Day Time)

---  ------  --------  ---------------  --------  -------------------------

1    1       1         ipfib            27446     2023-01-17 20:30:30

copy core://1/27446/1 ftp://<address>/<directory>

大多数进程崩溃是软件缺陷，核心文件被保存，请打开服务请求案例进行确认。

- 核心文件可由TAC工程师解码。

- 要提交服务请求，请选择Product > Unexpected Reboot > Software Failure以向正确的团队提交问题。

EOBC故障

2018 Jan 21 01:56:42.789 N9K#%KERN-0-SYSTEM_MSG: [4590707.849157] [1516460202] EMON: module 2 is not responding on EOBC path. Reloading module. - kernel

2018 Jan 21 01:56:43.071 N9K#%MODULE-2-MOD_DIAG_FAIL: Module 2 (Serial number: xxxxxxxxxx) reported failure due to EOBC heartbeat failure in device DEV_EOBC_MAC (device error 0xc0a1b137)

说明

EOBC是以太网带外信道的简称。常规的keepalive在主控引擎和线卡之间传输。您收到的错误消息表明SUP和线路卡之间缺少心跳。如果单个心跳丢失，则可以自动忽略。但是，如果同时丢失多个心跳，则会重置线路卡。

EOBC失败通常有3个原因：

1. EOBC拥塞。您可以看到超过1个线路卡体验的EOBC丢失。

2.特定模块中的CPU占用。线路卡/主管CPU繁忙，无法处理EOBC消息。从Nexus 9000开始从7.0(3)I7(3)进行软件增强。

3.硬件故障。

推荐

1.检查重新加载前后是否有任何CPUhog受影响的线路卡。

2.检查重新加载后其它线路卡是否出现EOBC丢失。

3.检查最近是否部署了BFD或Netflow CPU使用服务。

4.如果多次出现却没有任何信息，请更换硬件。

奇偶校验错误

N9K#show logging onboard stack-trace

**************************************************************

STACK TRACE GENERATED AT Tue Sep 21 02:27:58 2021 UTC

**************************************************************

<0>[88302546.800770] [1632158876] ERROR: MACHINE: Uncorrectable

<0>[88302546.809202] [1632158876] L2CACHE ERROR: Cause 0x88

<0>[88302546.814368] [1632158876] TAG Parity Error                           >>>>>Parity error

<0>[88302546.818750] [1632158876] Kernel panic - not syncing: L2CACHE ERROR

<4>[88302546.825212] [1632158876] Cpu: 0 Pid: 0, comm:            swapper/0

说明

将信息位从1反转到0或0反转到1时，会发生奇偶校验错误。

大多数奇偶校验错误是由静电或磁相关的环境条件引起的。这些事件是随机发生的，无法预防。

系统检测到发生此错误，并强制系统崩溃，以防止处理不正确的数据。出现这种情况并不能说明存在硬件或软件问题。

推荐

奇偶校验错误可能是暂时性单事件置换(SEU)，也可能是硬件故障造成的。要确定是哪种情况，您需要监控设备48小时以确定其是否重复。

如果在48小时内没有第二次出现，则认为此问题属于临时问题，不需要执行任何操作。

频繁或重复的（硬）奇偶校验错误是由用于读写的存储器或电路物理故障造成的。在这种情况下，请更换硬件。

PCIE错误

N9K#show logging onboard stack-trace

<6>[  105.196227]     CCTRL PANIC DUMP

<6>[  105.196229] =========================

<6>[  105.196231] WDT last punched at 105192052644

<6>[  105.196234] REG(0x60) = 3c

<6>[  105.196238] REG(0x64) = 0

<6>[  105.196241] REG(0x300) = baadbeef

<6>[  105.196245] REG(0x304) = baadbeef

<6>[  105.196246] =========================

<0>[  105.197303] nxos_panic: Kernel panic - not syncing: PCIE Uncorrectable error   >>>>>PCIE Uncorrectable error

说明

PCIE错误分为两种类型：可更正错误和不可更正错误。此分类基于这些错误的影响，这些错误会导致性能下降或功能故障。

可纠正的错误不会影响接口的功能。PCIE协议无需任何软件干预或数据丢失即可恢复。这些错误由硬件检测并纠正。

不可纠正的错误会影响接口的功能。不可纠正的错误可能导致特定事务或特定PCIE链路不可靠。根据这些错误情况，不可纠正的错误可以进一步划分为非致命错误和致命错误。非致命错误导致特定事务不可靠，但PCIE链路本身完全正常。另一方面，致命错误会导致链路不可靠。

Nexus 9000检测到致命的PCIE错误，并强制系统重新加载以防止处理错误数据。

推荐

与奇偶校验错误相同。

如果在48小时内没有第二次出现，则认为此问题属于临时问题，不需要执行任何操作。

频繁出现或重复出现的错误是由物理故障导致的。在这种情况下，请更换硬件。

<a href="http://www.cisco.com/MT/eval/zh/nopage.html" >监视器超时

N9K#show system reset-reason

----- reset reason for module 1 (from Supervisor in slot 1) ---

1) At 88659 usecs after Mon Sep 24 18:33:04 2023

Reason: Watchdog Timeout

Service:

Version: 7.0(3)I7(9)

说明

看门狗计时器通常存在于嵌入式系统和其他计算机控制的设备中，在这些设备中，人类不能轻易访问设备或不能及时对故障做出反应。

Nexus 9000通过FPGA部署监视程序计时器功能。这可确保Nexus 9000能够检测软件挂起并及时重新启动交换机。

推荐

1.验证是否有任何已知软件错误影响当前版本。

2.如果问题再次出现，请收集内核跟踪和任何其他日志记录数据。

3.创建服务请求案例。

由于CLI或升级而手动重新加载

N9K# show system reset-reason

----- reset reason for module 1 (from Supervisor in slot 1) ---

1) At 343832 usecs after Sat Jan 13 17:58:53 2024

Reason: Reset Requested by CLI command reload

Service:

Version: 10.2(5)

>

4) At 282886 usecs after Fri Jan 12 07:42:33 2024

Reason: Reset due to upgrade

Service:

Version: 10.3(4a)                >>>>>version prior to upgrading

说明

默认情况下，Nexus 9000系列交换机支持中断性软件升级和降级。Nexus 9000在升级期间重新加载。

推荐

预期行为。查看记帐日志了解更多CLI会话详细信息。

CLI重新加载示例：

Sat Jan 13 17:58:40 2024:type=update:id=console0:user=admin:cmd=reload (REDIRECT)

Sat Jan 13 17:58:47 2024:type=update:id=console0:user=admin:cmd=Rebooting the switch

升级重新加载示例：

Fri Jan 12 07:35:52 2024:type=update:id=console0:user=admin:cmd=install all nxos bootflash:/nxos64-cs.10.2.5.M.bin (SUCCESS)

思科漏洞 ID

某些缺陷可能导致Nexus 9000交换机上发生意外重新加载。要确认您是否遇到了已知软件Bug，请打开TAC案例。

Cisco Bug ID

Bug标题

修复版本

Cisco Bug ID CSCwd53591

由于监视器超时而没有核心/跟踪，因此重新加载

9.3(13)

Cisco Bug ID CSCvz65993

tahoe0关闭，导致带内连接故障

9.3(9)

Cisco Bug ID CSCvs00400

由于链路抖动后监视器超时，内核死机和重新加载

9.3(3)和7.0(3)I7(8)

Cisco Bug ID CSCvr57551

Cisco Nexus 9000重新加载，内核死机 — 无法处理内核分页请求

7.0(3)I7(8)和9.3(4)

Cisco Bug ID CSCvo86286

在Nexus 9500第1代线卡的7.0(3)I7(x)上出现内核错误

7.0(3)I7(7)

Cisco Bug ID CSCvx38752

内存泄漏导致Nexus 9k重新加载“ipfib”

7.0(3)I7(9)和9.3(2)

Cisco Bug ID CSCvh13039

由于EOBC心跳导致LC/FM重新加载为CPU忙于服务hrtimer

7.0(3)I4(8)和7.0(3)I7(3)