一、概述磁盘直通可以归纳为三种方式: 1、RDM (裸磁盘映射)RDM是引用于VMware的裸磁盘映射。将单个硬盘或者分区,通过qemu进行映射到虚拟机。通过这种方式,硬盘会在虚拟机内会认为是一个qemu-hdd。 2、磁盘控制器直通在DAS架构中,硬盘都是连接到硬盘控制器(Nvme除外),由硬盘控制器管理。因此直通了磁盘控制器,就会让磁盘控制器下的所有硬盘间接直通到虚拟机。通过这种方式,硬盘会在虚拟机内会认为是一个物理磁盘,具有smart属性。 3、nvme直通Nvme作为一个PCIe设备,那么只需要安装PCIe方式进行直通。开启iommu,再去虚拟机-硬件添加即可。 二、具体操作方法1、RDM磁盘直通(不推荐)注:不需要开启iommu。只能在PVE命令行中添加。 我们可以通过下面命令,列出当前的硬盘列表
如下面的例子 total 0 drwxr-xr-x 2 root root 500 Jan 1 10:49 . drwxr-xr-x 7 root root 140 Jan 1 10:46 .. lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-GLOWAY_YCT4TNVMe-M.2_80_T23110801290 -> ../../nvme1n1 lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-GLOWAY_YCT4TNVMe-M.2_80_T23110801290_1 -> ../../nvme1n1 lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-nvme.1e4b-505342483633343130353033333035-5072656461746f722053534420474d37204d2e3220345442-00000001 -> ../../nvme0n1 lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-nvme.1e4b-543233313130383031323930-474c4f5741592059435434544e564d652d4d2e322f3830-00000001 -> ../../nvme1n1 lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-Predator_SSD_GM7_M.2_4TB_PSBH63410503305 -> ../../nvme0n1 lrwxrwxrwx 1 root root 13 Jan 1 10:46 nvme-Predator_SSD_GM7_M.2_4TB_PSBH63410503305_1 -> ../../nvme0n1 lrwxrwxrwx 1 root root 9 Jan 1 10:46 usb-Generic_MassStorageClass_000000001621-0:0 -> ../../sdb 上面nvme开头的是nvme硬盘,如果是ata开头是走sata或者ata通道的设备。scsi开头是scsi设备-阵列卡raid或者是直通卡上的硬盘。 我们可以通过 例如你有一个虚拟机,虚拟机的vmid是101,–scsiX,这里的X是整数 你打算直通intel的一个nvme硬盘,那么你可以使用下面命令 执行之后,就可以在硬件页面中看到这个硬盘。 也可以使用ide或者sata形式直通硬盘,如下
建议为scsi设备,这样性能理论上是最优秀的。 需要注意的是,scsi会有序号,如scsi1,scsi0。在操作之前,应该要知道哪些scsi号是空的。对于pve来说,sata最多有6个设备。如果要使用sata类型直通,请勿超过sata5. 如果想要了解什么最多6个sata,请参考 如果需要取消直通,可以使用命令 如上面的例子,你应该输入
出现update 即代表成功。可返回网页上查看。 root@pve:~# qm set 101 --delete scsi1 update VM 101: -delete scsi1 磁盘控制器直通之后,虚拟机可以获得全部的磁盘属性。 需要注意的是,你需要多个磁盘控制器,且Proxmox VE系统安装在非需要直通的硬盘控制器上,否则会将系统直通给虚拟机,导致系统崩溃。 2、 磁盘控制器直通(推荐)查看硬盘所属硬盘控制器
total 0 drwxr-xr-x 2 root root 0 Jan 1 13:30 . drwxr-xr-x 4 root root 0 Jan 1 13:30 .. lrwxrwxrwx 1 root root 0 Jan 1 13:30 259:0 -> ../../devices/pci0000:00/0000:00:1b.0/0000:03:00.0/nvme/nvme1/nvme1n1 lrwxrwxrwx 1 root root 0 Jan 1 13:30 259:1 -> ../../devices/pci0000:00/0000:00:1b.0/0000:03:00.0/nvme/nvme1/nvme1n1/nvme1n1p1 lrwxrwxrwx 1 root root 0 Jan 1 13:30 259:2 -> ../../devices/pci0000:00/0000:00:1b.0/0000:03:00.0/nvme/nvme1/nvme1n1/nvme1n1p2 lrwxrwxrwx 1 root root 0 Jan 1 13:30 259:3 -> ../../devices/pci0000:00/0000:00:1b.0/0000:03:00.0/nvme/nvme1/nvme1n1/nvme1n1p3 lrwxrwxrwx 1 root root 0 Jan 1 13:30 259:4 -> ../../devices/pci0000:00/0000:00:01.2/0000:02:00.0/nvme/nvme0/nvme0n1 lrwxrwxrwx 1 root root 0 Jan 1 13:30 8:0 -> ../../devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda lrwxrwxrwx 1 root root 0 Jan 1 13:30 8:1 -> ../../devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda/sda1 lrwxrwxrwx 1 root root 0 Jan 1 13:30 8:16 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-6/2-6:1.0/host8/target8:0:0/8:0:0:0/block/sdb lrwxrwxrwx 1 root root 0 Jan 1 13:30 8:2 -> ../../devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda/sda2 lrwxrwxrwx 1 root root 0 Jan 1 13:30 8:3 -> ../../devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda/sda3 如上面所示, 如果不知道pve所在的硬盘。可以使用命令lsblk查看,有pve-root的,便是pve所在的硬盘 root@pve:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 1.8T 0 disk ├─sda1 8:1 0 8G 0 part ├─sda2 8:2 0 2G 0 part └─sda3 8:3 0 1.8T 0 part sdb 8:16 1 0B 0 disk nvme1n1 259:0 0 3.7T 0 disk ├─nvme1n1p1 259:1 0 1007K 0 part ├─nvme1n1p2 259:2 0 1G 0 part /boot/efi └─nvme1n1p3 259:3 0 3.7T 0 part ├─pve-swap 252:0 0 8G 0 lvm [SWAP] ├─pve-root 252:1 0 96G 0 lvm / ├─pve-data_tmeta 252:2 0 15.9G 0 lvm │ └─pve-data-tpool 252:4 0 3.6T 0 lvm │ ├─pve-data 252:5 0 3.6T 1 lvm │ └─pve-vm--100--disk--0 252:6 0 4G 0 lvm └─pve-data_tdata 252:3 0 3.6T 0 lvm └─pve-data-tpool 252:4 0 3.6T 0 lvm ├─pve-data 252:5 0 3.6T 1 lvm └─pve-vm--100--disk--0 252:6 0 4G 0 lvm nvme0n1 259:4 0 3.7T 0 disk 根据返回结果,我的pve系统是安装在nvme1n1上,所以切勿直通sdb nvme1n1,避免pve系统崩溃,本次安装nas,我直通sda,这是一块SATA固态 。 具体直通流程很简单,首先开启硬件直通功能后,然后在硬件页面上添加PCI设备即可。如何开启直通功能,参考 然后在硬件页面添加pci设备,并且点击高级,勾选PCIe设备 之后虚拟机内,就可以看到磁盘的信息了 三:Nvme直通(推荐)Nvme作为一个PCIe设备,那么只需要安装PCIe方式进行直通。开启iommu,再去面板上添加即可。 同时也要记得勾选PCIe设备。 在虚拟机内,也能正常识别。 |
|