Hyper-V Program Manager
As a Hyper-V program manager, I am very familiar with the process for upgrading virtual machines using Hyper-V. But I also often get questions about how you do this through System Center Virtual Machine Manager – and why the experiences are different.
How you do it is easy enough – right click on the virtual machine and select Install Virtual Guest Services. But there are some key things to know that catch some people off guard.
The biggest one is this: you cannot update the integration services with SCVMM while the virtual machine is running.
Here you can see that I have bought up the contextual menu on a running virtual machine, and the install virtual guest services option is disabled:
If I shutdown the virtual machine first, and try again – you will see that the option is enabled:
If I select to install virtual guest services at this point in time, SCVMM will go ahead and do so with no further input from me.
But why does SCVMM require that the virtual machine is off (when Hyper-V does not)? The short answer is because the in-box Hyper-V tools and SCVMM were designed for very different users.
The in-box Hyper-V tools do not require you to turn off the virtual machine in order to update the integration components, which is nice, but they do require you to login to the virtual machine in order to complete the installation process. This makes sense when you are managing a handful of virtual machines on a single server – but it does not scale to hundreds of virtual machines across multiple physical servers.
SCVMM handles integration component update by mounting the virtual hard disk and performing an offline installation of the integration components. While this does require that the virtual machine is turned off first, it makes it much easier to perform on large sets of virtual machines.
Thank you Benjamin
which version of the integration components would be installed?
The SCVMM local one or the ones local to the host where the VM is running on?
So if SCVMM 2012 R2 manages a 2008 R2 Host, would the SCVMM process install 2012 components or the 2008 R2 ones?
Does anyone know if the installation of guest services through VMM has an associated command line?
I would like to automate the installation in my shutdown/power on script.
Set-SCVirtualMachine –InstallVirtualisationGuestServices $true
Just some ideas:
Why not ask the administrator for the required credentials and do an online upgrade?
Or have a mechanism where the integration services checks for updates itself?
Or provide upgrades through WSUS?
If its really about scale, the current implementation is also no option because we now have to contact every VM owner that his/her VM will be shutdown for the upgrade. Or have them do it themselves but they don't...