Apr
09
2006

Expanding the capacity of my Media Server

As I mentioned in a previous post, I've build a media server to store all of my music and movies for playback throughout my house. I decided to store everything the original, lossless format. This means that music is stored at full CD bit rate, and more significantly, movies are backed-up with all menus and extras in the original file format. Although I could save a bunch of space by compressing everything to a different format, I want to keep everything in the original format. The drawback is that this requires quite a bit of disk space, more than I originally anticipated.

I justed added another 500GB disk to my RAID array, for a total of 1.5TB of usable space. The great thing about the combination of an Areca 1230 RAID controller and Windows Server 2003 is that I can grow the array / partitions / drives as I add disks. Because this is not exactly a straight-forward process, and because I'm bound to need to do this again, I'm documenting the process here for my reference as well as for the benefit of others.

It is basically a three-step process. First, the RAID Set on the controller card must be expanded. For example, I had a 3-disk RAID 5 array with 1TB usable space (one 500GB disk is devoted to storing parity recovery data, so it is not usable space). After expanding the RAID Set, I have a 4-disk RAID 5 array with 1.5TB usable space. However, this additional space is not visible to the operating system; the operating system can only see Volume Sets and their sizes, not RAID sets (which are only visible to the controller card).

So at this point, the RAID Set is 1.5TB, but the Volume Set on that RAID set is still 1TB. So, the second step is to expand the Volume Set on the RAID controller card. A Volume Set on the RAID controller card can be thought of as a virtual disk drive that is presented to the operating system by the controller card. So I could either create a new Volume Set, which would appear as a new disk drive to the operating system, or expand the existing volume set. Since I don't want a bunch of useless drive letters, I expand the existing Volume Set using the RAID controller card utilities.

Now that the Raid Controller Volume Set is expanded, it appears as a new, larger 1.5TB drive to the operating system. However, this space is not allocated, so the third step is for the operating system to expand the size of an existing "partition" on this RAID Controller Volume Set. Now, here is the slightly confusing thing, the operating system refers to this 'partition" as a "volume set". This should not be confused with the RAID Controller Volume Set. The Operating System Volume Set is a "partition" within the RAID Controller Volume Set. At this point, the process is complete and an existing driver letter on the server will have more space available. Below are step-by-step instructions:

  1. Install the new drive in the server, connecting the drive to the RAID controller card
  2. Boot Windows Server 2003
  3. Go to the Areca RAID controller configuration webpage (must have the Areca ARC HTTP server software installed on the server, the default web address is http://127.0.0.1:81 if you are on the server itself, that machines physical IP address and port 81 otherwise. The default password is 0000)
  4. Expand the RAID Set using the "Expand RAID Set" feature.
    • Continue to use the computer as usual. (It took 22 hours 50 minutes to add a 4th 500GB disk in background mode; it took 12 hours 20 minutes to add a 4th disk through the RAID bios a boot-up, but couldn't use the PC at that time.) You can even reboot if you need to, the expansion will continue in the background with no issues.
  5. When the RAID Set expansion is complete, perform a Volume Set expansion using the same Areca Web Interface. I simply expand an existing Volume Set to take up all of the available free space with the newly expanded RAID Set. It took about 1 hour 15 minutes to go from a 1TB Volume Set to a 1.5TB Volume Set and 2 hours 17 minutes to go from 1.5TB to 2.0TB.
  6. Once the expansion is complete, reboot Windows Server 2003, hit the F8 key the very instant Windows starts to boot, and select Safe Mode Command Prompt
  7. Logon to Windows, a command prompt will open, and run the DiskPart.exe utility. Here are some more details on the utility from the Microsoft website. (Windows XP does have this utility now. Norton Partition Magic may be an easier-to-use alternative if this seems too complicated. Instructions for Partition Magic are beyond the scope of this post.) This process takes only a few seconds. Here are the exact commands I typed:
  • diskpart.exe (starts the partdisk utility)
  • help (displays a list of commands, for reference only)
  • list volume (to list the operating system volumes available and figure out the number of the volume you want to expand; think of these as disk partitions)
  • select volume 2 (this selects my D drive, the drive I want to expand, may be different for you)
  • extend (this extends the selected volume to take up all available free space after the current partition; if you don't want to use all available space, get more details from the Microsoft site listed above)
  • list volume (to make sure the intended volume is in fact larger now)
  • exit (to exit partdisk)
  • CTRL+ALT+DEL (to reboot the computer back into "normal" mode)

Reboot Windows Server 2003; you're done!

Written by Carlton Bale in: Web |

102 Comments »

  • Nate says:

    I'm switching over to an Unraid server and am going to use some of my drives from my raid5 server. Does anyone know if it's possible to 'shrink' a partition in w2k3 server (google says probably for 2K3) and if it's possible to shrink a raid5 array much like it's possible to expand it. Hmmm..

    • Carlton Bale says:

      I've never heard of shrinking RAID arrays. Your best bet may be getting a few cheap drives, using them temporarily, and then selling them on eBay, but that is a pain to do.

RSS feed for comments on this post. TrackBack URL


Leave a Reply

CarltonBale.com is powered by WordPress | © 1996-2009 Carlton Bale