Laptop Configuration for Hardcore Demos

I showcase a lot of industry scenarios to customers (live demo presentations), and I build a lot of demonstrations myself; so I need a fast demo environment for customer meetings as well as a top-notch developer environment for writing code. I need a platform that both performs and is flexible to vast array of different products that make up a typical enterprise insurance solution. Until now, I’ve always used Virtual PC and virtual environments to run demo scenarios, and used my main laptop OS as a development workstation. The problems with this approach have been: 

· what I need at a particular time isn’t running and I'm constantly switching internal harddrives, USB external drives, etc

· it’s slow (VPC server environments are very slow), takes a long time to boot up prior to starting customer demonstrations (everything has to be warmed up and cached)

· external USB drives hanging out of every possible socket on the mahcine, carrying them around in my bag, forgetting what image is on what drive, not being able to run more than one image at once, etc.

· Generally it's a total mess!

Thanks to Windows 7 RC0 and Windows Server 2008 R2 RC0 -- it’s beautiful. Here’s the configuration. Note: you need a 64-bit machine with a minimum 4GB of RAM for this.

My hardware (this is all I need at any one time – nothing more)

· Lenovo T61p (dual core) 64-bit

· 4 GB RAM

· 180 GB SATA Hard disk – primary

· 100 GB SATA Hard disk – external drive bay (swappable with a DVD drive)

Here’s what I did.

1. Build the base Windows 7 workstation.

a. Install Windows 7 64-bit on the 180 GB SATA drive with only 1 partition. One of the beautiful things about this is I never need to partition my main harddrive into a bunch of different bootable partitions. 1 partition (180 GB), formatted the harddrive, installed Windows – that’s it.

b. Added everything I needed. Office, Visual Studio, SQL Server, whatever you typically use for your job. Add the machine to your corporate domain, etc.

2. Build the demo Windows Server 2008 R2 environment. Build a bootable VHD.

a. Goal: Now that we have Windows 7 installed on our main hard drive, we’re going to build a Windows 2008 R2 bootable VHD with Hyper-V, and eventually this will be a single file sitting on main harddrive (no partition necessary). So now build the VHD file.

b. I pulled out the 180 GB harddrive and replaced it with the 100. You can use a backup harddrive if you have an extra one (I only have 2). Put in your Server 2008 R2 DVD or ISO image.

c. Follow these instructions on building a Windows 2008 R2 bootable VHD. . Good blog here from Keith Combs.

d. Install Server 2008 into the VHD, setup that environment (you can configure it now or later). My VHD is about 10 GB in size, it has Office on it, it’s part of the corporate domain, and I added the Hyper-v role (this is important obviously).

e. Note: I made my VHD expandable up to 30GB, as I’m not going to store that much in the VHD.

3. Configure the base Win7 environment for booting to the VHD

a. When my machine starts, I want to be able to decide whether to boot Windows 7 or Server 2008 Hyper-v environment. So I put the 180 GB Win7 harddrive back in, and booted that environment back up.

b. Next – copy the new VHD file over and drop it on your C:\ drive somewhere (so it’s on the 180 GB main drive). When it’s copied over – I cleaned down and reformatted my 100 GB external drive bay drive. This will store my Hyper-v images.

c. Use bcdedit.exe to configure the VHD boot option. There’s lots of blogs on this, but basically it’s really simple and will take 2 minutes.

bcdedit /copy {current} /d “Server2008_VHD”

Run bcdedit.exe, copy the CSLID for the new entry, and paste it in below

bcdedit /set {CLSID} device vhd=[C:]\Server2008.vhd

bcdedit /set {CLSID} osdevice vhd=[C:]\ Server2008.vhd

bcdedit /set {CLSID} detecthal on

Replace [C:]\Server2008.vhd with the path and name of your VHD.

d. Now reboot, and you should get prompted to either Windows 7 (default), or Windows 2008 (from this VHD).

Why is this so cool?

· Now I can be in Windows 7 all day working, and when needed, I can switch over to a hyper-v demo environment.

· When I boot to Server2008 – I get access to ALL OF MY FILES on my Windows7 C:\ drive, so I have everything in either place. Server 2008 is also part of my corporate domain, so I have email, Office, all my documents, Office Communicator, etc. In fact, I could stay in Server2008 all day if needed.

· I put all of my important hyper-v demo images on my 100 GB SATA drive. I can now start them up, even start up more than one once at once – and the performance is unbelievable. Feels like they are natively running thanks to Hyper-v and the SATA external drive bay (cuts out the harddrive contention – that’s why the hyper-v images are NOT sitting on my main C drive). I have many large Server 2003 images with SharePoint, BizTalk, CRM, SQL etc….excellent perf.

· No USB drives needed, everything's contained!