ESXI实现硬盘直通

  Virtualization-虚拟化

vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST12000NM00072D2A1101________________________________ZJV1YB4T /vmfs/volumes/6300307e-a5446214-4630-00e0b41f61d2/NAS_Moive.vmdk

视频链接 

硬盘编号查询:

括号里面的复制

Datastore UUID查询:

如果需要取消硬盘直通执行以下步骤:

在 VMware ESXi 中,硬盘直通是通过将物理磁盘直接映射到虚拟机来实现的。如果想要取消直通配置并删除关联的 .vmdk 文件,可以按照以下步骤操作:

1. 确认硬盘直通设置是否正在被使用

在执行任何修改之前,确保没有虚拟机正在使用该直通硬盘:

  • 登录到 ESXi 管理界面或通过 SSH 登录到主机。
  • 检查直通硬盘的 .vmdk 文件是否已挂载到某个虚拟机。
  • 如果正在使用,请关闭相关的虚拟机。

2. 删除虚拟机中的硬盘

如果直通硬盘已挂载到某个虚拟机,请执行以下步骤:

  1. 打开 vSphere Client。
  2. 选择相关的虚拟机,右键并点击 编辑设置 (Edit Settings)
  3. 找到与直通硬盘相关的设备,点击 移除 (Remove),并选择不保留文件(这不会影响原始磁盘数据)。

3. 删除直通 .vmdk 文件

使用 vmkfstools 命令删除与直通硬盘关联的 .vmdk 文件:

vmkfstools -U /vmfs/volumes/6300307e-a5446214-4630-00e0b41f61d2/NAS_Moive.vmdk

该命令会删除虚拟磁盘描述文件,但不会影响原始物理磁盘数据。

4. 验证物理磁盘状态

运行以下命令检查物理磁盘是否仍在使用:

ls /vmfs/devices/disks/

确保直通配置已经解除。

【补充说明】

一、SATA控制器做直通给群晖虚拟机(需要CPU拥有vt-d技术并且主板开启了vt-d直通)

1、在ESXI菜单“管理”—“硬件”—“PCI设备 ”,找到SATA控制器,点菜单“切换直通”,重启ESXI后,此SATA控制器的“直通”菜单显示为“活动”;

2、需要添加SATA控制器来达到直通硬盘的,在菜单上点添加其他设备,PCI设备;

3、选择正确的SATA控制器,保存。

4、回到上面【安装过程】中的第44步,编辑群晖虚拟机,设置好以后再继续安装。

二、采用RDM直通硬盘方式添加给群晖虚拟机

1、在ESXI菜单“存储”—“设备”,找到要添加给群晖的硬盘,点进去;

2、在下图这行有个括号,把括号里面的内容复制一下,这个是硬盘的ID;

3、在ESXI菜单“存储”—“数据存储”,点“数据存储浏览器”,查看并记下虚拟机保存的路径,比如我的是在“datastore1”(ESXI的存储名称)的“DS918”文件夹(虚拟机的路径);

4、在ESXI菜单“主机”—“操作”—“服务”,选“启用安全Shell(SSH)”;

5、此时ESXI首页会显示“SSH已在此主机上启用”的字样;

5、在电脑上打开SSH工具,以root用户登录到ESXI的SSH下,输入RDM直通的命令:vmkfstools -z /vmfs/devices/disks/t10.ATA_____ADATA_SP580_____________________________2J2120007081________   /vmfs/volumes/datastore1/DS918/SP580.vmdk

解释一下:

(1)t10.ATA_____ADATA_SP580_____________________________2J2120007081________为上面第2步在括号里面复制出来的硬盘ID

(2)datastore1为上面第3步显示的ESXI的存储名称

(3)DS918为上面第3步显示的群晖虚拟机的路径

(4)SP580.vmdk是这个硬盘添加给群晖虚拟机挂载的名称(这个名称不可以和现有文件重名哦,否则文件会被覆盖后会造成虚拟机无法正常运行)

6、检查命令无误后按回车执行命令,如果命令正确的话回车后没有信息显示的,否则会有信息显示。

7、在虚拟机添加现有硬盘;

8、找到刚才第6步敲命令添加的文件,选择;

9、保存;

10、回到上面【安装过程】中的第44步,编辑群晖虚拟机,设置好以后再继续安装。


有关DiskIdxMap、SataPortMap、SasIdxMap三个参数的说明:

#在群辉系统中,一个控制器默认只能控制9个硬盘,所以SataPortMap=的数值范围只能是0-9,0则表示屏蔽该控制器,不可以设为SataPortMap=0来隐藏引导盘!

#如果有多个控制器的(每个主板具体有几个控制器,请查阅主板说明书),则SataPortMap=后面的数值有几位就表示有几个控制器。比如SataPortMap=148,表明第一个控制器有1个硬盘,第二个控制器有4个硬盘,第三个控制器有8个硬盘。

#DiskIdxMap=这个参数值,按顺序从左到右每两位数为一个控制器的盘序数值,这两位数为16进制数,如果数值小于等于9或者大于10的,需要在数值前面加个0。比如DiskIdxMap=000105的意思是,第一个控制器的磁盘(引导盘)从序号1(00为序列1)开始往后排,第二个控制器的4个硬盘从序号2(01为序号2)开始往后排,第三个驱动器的8个硬盘从序号5(05为序号6)开始往后排。此时在群晖DSM7.X的系统里面看到磁盘序号就会从磁盘1(引导盘)到磁盘13。

#这里有个小技巧,可以将控制器的盘序设置超过当前最大磁盘数量。例如我想把第1个控制器的引导盘隐藏,可以改成DiskIdxMap=0C0004,引导盘在群晖系统里面就看不到了,此时在群晖DSM7.X的系统里面看到磁盘序号就会从磁盘1到磁盘12(引导盘被隐藏了),同时还治愈了很多患有强迫症的童鞋!

#SasIdxMap为SAS硬盘的个数,默认使用SATA硬盘的时候设置为0。

LEAVE A COMMENT