I’ve just completed the backup setup for my lab network. My lab network used to consist of a bunch of PC’s of various ages and processors. I’d gone the traditional route of one physical machine per role. So I had a domain controller, mail server, web server and a PC, 3 of which were running all of the time for internet services.
I decided to do my bit for the environment. I also wanted to reduce my electricity bills and stop my lab room from being the warmest place in the county. So I decided to eat some of my own medicine and consolidate my network via virtualistion. I had a choice of which platform to take but I settled on VMware’s free VMware Server product. I really like the snapshot feature of the VMware products for lab work and the machines are pretty portable, e.g they are portable between Server, Workstation and Player.
I built an AMD 2800 with 2GB of RAM. It would be a domain controller (with all FSMO’s) and my file server. I installed VMware Server onto it. The disk was getting pretty full so I installed a 180GB USB 2.0 external hard drive which physically hosts my 3 VM’s:
- Another DC: it will give my virtual network the ability to be mobile. If I lose the physical host, I can recover the VM’s elsewhere and sieze the FSMO roles. Instant DR site on a shoestring :-)
- EMail
- Web (doubles as WSUS)
I wanted to backup these machines. I am using the Windows Server NTBACKUP on the host machine so I’ve got no fancy VMware agents. My solution was to script a way of backing up my machines with minimal downtime. The script pauses/suspends my VM’s, backs them up, and then restarts them. The backups are to a file on a USB 2.0 300GB external disk. I also backup the shares on teh host server. Here is what the VM backup script looks like:
REM SUSPEND ———————
REM WEB
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" suspend
REM DC
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" suspend
REM MAIL
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" suspend
REM BACKUP ———————
<BACKUP COMMAND>
REM START ———————
REM WEB
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" start
REM DC
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" start
REM MAIL
call "C:\Program Files\VMware\VMware Server\vmware-cmd.bat" "<path to VM VMX file>" start
REM EXIT ———————
:EXIT
Copyright Warning
This blog post is the property of Aidan Finn (@joe_elway / http://www.aidanfinn.com) and may not be reused in any manner without prior consent of Aidan Finn. You may quote one paragraph from this blog post if you link to the original blog post.