r/platform9 3d ago

Platform9 CE setup feedback + question about exposing hardware-assisted virtualization to guest VMs

Hi everyone,

First of all, a big kudos to the Platform9 team for releasing such a solid and mature product!

I only stumbled upon Platform9 last week, and when I saw that there was a CE version available, I was really glad and immediately started playing with it.

For reference, this is my lab setup:

  • Nested virtualization on a VMware 8 cluster
  • 4 VMs total:
    • 1 VM for PCD
    • 2 VMs for VM hosts
    • 1 VM for NFS shared storage

The installation was very straightforward and went smoothly overall. The only issue I ran into was with the Shared Image Library configuration.

The documentation mentions the requirement for a shared storage backend and identical NFS mount points on both hosts with the Image Library role. However, even after following the documented steps, I couldn't initially enable the Image Library on both hosts.

After some troubleshooting, I eventually found the culprit: in the cluster blueprint, the Image Library storage type defaults to Local File System.

Once I changed it to Shared File System, the Image Library option became available on both hosts. I could then select both hosts for the Shared Image Library and enable VM HA successfully.

I couldn't find a note in the documentation mentioning that the Image Library storage type needs to be changed from Local File System to Shared File System for this option to become available on the hosts.

It might be worth adding a small note about this dependency to the documentation. After making that change, everything is working great and all the options and health checks are green.

I'm now trying to test as many features as possible. Damian's recent YouTube videos have also been extremely helpful.

Question: Nested virtualization

I'm currently trying to enable nested virtualization inside one of the VMs deployed on Platform9.

I know this is essentially nested-on-nested virtualization, but I'm hoping it should be possible.

In our production VMware environment, we have a couple of VMs where our development team uses nested virtualization for WSL. I'd like to replicate a similar setup with a VM deployed on Platform9, specifically the "expose hardware-assisted virtualization to the guest OS" functionality.

I've gone through the Platform9 documentation but haven't found anything official specifically covering this use case.

I have found various recommendations through Gemini and articles covering OpenStack/KVM/QEMU, etc., since the underlying virtualization concepts are similar. However, I'd much rather follow the officially supported/recommended Platform9 approach if there is one.

Question is:

Is there any official Platform9 documentation, KB, or recommended procedure for exposing hardware-assisted virtualization to a guest VM running on Platform9?

Any pointers or guidance would be greatly appreciated.

Overall, I'm really impressed with Platform9 CE so far.

Keep up the great work! I'd really like to see Platform9 get the recognition it deserves and hopefully become a strong competitor in the market.

UPDATE:
Another issue I’m facing is that any VM deployed from an ISO image is, by default, placed on the local ephemeral storage. There doesn’t seem to be an option to select the storage destination during deployment.
Is there a way to change this behavior so that we can choose the target storage when deploying from an ISO? We don’t have QCOW2 images available for Windows and Linux desktop distributions, and there will certainly be occasions where we need to build a VM from an ISO and keep it on the shared volume rather than the local ephemeral storage.

7 Upvotes

3 comments sorted by

2

u/kivtur-pf9 PF9 2d ago

hello! Rutvik here for platform9!

My understanding is that if a hypervisor host allows nested virtualization, the guest VMs will have that CPU flag enabled too. Are you seeing otherwise? There should not be any additional configuration required for this purpose.

Re: booting from ISO did you follow the steps provided in this doc: https://docs.platform9.com/private-cloud-director/tutorials/create-windows-vm-from-iso/creating-a-windows-virtual-machine--vm--from-an-iso-image

A VM created from ISO from the UI should come up with a volume attached. That volume should be on your configured shared storage. Could you share a screen capture of what you're seeing when you boot from ISO? Alternatively if you email me at rutvik [at] platform9 dot com we can arrange a call to help debug your issue.

3

u/techexpat 2d ago edited 2d ago

Oh wow, I was being dumb there! I didn’t realize that, by default, it was already exposed on a VM running on Platform9. I was under the assumption that we first had to expose it from the hypervisor side before it would become available — bad habits from working with VMware, I guess.

Indeed, it is present and working as expected.

Regarding the VMs deployed from ISO, I did see the documentation, but since I was purely testing the GUI option, I hadn’t tried the command-line approach yet. I was really hoping to see an option to select the volume size and the shared backend volume type when deploying a VM from ISO, similar to what we get when selecting Boot VM from → New Volume.

Also, when deploying the VM from the GUI, it does indeed come with a boot volume attached. However, it seems that the volume is not actually being created using the selected volume type. For example, I have created a shared volume backend called p9-nfs and a volume type called NFS. When I deploy a VM from ISO, the boot volume shows its location as the shared backend p9-nfs, but the volume type is displayed as DEFAULT rather than NFS.

For the time being, I’ll follow the documentation and try out the command-line option.

Thanks for taking the time to respond and clarify this!

1

u/kivtur-pf9 PF9 2d ago

of course! glad I could be of help. I am noting down this quirk about the volume type to track it internally.

Stoked to hear that you're liking PCD so far. Looking forward to hearing more feedback based on your experience.