5

I'm currently working on a small testing farm at work and especially the part of resetting the machines after a test was run gives me some headaches.
Before we decided to get a couple of dedicated test machines with different hardware configurations the plan was to run the tests on a single machines using Hyper-V so cleaning up afterwards was just a matter of deleting the actual VM.
Unfortunately resetting a complete machine is a bit more expensive in terms of time and I guess also in terms of hardware weart out over the years if you do it often enough.

I believe that simply deinstalling the installed software won't be sufficient as there might be some files / redistributables left on the system which make subsequent test runs less useful.
I also believe that running Hyper-V VMs on the test machines would adversely affect the test results, especially on the weaker hardware configurations.

I really would like to know if there are some existing solutions to this problem and what would be the smartest way to do this.

2
  • You don't say what the test machine OS is, but for Windows client OS (7,8,10) you might just use the built in Reset/Refresh option. For a server OS you might look at using an imaging tool to create a standard image and use that to restore the machine after each test run.
    – joeqwerty
    Feb 9, 2018 at 18:41
  • 1
    Is there something special about the software being tested that requires it to run on bare metal? If not, then just use VMs. Feb 9, 2018 at 18:45

4 Answers 4

6

You can absolutely use a set of VMs based on some “golden image” + differentials, and you can discard these over the time increments when / if needed. This is PowerShell scriptable (turn VM off, discard diffs and so on) and you can use Chef / Ansible for some higher level of automation as well. Alternative way would be using Veeam Community Edition which can do the same even w/out OS snapshots. It’s PowerShell scriptable of course, so automation is again easy to implement.

3

Another option is to boot from VHD, create an OS base install with everything you need configured and installed. Make a copy of the VHDX. Then run your tests and replace the "dirty" VHD with the backup copy and start over. You can automate some of this as well.

1

I recently learned the CloneZilla have this:

Multicast is supported in Clonezilla SE, which is suitable for massive clone. You can also remotely use it to save or restore a bunch of computers if PXE and Wake-on-LAN are supported in your clients.

-1

Unfortunately resetting a complete machine is a bit more expensive in terms of time and I guess also in terms of hardware weart out over the years if you do it often enough.

Nope. There is no reason your machine does not boot from a network via ISCSI, and then you are back to - Hyper-V style behavior (reset the image). Done, case closed.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .