龙空技术网

如何在线更换服务器故障硬盘之磁盘初始化与引导外来状态磁盘

小堂运维笔记 531

前言:

而今看官们对“服务器磁盘设置”大约比较看重,咱们都想要知道一些“服务器磁盘设置”的相关内容。那么小编也在网络上网罗了一些关于“服务器磁盘设置””的相关知识,希望咱们能喜欢,小伙伴们快快来学习一下吧!

前言

上一小节:小堂跟大家介绍了(正常)新硬盘接入后怎么配置成我们的操作系统可识别可使用的状态(如何在线更换服务器故障硬盘之更换并配置磁盘),其实这种磁盘我们在使用DELL服务器的IPMI、华为的IBMC等都是可以对这种磁盘进行配置。

本小节:本小节主要介绍的是我们的资产(硬盘)在回收了之后管理员并未对磁盘进行初始化的情况下又二次使用的场景。

1. 硬盘接入后状态

例如 : 做过RAID1/5的那些磁盘,我们只用其中一块的时候,在热插到我们的服务器时是没办法被DELL服务器IPMI进行管理使用的。这种情况下的硬盘接入后,在dell服务器的IPMI界面查看到是处于“外来”状态,且无法对这块磁盘进行操作。

DELL服务器识别到的外来状态磁盘图

IPMI无法对raid状态的外来磁盘进行操作

IPMI无法对raid状态的外来磁盘进行操作图

2. 使用perccli命令管理磁盘

2.1. 检查磁盘状态

root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 showController = 0Status = SuccessDescription = Show Drive Information Succeeded.Drive Information :=================---------------------------------------------------------------------------------EID:Slt DID State DG Size  Intf  Med  SED  PI  SeSz  Model                Sp---------------------------------------------------------------------------------32:7 7 UGood F  10.691 TB  SAS   HDD  N    N   512B  INTEL SSDSC2KB960G8  U---------------------------------------------------------------------------------

输出的硬盘状态图

2.2. 初始化磁盘

可通过初始化磁盘来清理磁盘的RAID信息,初始化会对磁盘进行全盘写入验证,可以用于检测磁盘是否有损坏或异常。

root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 start initializationController = 0Status = SuccessDescription = Start Drive Initialization Succeeded.

启动初始化图

2.3. 查看初始化进度

root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 show initializationController = 0Status = SuccessDescription = Show Drive Initialization Status Succeeded.-----------------------------------------------------Drive-ID Progress% Status      Estimated Time Left-----------------------------------------------------/c0/e32/s7 1 In progress ------------------------------------------------------// 状态在进行中:status = In progress// 进度:Progress% = 1%// 若磁盘容量较大初始化需要很久,可以使用【./perccli64 /c0/e32/s7 stop initialization】停止初始化,只要出现进度后就表示已经清完了raid信息,停止了初始化无法检查出磁盘是否有损坏,建议初始化完成,可以知道磁盘是否有异常。

查看初始化进度图

2.4. 初始化完成

root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s3 show initializationController = 0Status = SuccessDescription = Show Drive Initialization Status Succeeded.---------------------------------------------------------Drive-ID Progress% Status          Estimated Time Left---------------------------------------------------------/c0/e32/s3 - Not in progress ----------------------------------------------------------// 初始化完成:状态 = Not in progress----------------------------------------------------------------------------------------------------root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 showController = 0Status = SuccessDescription = Show Drive Information Succeeded.Drive Information :=================---------------------------------------------------------------------------------EID:Slt DID State DG Size  Intf  Med  SED  PI  SeSz  Model                Sp---------------------------------------------------------------------------------32:7 7 UGood -  10.691 TB  SAS   HDD  N    N   512B  INTEL SSDSC2KB960G8  U---------------------------------------------------------------------------------// 初始化完成后阵列:DG = -

2.5. 配置磁盘

这里只简单进行配置成直通模式,详细配置可查看上一篇小节:更换并配置磁盘。

没有初始化完成的磁盘无法进行配置,会报错误信息:磁盘在初始化中。

root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 set jbodController = 0Status = SuccessDescription = Set Drive JBOD Succeeded.root@nodeserver3:/opt/MegaRAID/perccli# ./perccli64 /c0/e32/s7 showController = 0Status = SuccessDescription = Show Drive Information Succeeded.Drive Information :=================---------------------------------------------------------------------------------EID:Slt DID State DG Size  Intf  Med  SED  PI  SeSz  Model                Sp---------------------------------------------------------------------------------32:7 7 JBOD  -  10.691 TB  SAS   HDD  N    N   512B  INTEL SSDSC2KB960G8  U---------------------------------------------------------------------------------

