farkasharry
Hot Shot
Hot Shot

Changing vCenter default VM setting from BIOS to UEFI

We are currently looking for a way to change the default VM setting from BIOS to UEFI, so we do not need to change the API call in our third party automation tool, but the vCenter creates only UEFI VMs in the future. Does anyone has a clue where to change it?

*** If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful! *** vExpert 2019, VCAP-DCA,VCP,MCSE,MCITS and some more...
0 Kudos
5 Replies
kenbshinn
Enthusiast
Enthusiast

So if you go into Edit Settings on the VM and select the VM Options Tab you should see this

pastedImage_0.png

It looks like you can change it there.

0 Kudos
farkasharry
Hot Shot
Hot Shot

Yes, I was aware of this one, but looking for a way to have the default setting changed. Backgroun: We want to change BIOS to UEFI for all future VM installations, but the call to the vCenter API should not have an additional value for the type of the BIOS. If you dont change it, it is BIOS, not UEFI.

*** If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful! *** vExpert 2019, VCAP-DCA,VCP,MCSE,MCITS and some more...
0 Kudos
kenbshinn
Enthusiast
Enthusiast

Could you get away with using a VM Template to deploy your VMs from? This way you could configure that setting one and then just deploy from the template.

0 Kudos
farkasharry
Hot Shot
Hot Shot

Unfortunately, we cannot use templates... I got an answer from VMware, that it is not something we can change currently. Smiley Sad

*** If you find this or any other answer useful please consider awarding points by marking the answer correct or helpful! *** vExpert 2019, VCAP-DCA,VCP,MCSE,MCITS and some more...
0 Kudos
dskwared
VMware Employee
VMware Employee

Bummer about the templates! That's how we do it currently. We have a few Windows Server templates with UEFI set as the default boot mode. However, our template is more of a skeleton, as it only contains CPU, RAM, Disks, UEFI boot, Secure boot, etc., but contains no OS. It's just a VM shell. From there, we then deploy the guest OS via SCCM / PXE Boot.

I bet it could be scripted somehow, as in, create the default VM the way you normally do. Once the shell is created, run a script against the new VM and set the boot firmware to UEFI. For example, as listed in the VMware Documentation, Enable or Disable UEFI Secure Boot for a Virtual Machine, do something like this:

$vm = Get-VM TestVM

$spec = New-Object VMware.Vim.VirtualMachineConfigSpec

$spec.Firmware = [VMware.Vim.GuestOsDescriptorFirmwareType]::efi

$vm.ExtensionData.ReconfigVM($spec)

I know it's still a bit manual, but since the vCenter default can't be changed, perhaps this might speed up your workflow a bit?

Cheers,

Doug

0 Kudos