EMC Unity存储(VNXe) service Mode和Normal Mode的一些说明

本文介绍下EMC unity存储设备(也包含VNXe存储设备)的两种工作模式:

  • Service mode:也叫做rescue mode,存储OS工作不正常或者有其他故障,就会进入这个模式,无法对外提供服务
  • Normal mode:这个就是正常的存储工作模式。

Service mode其实是unity 存储系统工作在一种degrade的模式下,对比大家熟悉的VNX,其实也有degrade模式,就是存储故障灯变为蓝色常亮的情况,无法对外提供服务,但是存储系统的硬件工作是正常的。

开始之前,先上大招,对于很多维护人员的基本判断,如果存储系统能够启动到service mode,从硬件上来看,控制器95%以上是正常,内存不保证,如果内存有故障,启动的时候也会到service mode,所以如果看到系统启动到了service mode,就不要在来回更换控制器折腾了,基本上没什么用。

简单理解,service mode,就是存储系统只启动了一个最小的Linux系统,上面几乎没有什么存储软件运行。下面是service mode的功能:

  • 运行在 initramfs
  • 如果两个sp都工作在service mode,则没有 任何的存储软件运行。当然,如果一个控制器是正常的,则存储软件的所有功能都可以在这个控制器上运行。
  • 会自动mount一些分区,但不是所有的分区
  • 图形界面有时候可以访问,有时候不行,但访问也就是提示Service mode,里面也没有什么功能。下面是serivce mode登录的界面,供参考。
  • CSX 和NT mirror driver是启动的,可以访问backend,其实就是四个系统盘上的信息,用于做一些修复工作。
  • 内部的网络是启动的,原来的密码,用户名,ip地址等这些信息是有的,这些是从NVRAM中读出来的。有时候ip地址也拿不到,不一定。
  • 如果对端的SP没有正常运行,管理地址的IP是有的,对外的sshd和web服务是打开的,也就是说可以用ssh来访问service mode。

为什么会进入 service mode?

  • POST的时候检查到了系统有硬件故障。
  • mSATA 的boot Partition 坏了或者missing了
  • SAS 后端访问不到
  • DPE中的四块系统盘有多个错误
  • 系统启动连续失败了三次
  • 在control LUN上有cache dirty

根据上面这些描述就可以看到,系统进入了service mode不是简单更换控制器来解决问题的,要查找为什么进入了service mode来确定下一步的故障维修方案。问题来了,如何知道是什么原因进入到了service mode呢?简单有效的办法就是监控系统的启动过程,当然联系我们是最简单的办法,加vx wechat at StorageExpert。

如何监控启动过程?

  • 对于POST和mini Linux 的启动过程,可以使用IPMI tools来监控
  • 如果Linux启动以后,Linux的boot log保存在/var/log/message
  • 在root OS启动以后,boot log保存在/EMC/C4Core/log/start_c4.log

有些情况下,我们是需要主动把控制器放到service mode的,比如更换控制器内部的一些备件,如内存,BBU电池等。那么如何手工把控制器放置到service mode呢?简单方法可以通过图形界面,在控制器的部分,有菜单选择place to service mode。如果能力强一点,可以通过命令行的方式来:下面是具体的命令:

spb:~$ svc_rescue_state -s

spb:~$ svc_shutdown -r

如果要把两个控制器都放置到service mode,要先把非primary的sp先放置到service mode,然后再把primary的sp放置到service mode。

下面的命令是从service mode把控制器拉回正常模式,下面的命令只有是多次重启导致的问题才能拉回正常模式,其他有故障的情况,是不可能通过这个命令就可以让控制器回到正常模式的。

Svc_rescue_state -c

Svc_shutdown -r

系统到了service mode,一定是有软硬件方面的故障,建议不要随意插拔控制器,更换控制器,reimage 系统的方法来试图恢复系统,很多时候情况会越高越糟,最后丢失数据的情况屡见不鲜。可以收取正常控制器的日志,收取service mode控制器的boot log,然后联系vx StorageExpert来进行处理。

相关推荐
小南家的青蛙6 小时前
微服务体系下DevOps运维岗位面试方案设计
运维·面试·职场和发展·devops
知已难寻16 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
星恒随风1 天前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio1 天前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
坤坤子吖1 天前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
Sayai1 天前
Neo4j 图数据质量检查实战:环路检测、孤立节点与连通分量,两条 Cypher 引出的数据体检清单(含变长路径性能陷阱)
运维·neo4j·图数据库·数据质量·cypher
青瓦梦滋1 天前
Redis主从复制
服务器·数据库·redis·缓存·bootstrap
Elastic 中国社区官方博客1 天前
更少的位数,相同的召回率:DiskBBQ 更保守的自动校准扫描
大数据·运维·开发语言·人工智能·elasticsearch·搜索引擎
方便面不加香菜1 天前
Docker Volume -- 管理卷Volume详解
运维·docker·容器
沫璃染墨1 天前
从零入门计算机网络系列(十八):TCP连接管理详解——从三次握手与四次挥手到TIME_WAIT机制
运维·服务器·网络·c++·网络协议·tcp/ip·tcp