Unraid on ESXi 7.0 - Confimed Working


Recommended Posts

For anyone considering the plunge I did an online upgrade from ESXi 6.7 to ESXi 7.0 last night and although it's early days my Unraid VM is working fine. I just followed this old guide http://www.virtubytes.com/2017/07/10/online-upgrade-esxi-6-5-using-esxcli/ and substituted ESXi-7.0 in the grep line when  looking for the right image profile.

The first time I ran the upgrade I got a warning about incompatible hardware, which was a Dell Perc H310 controller. Since I'm passing that through to the Unraid VM is can be safely ignored. Re-running the update with the '--no-hardware-warning' switch ignores the warning and allows the upgrade to proceed.

 

My only issue after the upgrade was that I couldn't attach the Unraid USB stick to the VM. I eventually remembered that I'd previously been using the older vmklinux USB drivers which have now been removed from ESXi 7. Once I'd re-enabled the native USB drivers with

esxcli system module set -m=vmkusb -e=TRUE

and rebooted I could see all my USB devices and was able to attach the Unraid USB stick to the VM and boot it.

 

I was lucky that all my hardware was supported, but do some checking first before upgrading

  • there's advice out there for checking for anything using vmklinux drivers https://blogs.vmware.com/vsphere/2019/04/what-is-the-impact-of-the-vmklinux-driver-stack-deprecation.html
  • You can run the upgrade in dryrun mode to get a list of any incompatible hardware
  • Assume that recovery console won't work if you want to downgrade again. There's a lot of articles out there that suggest that you can just launch the recovery console to downgrade to the previously installed version, but for whatever reason that option wasn't available to me.

 

HW List: Gigabyte X570 Aorus Elite motherboard with a Dell PERC H310 in IT mode passed through to Unraid.

Edited by BruceRobertson
  • Like 2
  • Thanks 1
Link to comment

Thanks! I was actually playing around with this today. I bought a new Ryzen motherboard and processor for my gaming rig and I figured I would play around with vSphere 7.0 and unRAID before installing it.  I have been unable to passthrough the USB controllers to my unRAID vm.  I will try out your esxcli command.

Edited by StevenD
Link to comment
1 hour ago, StevenD said:

I have been unable to passthrough the USB controllers to my unRAID vm.  I will try out your esxcli command.

In case it's the same issue I had no luck passing through the Dell Perc H310 or a USB controller on my Ryzen build until I found a post on Reddit describing a similar problem and followed their suggestion of setting VMKernel.Boot.disableACSCheck to True in Advanced Settings on the ESXi host. The Reddit post is here,

 

That's really good news about being able to boot directly from the USB stick now. I had not spotted that! It means I can retire the plopkexec iso I was using. Thanks for the tip.

  • Like 1
Link to comment
7 hours ago, joyson said:

plop was not booting unraid

just download plopkExec.iso, attach it to VM as CD-ROM. Start your VM, it should boot from plopKExec. if there is unraid USB connected, then plopKExec will automatically choose it and continue to boot. so, are you attached your unraid USB to VM?

Link to comment

thanks guys got it working on ESXi 6.7 didnt try on ESXi 7.0 will try soon the problem was that in VM setting i had selected USB 2.0 and i my ESXi Host had USB 3.0 that was the problem so i had to change it to USB 3.0 in VM setting.

but My Speed drops in middle of the transfer i got 10GB switch if i copy 1gb file it get speed of 420-490 MB/sec but when i copy large file my speed drops to 90MB/sec in the midle of the transfer any1 had this issue ?

Link to comment

Hi All,

I successfully upgraded from esx 6.7 u2to esx 7.0 Last night. I had a bit more of a bumpy experience,

Thus far:

  • Had an issue updating the existing usb bases esx install... installed as per normal upgrade process, successfully booted from USB into esx 7.0 and started up all my VM's including unraid 100% perfect. Needed to reboot the server to toggle pass-through on a device... ESX never came back up (vmware recovery error) and forced me to start from scratch
  • Re-installed ESX 7.0 and re-registered VM's.
  • Boot unraid perfectly, everything comes back up perfectly including my RDM's for onboard attached sata drives. (I have a mix of RDM's and pass through drives which have been rock solid in 6.7)

From this point, I have started noticing super slow performance. First in plex, and now upon further inspection even just browsing my shares.
It takes a full minute to even open a share or sub folder. This is true even with nothing else is running on the server.

 

Any one have any ideas? I cant see any suspect errors in the logs.

 

Good luck to anyone taking the plunge!

Link to comment
12 minutes ago, mustava said:

Hi All,

I successfully upgraded from esx 6.7 u2to esx 7.0 Last night. I had a bit more of a bumpy experience,

Thus far:

  • Had an issue updating the existing usb bases esx install... installed as per normal upgrade process, successfully booted from USB into esx 7.0 and started up all my VM's including unraid 100% perfect. Needed to reboot the server to toggle pass-through on a device... ESX never came back up (vmware recovery error) and forced me to start from scratch
  • Re-installed ESX 7.0 and re-registered VM's.
  • Boot unraid perfectly, everything comes back up perfectly including my RDM's for onboard attached sata drives. (I have a mix of RDM's and pass through drives which have been rock solid in 6.7)

From this point, I have started noticing super slow performance. First in plex, and now upon further inspection even just browsing my shares.
It takes a full minute to even open a share or sub folder. This is true even with nothing else is running on the server.

 

