专门网

标题: ESXI硬盘RDM直通给群晖使用 [打印本页]

作者: rainsun    时间: 2017-1-16 22:32
标题: ESXI硬盘RDM直通给群晖使用
本帖最后由 rainsun 于 2017-1-17 10:21 编辑

前提

ESXi支持硬件直通(需要CPU和主板都支持VT-d),可以将PCI的硬件直接配置给虚拟机来使用。但也仅限于PCI设备,其他直接接在主板的磁盘、USB设备、CPU内置显卡等都是不能被直通的。如果希望将某个磁盘也直通给虚拟机,有两种办法:

创建RDM虚拟磁盘

通过SSH登录ESXi,获取磁盘设备标识符:

  1. ls -l /dev/disks
复制代码


敲完命令后出来类似如下:

  1. naa.200049454505080fnaa.200049454505080f:1
  2. naa.200049454505080f:5naa.200049454505080f:6
  3. naa.200049454505080f:7naa.200049454505080f:8
  4. naa.200049454505080f:9t10.ATA_____HGST_HTS541010A9E680__________________________JD1050CCG3XJZK
  5. t10.ATA_____LITEONIT_LMT2D256M3M_____________________TW0V6PN8550852CJ1446
  6. t10.ATA_____LITEONIT_LMT2D256M3M_____________________TW0V6PN8550852CJ1446:4
  7. vml.01000000002020202020204a443130353043434733584a5a4b484753542048
  8. vml.01000000005457305636504e38353530383532434a313434364c4954454f4e
  9. vml.01000000005457305636504e38353530383532434a313434364c4954454f4e:4
  10. vml.0200000000200049454505080f4d6173732053vml.0200000000200049454505080f4d6173732053:1
  11. vml.0200000000200049454505080f4d6173732053:5vml.0200000000200049454505080f4d6173732053:6
  12. vml.0200000000200049454505080f4d6173732053:7vml.0200000000200049454505080f4d6173732053:8
  13. vml.0200000000200049454505080f4d6173732053:9
复制代码

其中冒号后的数字为硬盘分区。复制不带数字的标识符,如:t10.ATA_____HGST_HTS541010A9E680__________________________JD1050CCG3XJZK

执行以下命令:

  1. vmkfstools -z /vmfs/devices/disks/<直通硬盘的标识符> /vmfs/volumes/<保存vmdk的硬盘标识符>/<VMDK名字>.vmdk
复制代码

例如:
  1. mkfstools -z /vmfs/devices/disks/t10.ATA_____HGST_HTS541010A9E680__________________________JD1050CCG3XJZK /vmfs/volumes/5851c14c-7f3006b5-33e4-000ec4ce7958/DSMdisk.vmdk
复制代码

执行命令后将为该硬盘创建RDM直通的vmdk,然后在虚拟机中添加硬盘选择所创建的vmdk即可。正常到这就结束了,如果报错请参考后文。

===========================================================================================

在创建RDM的时候,如果目标硬盘上面有ESXi能识别的分区,可能导致vmkfstools执行失败。需要在确保重要数据已经备份的情况下,删除目标磁盘上的分区。


删除物理磁盘分区方法1

以下操作有数据损坏的风险


显示现有分区:

  1. partedUtil get /dev/disks/<硬盘标识符>
复制代码

将看到类似输出:

  1. 1 2048 4982527 253 0
  2. 2 4982528 9176831 253 0
  3. 3 9437184 3907015007 15 0
  4. 5 9453280 3906822239 253 0
复制代码

其中第一列为分区编号,然后通过:

  1. partedUtil delete /dev/disks/<硬盘标识符> <分区编号>
复制代码

删除所有分区。

如果在执行删除分区操作的时候,出现错误Error: Read-only file system during write on ...,在删除之前,执行:

  1. esxcli system coredump partition set --enable false
复制代码

删除物理磁盘分区方法2

如果试图用 partedUtil delete 命令删除分区,失败。

可以通过更改磁盘的卷标,可以破坏磁盘的所有分区。所以这里用 partedUtil mklabel 命令把磁盘卷标改为 msdos 。

  1. partedUtil mklabel /dev/disks/<硬盘标识符> msdos
复制代码

提示:

如果使用到不正确的路径如

  1. /dev/disks/ vmkfstools -z /dev/disks/t10.ATA_____HGST_HTS541010A9E680__________________________JD1050CCG3XJZK  /vmfs/volumes/datastore1/db600gbhdd.vmdk
复制代码


会出现以下错误信息 ,参考前文修正路径即可

  1. Failed to create virtual disk: The specified device is not a valid physical disk device (20).
复制代码



最后上图

[attach]2397351[/attach]






