专栏首页阿dai_linux硬盘故障修复 原

硬盘故障修复 原

近期公司一台服务器的磁盘告警“磁盘阵列错误”,经检查发现磁盘:“PD0/PD1/PD2 硬盘Medium Error DevId 并BadStripe PD0 PD1”,需要在服务器磁盘彻底崩溃之前进行raid修复,具体过程如下:

故障排查

根据告警信息进行定位:

查看服务器当前配置信息

主要是查看当前服务器磁盘的raid类型,结果如下:

[root@db08 linux]# hwinfo
basename: 缺少操作数
Try 'basename --help' for more information.
{
"机器型号":"R430",
"机器高度":"1U",
"CPU信息":{"CPU型号":"E5-2620","核数":6,"线程":12,"CPU个数":2},
"内存信息":{"内存型号":"M393A2G40DB0-CPB,NotSpecified","每条大小":"16G","条数":2},
"系统盘信息":{"磁盘类别":"SAS","磁盘大小":"600G","磁盘个数":4,"阵列类型":"RAID-10"},
"运行盘信息":{"磁盘类别":"","磁盘大小":"G","磁盘个数":0,"阵列类型":" Layout RAID-10"},
"备份盘信息":{"磁盘类别":"","磁盘大小":"G","磁盘个数":0,"阵列类型":" Layout RAID-10"},
"操作系统版本":"CentOSrelease",
"快速服务代码":"943XG82",
"其他信息":"null"
}

根据结果显示确定磁盘的raid类型为raid 10,如果磁盘已经严重损坏,只剩一块磁盘在工作,那么将看不出工作类型了,结果会是下面这样:

[root@db08 linux]# hwinfo disk 
basename: 缺少操作数
Try 'basename --help' for more information.
{
"机器型号":"R430",
"机器高度":"1U",
"CPU信息":{"CPU型号":"E5-2620","核数":6,"线程":12,"CPU个数":2},
"内存信息":{"内存型号":"M393A2G40DB0-CPB,NotSpecified","每条大小":"16G","条数":2},
"系统盘信息":{"磁盘类别":"/dev/sda","磁盘大小":"600G","磁盘个数":4,"阵列类型":"No"},
"运行盘信息":{"磁盘类别":"","磁盘大小":"G","磁盘个数":0,"阵列类型":" Encrypted No"},
"备份盘信息":{"磁盘类别":"","磁盘大小":"G","磁盘个数":0,"阵列类型":" Encrypted No"},
"操作系统版本":"CentOSrelease",
"快速服务代码":"943SG82",
"其他信息":"null"
}

截止目前只能确定raid类型,那么到底是什么原因导致磁盘阵列故障呢?请继续往下看。

故障定位:请求支援

到底如何定位问题所在呢???答案只有一个:日志!