设置成直通模式后,就可以正常被操作系统识别与使用了。

3、import外来状态磁盘

因为有些磁盘由于做了raid0或其他阵列的情况,在经过热插拔后在开机后,磁盘就会变成”Foreign”外来状态。

3.1. 查看磁盘

说明:由于测试的这台服务器是华为服务器,因此使用了适用于华为服务器来的命令“storcli”,用法与perccli命令一样。

从输出可以看到有两块磁盘变为了“UBad”状态。

[root@nodeserver10 storcli]# ./storcli64 /c0 show---------- 省略    ----------Physical Drives = 4PD LIST :=======---------------------------------------------------------------------------------EID:Slt DID State DG Size Intf Med SED PI SeSz Model               Sp Type---------------------------------------------------------------------------------252:0 0 Onln   0 278.464 GB SAS  HDD N   N  512B ST300MP0005         U  -252:1 1 Onln   1 278.464 GB SAS  HDD N   N  512B ST300MP0005         U  -252:2 2 UBad   2 278.464 GB SAS  HDD N   N  512B ST300MP0005         U  -252:3 4 UBad   3 893.137 GB SATA SSD N   N  512B INTEL SSDSC2KB960G8 U  ----------------------------------------------------------------------------------EID=Enclosure Device ID|Slt=Slot No|DID=Device ID|DG=DriveGroupDHS=Dedicated Hot Spare|UGood=Unconfigured Good|GHS=Global HotspareUBad=Unconfigured Bad|Sntze=Sanitize|Onln=Online|Offln=Offline|Intf=InterfaceMed=Media Type|SED=Self Encryptive Drive|PI=Protection InfoSeSz=Sector Size|Sp=Spun|U=Up|D=Down|T=Transition|F=ForeignUGUnsp=UGood Unsupported|UGShld=UGood shielded|HSPShld=Hotspare shieldedCFShld=Configured shielded|Cpybck=CopyBack|CBShld=Copyback ShieldedUBUnsp=UBad Unsupported|Rbld=RebuildEnclosures = 1---------- 省略    ----------

查看外来磁盘状态

3.2. 转换磁盘格式

[root@nodeserver10 storcli]# ./storcli64 /c0/e252/s2 set goodCLI Version = 007.1613.0000.0000 Oct 29,2020Operating system = Linux 5.4 119-19-0008.3Controller = 0Status = SuccessDescription = Set Drive Good Succeeded.[root@nodeserver10 storcli]# ./storcli64 /c0/e252/s3 set goodCLI Version = 007.1613.0000.0000 Oct 29,2020Operating system = Linux 5.4 119-19-0008.3Controller = 0Status = SuccessDescription = Set Drive Good Succeeded.

转换磁盘格式

3.3. import引导外来状态磁盘

[root@nodeserver10 storcli]# ./storcli64 /c0/fall importCLI Version = 007.1613.0000.0000 Oct 29,2020Operating system = Linux 5.4 119-19-0008.3Controller = 0Status = SuccessDescription = Successfully imported foreign configuration.

import外来状态磁盘

3.4. 查看import结果

sdc、sdd磁盘已可以被操作系统识别。

[root@nodeserver10 storcli]# lsblkNAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda 8:0    0 278.5G  0 disk├─sda1 8:1    0    20G  0 part /├─sda2 8:2    0     2G  0 part [SWAP]├─sda3 8:3    0    20G  0 part /usr/local└─sda4 8:4    0 236.5G  0 part /datasdb 8:16   0 278.5G  0 disksdc 8:32   0 278.5G  0 disksdd 8:48   0 893.1G  0 disk           

查看import结果

总结

以上内容是本篇文章的全部,在配置磁盘上只简单说明了一下配置成直通模式的命令,若想要配置成raid可以查看小堂之前发布的文章。本篇文章主要帮助我们如何在线不停机的情况下完成磁盘的初始化与引导使用。

后续将继续更新关于日常可能会发生的一些情况的解决办法:例如raid里面的其中一块盘故障,怎么在线更换这块盘与重构raid但不影响业务数据等内容。

如果大家有疑问或者新的想法,欢迎联系我沟通交流。

标签: #服务器磁盘设置