Expanding local storage with minimal downtime

Welcome to the first day of storage week of SQL University.  Over the next week, we’ll be covering some different topics, at different levels, but hopefully the information is useful to everyone.

One of the big reasons that companies pay for storage arrays is that when it comes to expanding storage (LUNs) you can do it quickly and easily with no downtime.  This begs the question, how do you expand your storage when you are using local disk, with little to no downtime?

So assume that you’ve got 4 72 Gig spindles in your server, and you want to upgrade these to 400 Gig spindles, you’ve got two options.  The first requires a lot of downtime, the second requires basically none.

With a bit outage

If your RAID card doesn’t support online expansion (the documentation for the RAID card will tell you) then you’ll have to take a decent outage to do this.  You’ll need to connect another hard drive like a large USB drive, down all the services, and copy all the data off of the disk onto the USB drive (backing everything up to tape will work as well).  Then down the server, remove the old drives, put in the new drives and create a new RAID array.  Boot Windows back up, create the partition (don’t forget to align the partition) copy the data back to it and you are up and running.

With a really small outage

If you have a RAID card that supports online expansion (the documentation for the RAID card will tell you) then you can do this with little to no downtime.  First replace each disk one at a time, leaving enough time to rebuild the RAID array so that you don’t loose any data.  Once all 4 disks have been replaced (this will take 2-3 days to get to this point) either open the RAID cards management tools, or reboot into the RAID card’s BIOS and have the RAID card expand the virtual disk (or what ever the manufacture calls it).  Once that process is done bring Windows back up if you had to reboot into the BIOS, and open diskpart and use diskpart to extend the volume.

This is done by opening diskpart and typeing in the following:

list disk

select disk n


You use “list disk” to find the disk number, then use “select disk n” to select the correct disk where n is the number of the list that shows from the output of list disk.  The “extend” command extends the volume to fill the disk.



2 Responses

  1. Does it really normally take 2-3 days to swap out and rebuild 4 drives? (It took us about 45 minutes/drive for the re-build from 146 GB drives to 300 GB drives.)

    I would put a caution note on this that during the re-build time if a different drive fails you are screwed with RAID5, and possibly with RAID10.

  2. It can, depending on the speed of the disks, how many disks their are, and how busy the disks are. I’ve seen extremely busy RAID 5 arrays take 12-24 hours to rebuild a single disk because the disks were already running at close to 100% utilization.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trust DCAC with your data

Your data systems may be treading water today, but are they prepared for the next phase of your business growth?