Looking for some direction with a specific situation

Hi All,

I've got a situation that I THINK Vagrant can help with but I've never used Vagrant before so I'd like to get some advice. Even just getting pointed in the right direction or alerted to likely pitfalls would be a great help.

At work we have a cluster of roughly 100 Hyper-V VM's, running various flavors of Windows server and consumer editions. These VM's are performing automated tests as new builds of our company's software are developed. These machines are reverted back to a base state after each test run.

The first issue that we'd like to take care of is that having ~100 VM's to update every month on MS Patch Tuesday is very time consuming. I would like to be able to just have a base image for each flavor of Windows (11, Server 2016, Etc.) that can be updated and then have a tool such as Vagrant be used to spin up VM's based on those base images (I think that would be a Box in Vagrant speak).

Some of the things that would have to be changed for each VM are:
Machine Name,
Static IP Address,
Hardware SSD* (more on this later),
A custom in-house service name*

The SSD needs to be specified as each VM is given exclusive access to a hardware SSD for performance reasons relating to the applications under test.

The custom service changes are probably something that can be done through the command line and changing a registry key. These would have to be done at first boot when a VM is deployed. It seems like the Vagrant Winrm command could probably do that.

Any advice or links to how to accomplish these tasks would be much appreciated. I've been pouring over Vagrant documentation for the last couple of weeks but feel like I'm drowning and don't know how to find the specific information related to what I'm wanting to accomplish.

I have however gotten vagrant up an running and deploying some text boxes downloaded from Vagrantup.com. I gotta say this is a pretty amazing tool and I hope I will be able to use it to accomplish my goals.

Thanks in advance for any help!

1 thought on “Looking for some direction with a specific situation”

  1. There’s a companion tool called Packer can “pack” the image as a VM template and ship it to a share or something that Hyper-V can access. Then you just maintain one Vagrant “box”, and on updates you would then pack a template and deploy it to your shared storage.


Leave a Comment