如何找出黑群晖中的硬盘与实际物理硬盘的对应关系

首先,本文并不是教程,只是记录一下我在黑群晖上爬行的经验。
然后,本文只针对在 ESXi 6.7u3 上,使用 RDM 硬盘直通的黑群晖虚拟机。
最后, 操作有风险!操作有风险!操作有风险! 重要的事情说三遍!

黑群晖嘛,既然是黑的,我也不好意思多说什么。对 SAS 支持不好,如果将硬盘通过虚拟 SATA 控制器直通到 DSM 又无法显示原始信息。

DSM_Locate_HDD_No_Smart.PNG

这怎么找出对应的物理硬盘嘛!让人抓狂。

然后,想起了 ESXi 里面能看到硬盘分区表,那么如果我在 DSM 里面把硬盘分区表抹掉,这样不就知道到底是对应哪块物理硬盘了么。

如果一个硬盘已经在 DSM 中初始化,那么分区表大概是这样的。

DSM_Locate_HDD_Partition_table.PNG

现在要把分区表清理掉。

首先,SSH 进入 DSM,先查看有哪些硬盘

ls /dev/sd?

DSM_Locate_HDD_List_dev.PNG

然后,查看一下存储池都在使用哪些硬盘。

cat /proc/mdstat

DSM_Locate_HDD_mdstat.PNG
其中 md0 和 md1 是系统分区阵列,md2 和 md3 是跟存储池相关的阵列。可以看出,在我这个例子当中,sda 和 sdb 并没有参与到阵列当中,也就是说这两块硬盘是可以安全弹出的。

操作之前先来看一下 /dev/sda 的分区表信息。

sudo fdisk -l /dev/sda

DSM_Locate_HDD_fdisk_before.PNG
可以看到,这块硬盘上只有两个系统分区,并没有数据分区,也就是已经被初始化,但是没有加入到任何阵列当中。

接下来,清理掉这两块硬盘的分区表。再次声明,此操作有风险,操作不慎会导致数据丢失!

sudo dd if=/dev/zero of=/dev/<sd?>  bs=512  count=1

DSM_Locate_HDD_remove_partitions.PNG

然后,再来看一下清理之后的分区表信息。
DSM_Locate_HDD_fdisk_after.PNG
分区表已经空啦!

回到 ESXi 找到那个被清空分区表的硬盘。
DSM_Locate_HDD_Partition_cleared.PNG

然后根据 naa 地址,点亮硬盘灯。

esxcli storage core device set -d <naa_id> -l=locator -L=60

到服务器上就能找到对应的物理硬盘啦!
IMG_20211105_115152_resized.jpg


提醒一下,使用 RDM 直通的硬盘,不支持热插拔。要更换硬盘必须先彻底关机,而且要在虚拟机设置里将对应的硬盘连带 vmdk 都删掉,然后重新通过 Add raw disk 将新硬盘添加到虚拟机中。

添加新评论