简介
本文是对文档“Nexus 7000 Supervisor 2/2E Compact Flash Failure Recovery”的扩展,该文档可解决所有可能的故障场景。如果闪存恢复工具无法运行,本文档可能会派上用场。建议对设备进行控制台访问以执行更改。此外,强烈建议不要在Linux内核下进行任何更改,因为这可能对交换机操作产生影响。建议进行思科TAC监督。
背景
如另一文档所述,每个N7K管理引擎2/2E都配备2个RAID1配置的eUSB闪存设备,一个主闪存设备和一个镜像。它们共同为引导映像、启动配置和持久应用程序数据提供非易失性存储库。在机箱中管理引擎的RAID失败时,我们运行闪存恢复工具来修复此问题。在几乎所有情况下,如果闪存恢复工具无法运行,我们都会选择重新加载/故障切换Supervisor。在某些情况下,可以在不重新加载/故障切换的情况下修复此问题。
先决条件
要求
思科建议您了解Cisco Nexus OS、存储或闪存磁盘恢复方法和Linux级调试。
使用的组件
Nexus 7000 系列交换机
症状
在Supervisor上观察到RAID故障,当尝试恢复受影响Supervisor的闪存时,运行闪存恢复工具时出现以下错误,
交换机将进入Raid故障状态,错误代码为0xe1
ERROR: Cannot perform recovery. /dev/sdb has incorrect partition info.
ERROR: Disk /dev/sdb needs to be manually inspected for errors.
INFO: No recovery was attempted on module 5. All flashes left intact.
INFO: A detailed copy of the this log was saved as volatile:flash_repair_log_mod5.tgz.
解决方案
在交换机上加载调试插件,以登录Linux外壳,
Switch# load bootflash:n7000-s2-debug-sh.6.1.4a.gbin
运行命令时请小心。
收到linux提示后,根据错误消息查找受影响的分区。在本例中为/dev/sdb。也可能是其他分区。
Linux(debug)# ls -l /dev/sd?
brw-r----- 1 root root 8, 0 Aug 28 2015 sda
brw-rw-r-- 1 root disk 8, 32 Dec 18 2013 sdc
brw-rw-r-- 1 root disk 8, 48 Dec 18 2013 sdd
brw-rw-r-- 1 root disk 8, 64 Dec 18 2013 sde
brw-rw-r-- 1 root disk 8, 80 Dec 18 2013 sdf
brw-rw-r-- 1 root disk 8, 96 Dec 18 2013 sdg
brw-rw-r-- 1 root disk 8, 112 Dec 18 2013 sdh
brw-rw-r-- 1 root disk 8, 128 Dec 18 2013 sdi
brw-rw-r-- 1 root disk 8, 144 Dec 18 2013 sdj
brw-rw-r-- 1 root disk 8, 160 Dec 18 2013 sdk
brw-rw-r-- 1 root disk 8, 176 Dec 18 2013 sdl
brw-rw-r-- 1 root disk 8, 192 Dec 18 2013 sdm
运行恢复工具时发现分区丢失,导致错误。手动创建缺少的分区,其权限与其他块相同。
Linux(debug)# mknod -m 664 /dev/sdb b 8 16
现在,我们可以在/dev下看到sdb分区,
Linux(debug)# ls -l /dev/sd?
brw-r----- 1 root root 8, 0 Aug 28 2015 sda
brw-rw-r-- 1 root root 8, 16 May 26 07:31 sdb
brw-rw-r-- 1 root disk 8, 32 Dec 18 2013 sdc
brw-rw-r-- 1 root disk 8, 48 Dec 18 2013 sdd
brw-rw-r-- 1 root disk 8, 64 Dec 18 2013 sde
brw-rw-r-- 1 root disk 8, 80 Dec 18 2013 sdf
brw-rw-r-- 1 root disk 8, 96 Dec 18 2013 sdg
brw-rw-r-- 1 root disk 8, 112 Dec 18 2013 sdh
brw-rw-r-- 1 root disk 8, 128 Dec 18 2013 sdi
brw-rw-r-- 1 root disk 8, 144 Dec 18 2013 sdj
brw-rw-r-- 1 root disk 8, 160 Dec 18 2013 sdk
brw-rw-r-- 1 root disk 8, 176 Dec 18 2013 sdl
brw-rw-r-- 1 root disk 8, 192 Dec 18 2013 sdm
从linux外壳退出,然后再次运行闪存恢复工具。
这次没有任何错误消息,主闪存上的Raid故障已恢复(0xf0)。 使用命令确认了相同情况,
"slot x show system internal raid | i i cmos|block | head line 5"
它应该运行正常,不会出现此类错误,并且应该能够从Raid故障状态恢复受影响的Supervisor。如果恢复工具继续无法运行,可能是由于其他原因或分区实际损坏,我们可能必须重新加载/故障切换。
相关信息