Yesterday I received an email in my Inbox from Microsoft Connect announcing the Public release of the Release Candidate of Windows Home Server Vail, which is to be officially named Windows Home Server 2011.
As many had feared, the key feature from Windows Home Server v1, Drive Extender is missing. Although I shed a tear briefly, I’m not going to write offensive emails to Steve Ballmer or get on a high horse about it like many people in the social networking or blogosphere scenes. This is largely due to the fact that I am technical to therefore understand technologies like RAID and as a result, I have an idea on directions to take with DE.
I had been previously considering using software RAID in the form of Flex RAID because it offers byte level data protection like that offered by DE, but in further thinking sessions, I came to the conclusion that Microsoft dropped DE because of issues with software data redundancy, and that although potentially more expensive to initially setup, hardware RAID will offer a better level of protection and will also help to improve IOPS which is crucial when I will be using Green drives to reduce the energy footprint of the server.
Yes Drive Extender was easy and made the server friendly and made it easy for end-users without technical knowledge to provision storage, RAID was not supported and was also not recommended. RAID makes the setup more complicated in that you need knowledge to understand the technical differences between RAID-0, 1, 5, and 10 and so forth, the number of disks required for each and how the different levels effect storage capacity, redundancy and performance.
Revisiting My Home Server Build
Back in December 2010, I posted with some rough specifications and power figures for my ideal Home Server build. On the surface it’s largely the same as before, however I currently have a few considerations:
- Drive Extender is defiantly gone now, so I am dependant on another storage technology, increasing the number of drives required potentially, which has a knock-on effect on the power usage.
- Still with a lack of Windows Media Center, and now owning an Xbox 360, I am using VMware Server to virtualise a Windows 7 machine on the Home Server so that the Xbox has an always on and available Media Center connection. I am in the throws of deciding whether or not to stick with the Xbox for streaming or use the PS3. If I keep the VMware Server thing going, then my problem is that I will require a more powerful CPU, such as an Intel Pentium D, increasing the power requirements.
Since my posting in December, 3TB drives have become available, which has affected the price per gigabyte. As it stands today, for the Western Digital Green series of drive, the pricing per gigabyte for each drive model is as follows (pricing from Overclockers UK as of today):
- Western Digital Green 1TB – Ã‚Â£49.99 / Ã‚Â£0.05 per Gigabyte
- Western Digital Green 2TB – Ã‚Â£79.99 / Ã‚Â£0.04 per Gigabyte
- Western Digital Green 3TB – Ã‚Â£179.99 / Ã‚Â£0.06 per Gigabyte
- *I’ve used base 10 or 1000 Gigabytes per Terabyte for this, as this is how drive manufacturers count, although I wish someone would teach then binary.
- Based on these prices and taking into account RAID requirements, I’m changing my drives from 1TB Green drives to 2TB Green drives. This allows me to stick to only one PCI-Express RAID controller and reduce the wattage of the box by reducing the number of disks.
How I Work with RAID
The following diagram is something I knocked up in Visio this evening. It shows how the disks will be physically and logically arranged:
So what does all this mean?
As per my original build plan, the motherboard I am using will feature an on-board SATA-II RAID controller supporting up to four drives, and supporting RAID modes 0, 1 and 5. I will also be installing a PCI-Express SATA-II RAID controller for two reasons. Firstly is because my case supports up to ten drives and I need to be able to make sure I have the capacity to make use of those slots. Secondly, the on-board RAID controller will be slow to perform any fancy setups like RAID-5 and also it doesn’t supported any nested RAID modes.
The controller I will be installing, the Leaf Computers 4-Port SATA-II RAID PCI-Express card is a 1x PCI-Express interface card which supports RAID modes 0, 1, 5 and most importantly of all 10.
In my design, I am going to be using both controllers to serve two different purposes in two different RAID modes.
Drives labelled OS indicate drives used for the OS. Drives labelled DG-A are drives which exist in the first RAID-10 Mirror set, while DG-B indicates drives in the second mirror set.
The Operating System
The Operating System functioning is critical to the machine for obvious reasons, so it needs to be protected, but at a limited cost. Once the server is booted and running, the operations being called upon for the underlying OS will be low, so the performance requirements should be minimal for the OS disks and because it’s a server staying on for much of the day, I’m not concerned about boot times.
For this reason, I’ve decided to use two Western Digital Green 2TB drives in a RAID-1 Mirror attached to the on-board RAID controller.
The Windows Home Server 2011 installation automatically creates a 60GB partition for the operating system and allocates the remaining space to a D: partition which is by default used for your own personal data.
The Data in the case of the Windows Home Server environment is the critical piece: Shared copies of pictures, music, documents and digital video library are all stored on the server. These files need to be protected from drive failure to a good degree, and also need to be readily available for streaming and transfer to and from the server. For this reason, I will be using four drives in a RAID-10 configuration attached to the PCI-Express Leaf Computers controller.
This controller offers the ability to use RAID-10 unlike the on-board controller and will be a much higher performing controller which will reduce any bottleneck in the underlying RAID technology. With two disks serving each half of the stripe, the performance will be impressive, and should theoretically outperform the expensive and high power consuming Black Edition drives from Western Digital.
The mirroring of each drive in the Stripe provides the data protection.
Once built, the provided Silicon Image management software can be installed on the server and can help generate alerts to provide warnings when a drive has failed so that it can be replaced as soon as possible to ensure that the data is protected.
Off-site backups of the data will likely be taken to a USB attached SATA-II drive to offer a physical backup Ã¢â‚¬â€œ RAID is not backup and I want to make this clear now.
Presenting the Logical Volumes
So I’ve got my 2TB RAID-1 Mirror for the OS, and I’ve got my 4TB GUID disk for the RAID-10 array, but how will I actually use it? Without Drive Extender, Microsoft are proposing people use separate disks for each shared folder and bump files between volumes when a volume becomes full.
All of this sounds horribly ineffective and effortful, so I instead am going to make the most of DE missing and use NTFS Mount Points, otherwise known as Junctions.
The Windows Home Server 2011 installation will create a C: drive and D: drive. The C: drive will be 60GB for the operating system and will leave a 1.9TB partition based on the remainder of the disk. On this disk, I will create a folder called MNT and using the Junction command in Server 2008 R2, instead of assigning a drive letter to the 4TB GUID disk, it will instead become a logical extension of the D: drive.
The advantages of this are:
- No need to manage partitions.
The underlying disks provide the separation I need, so why complicate things by partitioning the 4TB volume into separate disks for Photos, Videos, Music etc? All this will lead to in the long run, is under provisioning of one of the partitions and I will then spend time growing and shrinking the partitions to meet my requirements which will cause massive disk fragmentation?
- No need to manage drive letters.
Drive letters are a pain, especially if you are expected to have one for each type of shared folder and especially if you need to remember where you put something. I instead will have a super-massive D: drive containing everything. I’m sure the thought of this makes a lot of people cringe, but in reality, what does it matter? It is very unlikely that a problem will occur with the partition unless there is an underlying disk problem, and that in turn will affect all of the partitions.
The only flaw in my plan will be the Home Server 2011 installation process. If it detects my 2TB hard disks and decides to initialise them as GPT disks instead of GUID disks, then I will have to restart the installation, hit into WinPE and manually initialise and partition the disks.
I will require my disks to be GUID and not GPT as when I add the NTFS Junction to the D: drive, its capacity will exceed that permitted by GPT.
Based on the current server motherboard specification (ASUS Intel Atom miniITX board), there is only provision for one PCI-Express card. As a result, all four drives will already be in use on the existing PCI-Express card. The only option for expanding the capacity of the server would be to attach two drives in a Mirror to the remaining two on-board driven ports, however performance on the drives would be lower, and they would be acting as a separate mirror and not part of the RAID-10 configuration.
The alternative option is to replace the four 2TB drives attached to the PCI-Express card with 3TB drives once the price on them is lower over time, however, although this would grant an additional 2TB of usable space, the cost would be high.
If I make the decision to use an Intel Pentium D processor instead, then a miniATX motherboard would offer two PCI-Express slots and opens the possibility to add another four disks in a second RAID-10 configuration allowing anything up to 6TB to be added to the storage capacity of the server depending on the drives installed.
In reality, on our current Home Server, we are storing a little over 1TB of data, so this is about giving us the capacity we need for the next 5 years and dong it right in one move without having to make ad-hoc and ineffective changes down the line, which I am normally pressed into at home due to budget verses cost of used hardware.
In the next 5 years, I will no doubt upgrade my Nikon D40 to a D90 which will result in larger photo file sizes, and our digital libraries will no doubt continue to grow as a significant rate as the kids get older and more into an ever widening range of media, not to mention the likelihood of them getting their own machines which I will need to backup.
4TB of RAID-10 storage gives us 3x the capacity we have currently, more redundant, more preformat and more energy efficient Ã¢â‚¬â€œ Much more for that matter.