作者: HOPE    时间: 2017-1-16 22:36
好像挺复杂的样子?
作者: edgesky    时间: 2017-1-16 22:45
这种变态的需求不多吧。。我刚拆了raid卡,买了个C2550D4i的板子花了1700大洋,然后直接裸的黑裙了。不然在用raid卡了今后。esxi上次被我误操作强制删了虚拟磁盘以后就再也不敢瞎搞了。esxi的分区又无解。搞数据恢复天价啊简直,还是直接的磁盘操作来的安全些。后怕啊。。。
作者: iwaitiwait    时间: 2017-1-16 22:48
以前vmware workstation支持虚拟机直接使用物理硬盘。后来可能因为太危险,就都给隐藏了,还得打一堆命令……
作者: edgesky    时间: 2017-1-16 22:48
sata直通这个事儿貌似不是所有的C系列芯片组都支持啊。好像就是超微的全系列支持吧。我弄了好几块不同型号的华擎的C224啊226啊什么的。都不支持sata直通的啊。
作者: edgesky    时间: 2017-1-16 22:49
QUOTE:
iwaitiwait 发表于 2017-1-16 22:48
以前vmware workstation支持虚拟机直接使用物理硬盘。后来可能因为太危险,就都给隐藏了,还得打一堆命令… ...

对的。早些年可以直接把C盘丢vm里面。然后format,本地系统正常运行。重启电脑后发现C盘空了。哈哈哈哈
作者: rainsun    时间: 2017-1-17 10:04
QUOTE:
edgesky 发表于 2017-1-16 22:45
这种变态的需求不多吧。。我刚拆了raid卡,买了个C2550D4i的板子花了1700大洋,然后直接裸的黑裙了。不然在 ...

所以才要直通给黑群用,这样有问题的话可以直接取下硬盘挂到ubutu下恢复
作者: rainsun    时间: 2017-1-17 10:07
QUOTE:
HOPE 发表于 2017-1-16 22:36
好像挺复杂的样子?

简单,就获取个硬盘标识,然后把物理硬盘映射成虚拟盘,再虚拟机中挂载这个虚拟盘就好了
作者: dh3001    时间: 2017-1-18 19:14
QUOTE:
HOPE 发表于 2017-1-16 22:36
好像挺复杂的样子?

他说得看起来很复杂,就是这句vmkfstools命令而已,把物理磁盘标识符转化为虚拟磁盘标识符,仅此而已

http://wenku.baidu.com/link?url= ... d8hw1JBOith1ljn5cai
作者: ssiaqgpv    时间: 2017-1-19 11:32
这种直通方式,在硬盘超过2T的情况会出问题。esxi 6.x不知道有没有改进。5.x会有。而且6.x开机就占用2G多的内存,这样就不如直接用windows的hyper-v,hyper-v的群辉用起来要比exsi下的方便,而且windows2012起,还有好用的iscsi target。
作者: edgesky    时间: 2017-1-19 16:42
QUOTE:
ssiaqgpv 发表于 2017-1-19 11:32
这种直通方式,在硬盘超过2T的情况会出问题。esxi 6.x不知道有没有改进。5.x会有。而且6.x开机就占用2G多的 ...

用hyperv少。为啥比vm方便?

作者: ssiaqgpv    时间: 2017-1-19 17:33
1、管理起来,不管怎么弄都要另一台机器。开关机都是。虽可以直通显卡,但重度用时,直通出来的显卡的那台虚拟机会不稳定。
2、虚拟机管理器占用资源较多。
3、用windows的话,机器本身还可以用来做htpc。而且现在hyper-v的资源越来越多,如果虚拟机多是windows的,就没必要用esxi了。
其实现阶段家用esxi比hyper-v的优势主要在
1、网络设置更方便,多一个虚拟交换机添多个网卡要比windows方便。
2、虚拟机的兼容性更好。osx,windows,linux,bsd等都能很好兼容,hyper-v就差些。
3、硬件资源的超量分配和使用,exsi更好。hyper-v就比较严格。
企业级的应用,exsi的HA和可管理性比hyper-v强,也更成熟。但目前这种差距在缩小。

作者: ssiaqgpv    时间: 2017-1-19 17:33
QUOTE:
edgesky 发表于 2017-1-19 16:42
用hyperv少。为啥比vm方便?

