I am using esxi 6.0 and have around 300 VM's running across multiple hosts in our cluster.
I am looking into automating the upgrade of VMWare Tools/VM versions of each of the VM's and think that using update manager with baselines is probably my best bet for this, paired with scheduled tasks.
I have a handful of VM's which are appliances (vcsa and a citrix netscaler for example) that I do not want to upgrade the tools or VM versions on because they are closely tied to the appliances version/upgrades and should not be updated outside of this or things could break/not be supported.
Basically my question is - how do I attach the baseline to 300ish VM's but not attach it to these handful of VM's... and likewise with the scheduled task for scan/remediation of the updates, without having to sit and click each VM separately.
I can't see an option on the baseline itself to add/remove vm's... if I select the cluster/host/VM folder to apply the baseline there doesn't appear to be a way to exclude specific VM's... neither can I select the specific VM, look at attached baselines and remove it there either, it just gives me the cluster/host/VM folder to remove as a whole.
If I change the view to show all VMs and select all, then ctrl click the specific vm's off my right-click option of update manager only has the option to update the VMtools option to install on reboot, the option to attach a baseline is gone. This method would work if all I needed to do was Tools, but I need VM versions as well.
Same question really for scheduling tasks and remediation of the updates... although if I could selectively target the baselines the schedules aren't too much of a problem as they wont find any updates to process.
Lastly - my VM folder structure is tied to our backup/replication software so I can't just juggle the VM's into folders and apply the baselines this way easily, it would require some redesign in backup/replication.
Any help/opinions welcome, I feel like this is a simple question and i'm just missing an obvious solution?
you can attach baseline to all the VM's, and run below script to detach baselines from specific ones.
$vms = get-content c:\temp\vms.txt
$baseline = <baseline name>
Foreach($vm in $vms)
Get-VM -Name $vm | Detach-Baseline -Baseline $baseline