The time came to decommission the Home Server once I realised how much power it was pulling. My power meter debacle had concealed the 24/7 150w consumption, chewing into my solar feed in tariff at 44c in the daytime and my green power rate at 21c at night. This was costing me about $400/yr in power bills – it had to go.
I have toyed with various options, but the most obvious was using the other machine that was on 24/7 – the Vista Media Centre.
I found some info on running Windows Home Server as a virtual guest, but nothing on the impacts to the Vista Media Centre host. My host was not particularly new, a 3yo PC with the following specs:
- MB – Asus N4L-VM-DH
- CPU – Core 2 Duo T2400 1.8Ghz
- RAM – 2GB Kingston
- HDD 7200RPM 500GB WD
- Silent Heat Pipe Video Card
- Antec Truepower2 Power Supply (pre 80+ standards)
- 100MBit Ethernet to router
I figured it would be a stretch for this machine to run a VM as well, but it was worth the try. It is a fairly power efficient machine, the Core 2 Duo being a laptop CPU and noted for it’s efficiency. The current video card pumps out heat 24/7 and could do with improvement, I’m waiting for the new Intel Nehalem CPU range to arrive and come down in price, by which stage on board video should be suitable – more power savings.
I grabbed a couple of 1TB WD Green drive, as my experience with them inside WD MyBooks showed them to be very quiet and efficient.
I used VMWare Workstation 6.5 as I had it, but you could use VMWare Server – it’s free. You could also use Windows Virtual Server, but I felt (possibly incorrectly) VMWare may have slightly lower overhead and better direct hardware and USB support. Virtual PC / Server have no USB support last I checked.
The Asus MB has 3 x SATA ports, and a PATA port. Two of the SATA ports were already in use with the DVDROM and host HDD, so I ran the first HDD on the spare SATA socket expecting great results. It was awful, woefully slow, rendering the machine unable to even record TV shows. Turns out he extra SATA slot is for RAID, and due to firmware / drivers, IRQ’s went through the roof consuming 60% CPU time. A two channel PCI SATA card fixed this problem.
With that nailed down, I installed Windows Home Server w/ PP1 onto an 80GB Virtual Disk on the 1TB HDD. The host OS and TV recording was all onto the original 500GB HDD.
Virtual machine config was easy. , Setup a Virtual Machine as Server 2003 w/ 512MB RAM, an 80 GB IDE Virtual HDD and mount the Home Server CD ISO. Sound and other unnecessary things were removed. I elected not to fully allocate the 80GB HDD, although this may impact my performance later.
Home server will install on the above with no major configuration steps. All drivers are fine. Once the install is finished, install the VMWare tools, run Windows Update, and activate your Home Server. There are instructions here – but they use a virtual SCSI HDD, greatly complicating the install for no benefit I can discern. I would use a virtual IDE.
Once mine was installed I added the extra disks. Initially I tried the disks as Direct Physical access. They were setup with a partition, but no drive letter, as per the vmware help. The VM would not even boot and there was a disk access conflict. Nothing I did could resolve this problem, so I had to settle for a couple of 900GB virtual disks (not pre-allocated) on the 2 x 1TB HDD’s (930GB formatted capacity NTFS). I tried VMWare Server 2.0, but it doesn’t support direct physical disks anymore, and also broke my Remote Desktop to the host. VMWare Server 1.08 wasn’t compatible with my VM, so I gave up.
The benefit to using Physical Disks is threefold:
- The entire disk is allocated to Home Server, maximising space
- The disks can be unplugged and read anywhere
- There is no possible conflict with access to the disk.
Unfortunately it was not to be – so virtual disks it is.
The initial problem I had was WOEFUL disk performance and 100% CPU usage. Task Manager showed the “System Idle Process” to be hogging the CPU. Process Monitor showed it to be 60% used by IRQ’s. Google tracked that to the HDD not being in DMA mode, but rather PIO Mode 4 due to firmware / drivers / phase of the moon. As I couldn’t fix it easily, I bought and installed a 2 port PCI – SATA card. The CPU load is normal using this card as opposed to the on board port.I have since tried storing the VM 80GB “OS” drive on both the 1TB WD 5400RPM VM dedicated disk, and the faster 7200RPM disk shared with the media centre, and couldn’t detect a difference in performance either way. I have left it on the VM disk to optimise space for TV recordings.
Next issue was awful network performance between the Host and Guest. Guest to other network computers was fine – about 4-8MB/s, but Guest – Host was shocking – about 20Kb/s. Like all good technicians today I didn’t use my brain, but hit Google again. TCP Offload seemed to be a recurring theme here. The registry keys for XP didn’t fix it, but the advanced settings for the network adapter did. TCP Offload disabled on the host and now I get the same network performance anywhere. This is not a fault with VMWare, but does seem to be a common compatibility issue with many network adapters, my onboard nic being one of them.
The final hurdle was again performance related. The guest Home Server would be running, but very sluggish to respond to inputs if you had left it alone for a while. It’s like VMWare let it go to sleep, and took between 1-4 minutes to assign it resources again. I made two changes here. I disabled Memory Page Trimming in the VM admin interface and disabled Page File Sharing with the line sched.mem.pshare.enable=”FALSE” in the .vmx config file.
Both of these seemed to keep the Home Server in a much more responsive state when I wanted it. It still often needs two clicks to “connect” to the console – the first fails, but network shares and backup work perfectly. As the console is not something I regularly access, I’ll ignore this issue.
There are some other tricks that can help. I did the following on the host to reduce any possible performance hits:
- I don’t run Anti-Virus on my Media Centre, so exclusions for that weren’t necessary. If you run AV it’s recommended to exclude the VM files to reduce overhead.
- Snapshots on the HDD used by VMWare were disabled – won’t be needing them for backup.
- Recycle Bin disabled – don’t need that either.
- Added a shortcut to the VM to the startup folder so it auto-starts. (VMware took away this nice feature from VMWare workstation)
With the Home Server running and all updates installed (particularly PP1) it was time to install the connector to all the PC’s in the house, and configure backups. This is mostly straightforward. There is one trick – you MUST exclude the Virtual Machine folders from the backup when you install the connector on the Vista Media Centre Host. Otherwise it will try backing up itself to itself, decide it won’t fit, and have a heart attack.
Once everything was installed I copied over all the data using Robocopy. I found that the Windows Copy with that much data to the VM wasn’t particularly reliable, although that may have been due to not having all the above tuning done first. My sequence was a learning exercise.
Vista Media Centre has an option to add remote data to it’s library. I have added music, pictures, MPG4/DivX and DVD’s stored on the Home Server. You’ll need to use the DVD library reg hack to get the latter to work.
I haven’t tried using the Home Server to store recordings of live TV, but watching movies stored on it with either DivX or a ripped DVD works just fine. Network performance is as above.
I have also setup a 1TB Mybook using USB to be the backup drive. The USB seems to work fine and is setup to automatically connect. Backups to the external drive are the usual manual deal.
Now I have access to all my data, a large file store, regular backups, a quiet media centre and a single box that only chew’s 85w. Performance is acceptable, but not amazingly snappy. I think it’s an acceptable compromise. It doesn’t really take any longer than when the old server had to spin up it’s six HDD’s. I’m not sure if the HDD’s are spinning down under VMWare, there is a few more watts to save.
I’m looking into power saving inside VMWare next, but think I’m off to a pretty good start.
There are a few things I would like to do to improve the solution:
- Get it going on VMWare Server (and not break RDP / Remote Desktop)
- Resolve the physical disk access issue, I assume it’s to do with running under Vista, but have no evidence to back this up. I tried disabling everything that might conflict.
- The performance is still not snappy on the console. The host CPU, RAM and Disk are not busy, so what’s making it sluggish. Network transfers and backup are fine, it’s just the console that’s sluggish.
- How does WMWare interact with host power saving features?
Update Oct ’09
Now running VMWare Server.
No real difference. Still can’t use native disks.
I’ll go back to pyhsical once the new Pinetrail atom is out. Although it works, I’m sick of the ultra-long boot times.
I’l make the new WHS an Atom and the VM Host media centre an i3 w/ integrated Video.
Hello,
I’ve got dual setup too. Using Vista 32bit TVP as host and WHS PP1 on VMWare Server 2. The hardware is ABIT AB9PRO (9xSATA), Intel Q6600, 4GB RAM (3,2GB seen by Vista).
Hard Drives:
VISTA: 40GB PATA for ststem; 160GB SATA for Recorded TV;
WHS: 140GB virtual drive on 160SATA disk; 480GB virtual drive on 500GB SATA drive;
Another hardware: 2xHVR1300,2xFloppyDTV,Z-WAVE emiter, Silverstone LC-16M, Power Suply BeQuiet 300W, 2xNIC on board
The performace is OK for me. two network cards help a lot. Heating vs. Quiet is a little problem for me but replacing cooler will help.
Regarding the sluggish console access… Keep in mind that WHS is built on a Windows 2003 foundation. Make sure that you set video hardware acceleration to Full.
That should help out with the console sluggishness.
Cheers,
Jase
I’d like to do something very similar to this – ie. Running Vista Media Center as the main OS while running WHS in virtualization, but I have a few questions before I purchase that hardware. I’m looking at doing it with a pretty beefy small form factor system, using a Phenom 9450e w/ 4GB of RAM, if that matters:
1. I’d like to use MyMovies for WHS to automatically rip Blu-Ray and DVD movies without any user input, which I think is one of the great WHS features going for it. Will the system be able to accomplish this under virtualization?
2. I’m also planning on serving this Blu-Ray content to to other VMC machines. One in my bedroom, and the base machine (that is, the one also running WHS via virtualization) and watching it there, as well as an Xbox 360 working as an extender in my living room. Can this be done under virtualization as well? I know the Xbox 360 won’t play hosted Blu-Ray content, but I believe it will play served DVDs via Transcode 360, so as long as it’ll do that, I’m happy.
Thoughts?
Cheers,
Jay
I think the better way is to run Vista inside WHS, not the other way around.
This way, you can use physical disk for storage and performance is greatly improved.
thank you alot for sharing this great post!
I found a youtube video about xbox live hacks: that I would like to share: xbox Live Hacks!.
But seriously, great post and thank you alot !!
I look forward to your next article !!
🙂
Hey Paul,
I have got PP3 running on the WHS at home now, The copy of files from MCE to the WHS is great. I have reduced the MCE system disk to a total of 300GB. Play back from the Atom WHS over the 802.11n Wireless is great.
Even viewing of files from the WHS is not effected by uploads, it looks to be using BITS or something to control upload speed. Likewise, when the MCE has all 4 tuners running, I don’t see any impact from uploads.
The unexpected benefit is being able to watch my recordings from the HP NetBook or Desktop PC about 20min after a show finishes recording.
If your interested, check out my configurations at http://brendon.davis.to/mywhs/ or http://brendon.davis.to/mymce/