1、管理起来,不管怎么弄都要另一台机器。开关机都是。虽可以直通显卡,但重度用时,直通出来的显卡的那台虚拟机会不稳定。
2、虚拟机管理器占用资源较多。
3、用windows的话,机器本身还可以用来做htpc。而且现在hyper-v的资源越来越多,如果虚拟机多是windows的,就没必要用esxi了。
其实现阶段家用esxi比hyper-v的优势主要在
1、网络设置更方便,一个虚拟交换机添多个网卡要比windows方便。
2、虚拟机的兼容性更好。osx,windows,linux,bsd等都能很好兼容,hyper-v就差些。
3、硬件资源的超量分配和使用,exsi更好。hyper-v就比较严格。
企业级的应用,exsi的HA和可管理性比hyper-v强,也更成熟。但目前这种差距在缩小。
作者: rtm009    时间: 2017-1-19 19:12
围观
作者: edgesky    时间: 2017-1-20 07:55
QUOTE:
ssiaqgpv 发表于 2017-1-19 17:33
1、管理起来,不管怎么弄都要另一台机器。开关机都是。虽可以直通显卡,但重度用时,直通出来的显卡的那 ...

hyper-v对于很多unix定制系统无解。。。一直不愿意用这玩意。超配就算了。自己把握的事儿。我们这的几百台都不敢超的反正,用户体验上我觉得还是esxi好吧。。。另外。现在是个企业都在向linux靠拢了把我感觉。反正我们这边逐步在替换下来windows环境了,已经做了好几年了。
作者: edgesky    时间: 2017-1-20 08:01
另外,用户端我们用vm自己的应用程序虚拟化,也部署有思杰的。相比之下。思杰还是比vm和windows的应用程序虚拟化来的体验好一些感觉。
作者: aoeii    时间: 2017-1-20 21:09
hyper-v最大的硬伤是构建在windows之上,而win系统那种装个补丁就得重启的玩意儿,上面还要跑一堆虚机,偶尔应应急可以,长期不现实。我现在家里的server all in one跑exsi 5.5,直通阵列卡和显卡,跑win2012,,win10,centos6,openwrt x64,软路由,nas,htpc, linux开发环境都一勺烩了。
作者: edgesky    时间: 2017-1-21 13:22
QUOTE:
aoeii 发表于 2017-1-20 21:09
hyper-v最大的硬伤是构建在windows之上,而win系统那种装个补丁就得重启的玩意儿,上面还要跑一堆虚机,偶 ...

我的10盘也是这么干的。但是我现在拆了。因为raid卡伤不起。esxi丢下误操作丢过一次重要数据。老老实实用裸群辉+开发机了。。。
作者: yiserzm    时间: 2017-6-7 08:08
又学了一点儿知识。谢谢发布。
作者: smartsuit    时间: 2017-6-7 09:26
开始越来越讨厌VMWARE的路过。
准备研究kvm openstack docker这些玩意儿了。
作者: xxdcc    时间: 2017-6-7 17:52
GEN8 有ILO
所有问题都不是问题。。。
作者: edgesky    时间: 2017-6-8 07:20
QUOTE:
smartsuit 发表于 2017-6-7 09:26
开始越来越讨厌VMWARE的路过。
准备研究kvm openstack docker这些玩意儿了。

vm遇到瓶颈了。三年不解决,就会被intel本身的技术替换掉。尤其是网络虚拟化普及以后,cpu原生支持群集和虚拟化的时候。就是vm的死期。
作者: huadaoyingmu    时间: 2017-6-13 15:28
好东西 不知道 稳定性 好不好
作者: huadaoyingmu    时间: 2017-6-20 08:50
如果数据 机器故障 RDM 硬盘数据 怎么恢复
请指导下 谢谢!!!
作者: rainsun    时间: 2017-6-22 15:33
QUOTE:
huadaoyingmu 发表于 2017-6-20 08:50
如果数据 机器故障 RDM 硬盘数据 怎么恢复
请指导下 谢谢!!!

回头我试下
作者: huadaoyingmu    时间: 2017-6-22 20:34
mkfstools -z /vmfs/devices/disks/t10.ATA_____HGST_HTS541010A9E680__________________________JD1050CCG3XJZK /vmfs/volumes/5851c14c-7f3006b5-33e4-000ec4ce7958/DSMdisk.vmdk
这里面的UUID 5851c14c-7f3006b5-33e4-000ec4ce7958 怎么查看是哪个
作者: huadaoyingmu    时间: 2017-6-23 16:10
/vmfs/volumes/5851c14c-7f3006b5-33e4-000ec4ce7958 这个 是已经存在的路径 对吗?
就是把新硬盘连接到 这个路径里的一个文件(.vmdk)读写这个文件就等于操作整个硬盘 我理解的有没有问题 本人小白 那里说错了 请指点 谢谢!!
作者: hzx505    时间: 2017-11-17 01:07
RDM 硬盘,注意事项有哪些?
作者: SpringBell    时间: 2020-6-9 22:36
这样直通,支持14TB硬盘吗?
作者: darkdong    时间: 2021-10-11 12:12
大神,请问下,我以前已经直通好了的,我停电后,没有了.请问如何重新恢复




欢迎光临 专门网 (https://www.thinkpad.com.cn/) Powered by Discuz! X3.5