记一次磁盘故障处理

查看服务器当前配置信息

主要是查看当前服务器磁盘的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详见主机运维,获取“快速服务代码”(打电话请求支持时会用到):

image-20230812174858269

  • 然后会有技术人员指导操作,有什么问题尽管问吧,服务态度还是不错的!!!

故障信息采集

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 
	
# 原因是与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 
   
 # 安装完成后更改Run脚本,把安装操作注释掉,直接进行日志采集
 [root@db08 linux]# ./Run-Linux-PERC6-v1.0.sh 
 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规则放行服务端口,云主机就不用了,申领时直接使用内网防火墙就可以。

迁移过程如下:

  • 检查当前服务器部署的服务:netstat -lntp
  • 部署要迁移的服务;
  • 特殊文件处理:Geo_location、ip_location 直接从源机器拷贝到备份主机开机即用;
  • 部署中间件服务:filebeat(收集日志)、etcd;
  • 项目部署完成后检测服务的可用性:curl接口、查看日志信息(此处收集到日志说明服务正常):

image-20230812175232131

  • Note: 对外服务还需要通知第三方(百度、wechat等)配置ip白名单(物理机当前使用统一的外网ip,不用处理;云主机使用nat网关做的端口映射,需要提醒第三方将该网关ip加入白名单中);

磁盘更换&&项目回迁

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

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

posted @ 2023-08-12 17:53  寻梦99  阅读(85)  评论(0)    收藏  举报