我正在尝试使用以下 PowerCLI 脚本在 ESXi 6.0 服务器上设置硬件直通:
Connect-VIServer $server -User $user -Password $pwd
$AllVirtualMachines = Get-VM -Location "Dev Machines"
foreach ($VirtualMachine in $AllVirtualMachines)
{
Get-PassthroughDevice -VM $VirtualMachine | Remove-PassthroughDevice -Confirm:$false
}
foreach ($VirtualMachine in $AllVirtualMachines)
{
$PciDeviceList = Get-PassthroughDevice -VMHost 172.16.7.130 -Type Pci
Add-PassthroughDevice -VM $VirtualMachine -PassthroughDevice $PciDeviceList[0] -Confirm:$false
}
foreach ($VirtualMachine in $AllVirtualMachines)
{
$PciDeviceList = Get-PassthroughDevice -VMHost 172.16.7.130 -Type Pci
Add-PassthroughDevice -VM $VirtualMachine -PassthroughDevice $PciDeviceList[1] -Confirm:$false
}
foreach ($VirtualMachine in $AllVirtualMachines)
{
$PciDeviceList = Get-PassthroughDevice -VMHost 172.16.7.130 -Type Pci
Add-PassthroughDevice -VM $VirtualMachine -PassthroughDevice $PciDeviceList[2] -Confirm:$false
}
foreach ($VirtualMachine in $AllVirtualMachines)
{
$PciDeviceList = Get-PassthroughDevice -VMHost 172.16.7.130 -Type Pci
Add-PassthroughDevice -VM $VirtualMachine -PassthroughDevice $PciDeviceList[3] -Confirm:$false
}
...而且效果很好...适用于两个设备。在使用硬件直通设置任何两个 PCI 设备后,我将收到一条消息“已达到 PCI 设备的最大数量”。但是,我可以通过 GUI 进入并添加我想要的所有 PCI 设备……我在一台 VM 上拥有多达九个设备。
如果重要的话,我尝试添加的设备是 NVMe 驱动器。