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 🙂
- 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 FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" suspend
REM DC
call "C:Program FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" suspend
REM MAIL
call "C:Program FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" suspend
REM BACKUP ———————
<BACKUP COMMAND>
REM START ———————
REM WEB
call "C:Program FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" start
REM DC
call "C:Program FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" start
REM MAIL
call "C:Program FilesVMwareVMware Servervmware-cmd.bat" "<path to VM VMX file>" start
REM EXIT ———————
:EXIT