日志太多了,看哪些?对硬件一窍不通的我只能请求支援——Dell服务器技术支持(https://www.dell.com/support/home/cn/zh/cnbsd1)。

  • 在Dell官网查看服务器信息,服务器的SN详见主机运维,获取“快速服务代码”(打电话请求支持时会用到):
  • 接下来打官方客服电话吧:
  • 然后会有技术人员指导操作,有什么问题尽管问吧,服务态度还是不错的!!!

故障定位:信息采集

Dell技术支持会提供日志采集工具,在此推荐使用MegaCLI8_Linux.zip (为方便使用,已上传至本地镜像库,内置使用说明),点击该链接可直接下载使用,如果在家办公,该地址不能用,提供个人自愿地址:链接: https://pan.baidu.com/s/1boCYCWLghV5XsWnv9SCMbg 密码: 3dqn。

安装和使用

因为下载的安装包内有使用说明,所以在此不做赘述,只把使用过程中的一点小问题记录一下:

# 安装出现冲突(注意:使用Run脚本安装的时候看不到该错误,所以需要手动安装调试)
[root@db08 linux]# rpm -ivh Lib_Utils-1.00-09.noarch.rpm MegaCli-8.02.21-1.noarch.rpm 
准备中...                          ################################# [100%]
	file /opt/lsi/3rdpartylibs/x86_64/libsysfs.so.2.0.2 from install of Lib_Utils-1.00-09.noarch conflicts with file from package srvadmin-storelib-sysfs-9.1.0-2757.12163.el7.x86_64
	
# 原因是与Dell服务器自带的包srvadmin冲突,直接将其卸载即可
[root@db08 linux]# rpm -e srvadmin-storelib-sysfs-9.1.0-2757.12163.el7.x86_64 --nodeps
[root@db08 linux]# rpm -ivh Lib_Utils-1.00-09.noarch.rpm MegaCli-8.02.21-1.noarch.rpm 
准备中...                          ################################# [100%]
Installing....
正在升级/安装...
   1:Lib_Utils-1.00-09                ################################# [ 50%]
   2:MegaCli-8.02.21-1                ################################# [100%]
   
 # 安装完成后更改Run脚本,把安装操作注释掉,直接进行日志采集
 [root@db08 linux]# ./Run-Linux-PERC6-v1.0.sh 
 WARNING!!!!!! 
 TTY Log collecting, Please wait a moment! Thanks!
                                     
Success in AdpEventLog
 
 FINISH...... 
 PERC TTY-log Tools for Linux had collected the logs to PERCLINUX.tgz 
 Please send the PERCLINUX.tgz file to DELL support, thanks!

完成日志采集后将日志文件发送给技术支持(对方会提前邮件和你联系)。

故障定位:剧终!

Dell技术支持经过日志排查问题后会反馈结果以及处理建议,后续需要运维和ucloud机房以及Dell工程师协调时间,更换磁盘,更换磁盘前一定要记得备份数据以及做好服务迁移啊!!!

数据备份及服务迁移

检查当前服务器信息

进行迁移和备份之前首先要做的就是清楚当前服务器的情况,主要由以下几项:

  • 硬件信息:CPU、mem、磁盘(大小、raid级别、分区状况)等等;
  • 防火墙:iptables -nvL
  • 服务信息:检查都部署哪些服务,最直接的办法就是查看当前端口使用情况
    • 检查服务器端口状态:netstat -lntp
    • 安全起见,查看一下当前服务器运行状态:htop

实施迁移

先在已有服务器看看有么有充足的资源,如果资源充足就直接使用,如果资源不足,临时申请云主机。注意: 如果使用物理机资源一定要记得根据源服务器配置iptables规则放行服务端口,云主机就不用了,申领时直接使用内网防火墙就可以。

因公司集成了devops自动化运维管理平台,所以在环境部署过程中可以直接通过devops进行,如果公司还没有实现自动化,需要手动进行部署。

迁移过程如下:

  • 检查当前服务器部署的服务,可以到 https://devops.adai.me/dashboard/rpc/ 进行查看或者使用netstat -lntp
  • 查看devops项目管理,如果对应项目已经加入devops进行管理,则可以直接通过devops进行自动化部署;
    • 注意: 使用devops管理时部署(只部署虚拟环境)完成后需要进行更新(创建项目对应的配置文件)配置。
  • 如果项目未加入devops管理,则需要手动进行处理,如test_typo项目;
  • Geo_location、ip_location直接从源机器拷贝配置文件到备份主机启动即可用;
  • filebeat(收集日志)、etcd需要通过ansible进行部署;
  • 项目迁移完成后检测服务的可用性,medweb项目可以到 https://logs.adai.me 查看日志信息(此处收集到日志说明服务正常):
  • Note: 对外服务还需要通知第三方(百度、wechat等)配置ip白名单(物理机当前使用统一的外网ip,不用处理;云主机使用nat网关做的端口映射,需要提醒第三方将该网关ip加入白名单中);

磁盘更换&&项目回迁

数据迁移完后找联系戴尔技术支持以及ucloud机房管理人员协调机房入室时间,商定后到ucloud填写服务单。

待磁盘更换完毕后安排ucloud机房管理人员重装系统,检测无误后将原有服务迁回来,确认运行正常后将临时申领的云主机资源释放掉。

(adsbygoogle = window.adsbygoogle || []).push({});

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 硬件设备——磁盘相关 原

    磁盘的组成:主要由盘片、机械手臂、磁头、与主轴马达所组成。而数据的写入其实是在盘片上面。盘片上面又可细分出扇区(Sector)与柱面(Cylinder)两种单位...

    阿dai学长
  • 分别查找主机占用CPU和占用内存最大的进程,要求能查出进程PID,启动目录,启动命令,占用文件描述符数量,占用端口

    Linux内核提供了一种通过/proc文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外...

    阿dai学长
  • redis info之memory模块详解

    阿dai学长
  • 开发应该知道的Linux系统分析-IO篇

    小文件读写的性能瓶颈是磁盘的寻址(随机读写性能更差),评估的标准是tps。大文件读写的性能瓶颈是带宽,评估的标准是持续的读写速度。Linux可以利用空闲内存作文...

    只喝牛奶的杀手
  • ASM 翻译系列第七弹:高级知识 How many partners?

    原作者:Bane Radulovic 译者: 庄培培 审核: 魏兴华 DBGeeK社群联合出品 ASM的数据冗余机制是通过将extent的镜像副本复...

    沃趣科技
  • 视频流媒体平台EasyNVR直播出现卡顿及重复播放视频片段问题应该如何解决?

    我们之前为大家解答过不少关于流媒体服务器可能出现的问题,比如降低直播延迟、302重定向、播放中断等问题,都为大家提出了适合的解决办法。我们的流媒体服务器一次授权...

    EasyNVR
  • ASM 翻译系列第十一弹:高级知识 Offline or drop?

    原作者:Bane Radulovic 译者: 庄培培 审核: 魏兴华 DBGeeK社群联合出品 Offline or drop? 当一个ASM磁盘不...

    沃趣科技
  • 云计算RAID的六种应用场景

    1、客户要求高可靠性:客户的数据最终存储到了磁盘,如SATA、SAS、SSD介质,如果磁盘损坏,数据不能丢失,怎么办?

    希望的田野
  • 操作系统核心原理-6.外存管理(上)磁盘基础

      计算机是处理数据的机器,而数据就需要有地方存放。在计算机中,可供数据存放的地方并不太多,除了内存之外,最主要的存储数据的媒介就是磁盘。对于大多数计算机领域的...

    Edison Zhou
  • 每周学点大数据 | No.60磁盘算法实践

    NO.60 磁盘算法实践 Mr. 王:前面讨论了很多理论方面的内容,从今天开始,我们研究如何从实践的角度去进行磁盘算法、并行算法和众包算法的设计。 小可:嗯,...

    灯塔大数据

扫码关注云+社区

领取腾讯云代金券