Any one have any ideas? I cant see any suspect errors in the logs.

 

Good luck to anyone taking the plunge!

Wow ok - I just found the issue by chance two minutes after writing this, despite trying to fix it for hours....

Due to the new ESX installation, the vSwitch for my LAN network had the 'MAC address changes' security setting set to 'Reject'.

Reject. If the guest OS changes the effective MAC address of the virtual machine to a value that is different from the MAC address of the VM network adapter (set in the .vmx configuration file), the switch drops all inbound frames to the adapter.

If the guest OS changes the effective MAC address of the virtual machine back to the MAC address of the VM network adapter, the virtual machine receives frames again.

I guess due to the OS having existing values, and the new install/new NIC's were assigned different values and frames were being blocked by the switch.
The more interesting thing is why it worked, slowly, rather than at all...

 

  • Like 1
Link to comment

I was able to do this about a week ago... 

 

My CPU was unsupported to so I had to add the allowLegacyCPU option to the boot config file AND each VM's advanced configuration parameter needs an monitor.allowLegacyCPU = True 

 

That leads to SUPER slow boot times on older VMS and even VMs upgraded to 7.0. however, newly created VMs are fine. 

 

I'm trying to do USB boot and that works, but for some reason, USB passthrough with my SAS card does NOT work. Unraid seems to find the devices ... but right before the login prompt crashes. I can't seem to get any info before the crash happens. 

 

Anyone else having trouble with passthrough on Esxi 7.0 and UnRaid? The reddit thread linked above seems to be able to even see the card as passthrough capable, which I don't think applies to my situation. 

Link to comment

So...I have Unraid running under ESXi 7.0 as well, but can't do PCI passthrough and also have Hardware Virtualization enabled so I can use VM Manager.

If I try and enable it I get an error - "Failed - PCI passthrough devices cannot be added when Nested Hardware-Assisted Virtualization is enabled."

 

Is there a hack to get this to work?

Or has it always been the case that you can only choose one of the other?

image.png.f4e2db241d1b8eef43d476ce5dc5a2cd.png
 

Edited by zer0zer0
Link to comment
  • 3 weeks later...
  • 1 year later...
  • 2 years later...
On 4/30/2020 at 9:03 PM, zer0zer0 said:

So...I have Unraid running under ESXi 7.0 as well, but can't do PCI passthrough and also have Hardware Virtualization enabled so I can use VM Manager.

If I try and enable it I get an error - "Failed - PCI passthrough devices cannot be added when Nested Hardware-Assisted Virtualization is enabled."

 

Is there a hack to get this to work?

Or has it always been the case that you can only choose one of the other?

image.png.f4e2db241d1b8eef43d476ce5dc5a2cd.png
 


For those who stumble in here and read this, like me, you can in fact enable both settings with a hack. I got this from a VMware employee on a forum and it isn't really documented anywhere that this is possible. Totally unsupported by VMware as well, obviously. Also completely at your own risk, again obviously. I've been running it like this for 1.5 years or something without any issues though. I did all of this with vCenter but I suspect ESXi standalone should work as well. You can configure it as follows

  1. Stop array and clean shutdown Unraid VM
  2. Disable Hardware Virtualization in the Unraid VM settings
  3. Enable PCI Passthrough and pass the PCI device through to the VM. Don't boot just yet and also make sure any other VM settings you want are set at this point, see the note below for why
  4. Right click the VM and choose "remove from inventory" (DO NOT CHOOSE "DELETE FROM DISK"). This is on vSphere 8.0 with vCenter, it could be named differently on earlier versions or standalone ESXi. What it does is it only removes the VM from the GUI inventory but it leaves all the files in the datastore, including the VM config file. We will simply add the VM again after the following
  5. Browse the datastore where the VM files are stored and download the *.vmx file (with * your VM's name. In my case it's called "unRAID_Server.vmx") to your local PC. This vmx file contains all the VM settings, including those for passthrough and hardware virtualization
  6. Create a copy of the vmx file, just as a safeguard, so you have a backup
  7. Open the vmx file in a text editor and add the below lines somewhere. At the bottom is fine. The lines that are commented (#) I added because when you register the VM in step 9, it will remove the configuration lines from the config file but it won't remove the commented lines, making it easier to add the settings again by copy paste when necessary (see note below for why that can be necessary)
    #vhv.allowPassthru= "TRUE"
    vhv.allowPassthru= "TRUE"
    #vhv.enable= "TRUE"
    vhv.enable= "TRUE"
  8. Upload the vmx file to the same location as before. It will ask to overwrite the vmx file already there, let it do so
  9. Right click the vmx file or if that doesn't work put a checkmark in front of it. Choose "register VM" in the right-click menu or above the file list and go through the wizard
  10. That's it, the VM will now be added again with both settings enabled and working


NOTE: Any time you want to change a setting on this VM, it will refuse to do so and produce an error mentioning "hardware virtualization". This is because you have both these settings enabled. If you want to change VM settings, first you have to disable hardware virtualization again, then change the settings you want, which it will now allow and then go through the above steps (start from step 4) again to enable hardware virtualization once more. It's tedious, I know, but it's the only way to have both settings enabled and still change the VM settings

Edited by BlueBull
Added warning about not choosing wrong option
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.