www.assassinserver.com

©Copyright 2012 by assassin @ assassinserver. All rights reserved. This guide and its contents are copyrighted by assassin @ assassinserver. This may be used for personal use by the purchaser only; users are forbidden to reproduce, republish, redistribute or resell and material from this guide without the permission of assassin @ assassinserver.

Table of Guides (with quicklinks):

BACK TO TABLE OF CONTENTS

FlexRaid Overview

FlexRaid is an excellent piece of software that runs in the background of WHS 2011 and allows you to do a few pretty crucial things for your HTPC server

  1. Drive restoration in the event you lose a drive (i.e. parity backup)
  2. Pooling of multiple hard drives into a single “virtual” hard drive which can easily be seen and share on your network
  3. Ability to add full or empty drives to the array
  4. Ability to recover or view data outside the array (i.e. remove a single drive and still access it on another machine)
  5. GUI (graphical user interface)
  6. Option to have FlexRaid e-mail you in event of a failure
  7. Spin up drives only when needed
  8. Ability to use Green drives in the array

For those of you that are new to the idea of a parity drive let me try to explain how it works.

As I have stated in the hardware section of these guides your parity drive needs to be at least as large as your largest drive. For example if you have FIVE 2TB data drives, ONE 3TB data drive, and ONE 4TB data drive then you would need to use just a single additional 4TB parity drive.

The great thing about FlexRaid is that SINGLE 4TB parity drive would be able to restore all Five of the 2TB drives, the 3TB drive AND the 4TB. So while I am careful not to use the term “backup” here in effect that single 4TB drive is going to act as the safety net for the other 7 drives in your server. Pretty incredible and cost efficient.

So how can 1 parity drive restore 7 drives whose sum is greatly more than the single parity drive?

FlexRaid (and others like it) work by summing the contents of the other drives, and writing the sum to the parity drive.

A simple breakdown of how parity works across 4 drives is (examples taken from AVS):

Code:
A   B   C   Parity
0 + 0 + 0 = 0
1 + 0 + 0 = 1
0 + 1 + 0 = 1
0 + 0 + 1 = 1
0 + 1 + 1 = 0
1 + 1 + 0 = 0
1 + 0 + 1 = 0
1 + 1 + 1 = 1

If one of your drives dies the RAID software (or hardware) can take the contents of the Parity file on the last drive, subtract the contents of all the other existing drives, and calculate the value that should have been present on the missing drive. Empty space on one of the drives is simply a whole lot of zeros as far as RAID is concerned, so the parity drive will fill up with a file to get the sum total for all the other drives combined. That sum total includes the 0′s from the mostly empty drive.

So this explains why the parity drive needs to be as large as your largest drive.

Taking this example further, using different sized drives and a parity drive smaller than the largest drive. Assume A,B,C are 2GB and Parity is 1GB and all drives are full:

Code:
A   B   C   Parity
0 + 0 + 0 = 0
1 + 0 + 0 = 1
0 + 1 + 0 = 1
0 + 0 + 1 = 1
0 + 1 + 1
1 + 1 + 0
1 + 0 + 1
1 + 1 + 1

Notice the parity drive cannot put in a 1 or 0 for half the data, because it is too small.

Also, the example shows why the number of drives does not matter. If you keep adding more columns, the math simply takes a little longer to do…but the outcome is still only a 1 or a 0.

Now with all this being said the general consensus is that you should have 1 parity drive for each 8-10 data drives that are in your array. So although you could technically just have 1 parity drive for 20 data drives, most users including myself, would recommend that you have 2 parity drives for 20 data drives to ensure better and more reliable parity backup.

So now do you have it? I hope so as this is what makes building a server such a smart idea. You don’t need expensive 1:1 data backup and can now build a server with HTPC/PC parts and using a software RAID array that is based in Windows and easy to use.

Pretty fantastic if you ask me. So let’s get started…
BACK TO TABLE OF CONTENTS

Installing FlexRaid

Unfortunately FlexRaid isn’t free. But as I have told you before usually my recommendations aren’t going to be the absolute cheapest available.

The first step we need to make is to purchase FlexRaid from the creator. To do this go to this link and purchase the RAID-F + Storage Pooling option.

Alternatively you can try FlexRaid as a trial for free for a few weeks. To do this instead download the Windows version here

Once you have downloaded the file open it to begin installation. Click Run

Click next

Accept the agreement

Choose “Anyone”

Install it on your OS drive

Click Next

Make sure to add a desktop shortcut

Click Next

FlexRaid will now install

Now start the FlexRaid service and click Finish

The service will start. Tell WHS to install

This is the mainscreen that you will see when FlexRaid is run for the first time. Click to register online if you have purchased FlexRaid

Copy and paste your registration code from your e-mail that you received after payment

FlexRaid will now process your registration

You are now greeted with the Login screen. Leave this blank and select “Login”. Note that I never entered a user name or password for FlexRaid once inside the software. You can do this if you like for added security if you think it is needed.

This is the main screen of FlexRaid

This is the shortcut that was placed on your desktop. This is how you will open and access FlexRaid when needed (note that I have Google Chrome installed. I do not like the locked down version of Internet Explorer and find it difficult to use with how I use a server. Should you use something other than the locked down version of IE please realize that theoretically you are putting your server at increased risk)

A few additional steps to take are configuring the WHS and Flexraid recycling bins from the drive(s) that you are going to add to FlexRaid pooling otherwise you may receive a “Could not disable recycle bin settings for drive V” error after building your array. Don’t worry about not having a recycle bin as it will still be there for the pooled drive.

To do this first make sure that you have gone into Control Panel -> Folder Options and allowed hidden folders and protected operating system files to be seen (you can turn these back to default if you like after these steps are completed)

Now right click on the Recycling Bin and choose “Properties”

Locate all your drives that you are going to use in your FlexRaid array. Notice here the “Custom size” by default is selected indicating that this drive will have access to the recycling bin

Change this to “Don’t move files to the recycling bin” for each and every one of your drives that are going to be in the array. Once finished select “apply”

Now open each drive to view its contents. Delete the $RECYCLE.BIN folder (it may repopulate). You should now have removed and deleted any and all files associated with the recycling bin.

After you follow the guides below WHS and FlexRaid will automatically add the pooled drive back correctly to the Recycle Bin. Here you can see my pooled “FlexRaid (V:)” drive that I will show you how to create in the following guides. There are a few final settings for the Recycle Bin you need to make which I will show you at the end of the next guide.

BACK TO TABLE OF CONTENTS

FlexRaid Initial Configuration

First double click the FlexRaid shortcut on your desktop and click “Login”

Click “Add New Configuration”

Choose a name for this configuration. Choose “Cruise Control” and “Snapshot”. Click “Create” when finished.

Notice now on the mainscreen you have a new icon labeled “Server Config 1″. Click on this to open it

Next click on “Drive Manager” which I have highlighted here for you

Now you will see a list of the hard drives that are attached to your motherboard. Now you can hopefully see why I recommended to give them each as detailed a name as possible as it helps identify each drive. Notice here I have five 2TB Data Drives, one 3TB parity drive, and an OS (“C:”) drive. Please note that the “D” drive is the remained of the OS drive that wasn’t partitioned automatically by WHS and I will not include it in my array

Select your first drive (here drive F or “Data Drive One 2TB”) and click “Add to Storage Pool”

At the bottom of the screen you can choose what type of drive you want FlexRaid to use this as. DRU is a data drive. PPU is a parity drive. Since we want to use this drive as our first data drive select “DRU” and select “Add”

Back on the main drive manager screen you can see at the top that this drive has now been added to FlexRaid as DRU1 (aka Data Drive #1)

Let’s do the same thing for our next drive which just happens to be our 3TB Parity drive. This time let’s select “PPU” to designate it as the parity drive and then select “Add”

FlexRaid has now added this as PPU1 (aka Parity Drive #1)

Now continue this for the remainder of your drives. Here is the finished product of my FlexRaid array

Double check your drives and make sure everything looks correct. Once you are ready click “Initialize Raid”

Click yes

Click yes to confirm that you know your PPU (parity) drive will now be erased

Since these drives were all empty the process completed almost immediately. If you are starting with full or semi-full drives then the process will take many hours to complete (this is completely normal as building the parity drive takes time)

Now click on “Home”

Now start the storage pool

You may need to restart your system first after the driver is installed. Click okay and restart your system

Now come back into FlexRaid after the restart and click to start the storage pool again

Once the pool has started exit out of FlexRaid and view your folders. Notice that now your multiple folders which were present in WHS 2011 without FlexRaid are now a single large pooled hard drive

Go back into FlexRaid and select Server Config 1 and then “Preferences and Settings”

Under “Storage Pool Preferences” click to start the pool automatically and choose 15000 (15 seconds) as the delay. Click save

You can also change the drive letter of FlexRaid if you like

Now let’s click on “Info and Stats”

Here you can graphically see the drives that are in your FlexRaid array. Here we can see the five 2TB data drives (D1-D5 in blue) and the single 3TB parity drive (P1 in green). A 3TB parity drive was chosen as this allows me to add an additional 2TB -OR- 3TB data drive(s) in the future.

Now the last setting we need to make is to enable FlexRaid’s internal Recycle Bin. In the previous guide you should have disabled the Recycle Bins for all the individual drives. Now let’s disable the pooled drive’s Recycle Bin and enable FlexRaid’s internal Recycle Bin.

First, let’s disable the newly created pooled drive’s Recycle Bin. To do this right click on the Recycle Bin icon on the desktop and select “Properties”

Now locate and highlight your pooled drive. Here mine is the “FlexRAID (V:)” drive.

Now select “Don’t move files to the Recycle Bin. Remove files immediately when deleted”. Click “Apply” and then “OK”

Now let’s enable FlexRaid’s internal Recycle Bin. To do this first go to your configurator and then “Preferences and Settings”

Next click on “Advanced Properties”

Now scroll down until you see “Enable recycle bin mode”. Note that this by default is set to “false”

Change this to “true” and when finished click “Save”

FlexRaid will tell you that you have been successful in changing this setting

BACK TO TABLE OF CONTENTS

FlexRaid Scheduler

In order to keep your data up to date on your parity drive we need to tell FlexRaid when and how we want it to keep up to date.

These are the different options I am going to cover:

  1. Update: The Update task allows you to update the parity data from updates to your source data. It allows you to keep your RAID in sync when you made modifications to your source data.
  2. Verify: The Verify task does bit for bit verification of your entire RAID array.
  3. Validate: The Validate task does change detection, along with datarot (silent data corruption) detection through data checksum validation. It is actually similar to the Quick Validation in its outputs, but where the Quick Validation simply does a scan based on file time stamps, Validation will scan your files content.

I will summarize the Update, Validate and Verify schedules that I now recommend at the conclusion of this guide for easy reference.

First open FlexRaid and select “Scheduler”

Once inside select your configuration under “Schedule for” and choose “Update” for the “Action”. Next select when and how often you want FlexRaid to Update the array. Here I have chosen everyday at 1AM. Click “Add Schedule”

Note that if you are actively downloading or transferring something to one of your drives during the update, verify or validate process in snapshot mode this will likely cause these processes to fail. That’s because FlexRaid is literally taking a “snapshot” of your hard drives so if something changes from one shot to the next a few hours later (like adding data through a download) then this will be seen as an error. Not a big deal if it happens but just be sure to re-run the scheduler if needed — or just wait until the next day when it runs again and your downloads are finished.

Next I am going to setup the Validate schedule. Here I have set FlexRaid to Validate weekly at 3:30 AM (notice I intentionally chose a time after the Update). Click “Add Schedule”

Now I will setup Verify. Here I have chosen to do this monthly at a time after I think the Update and Verify for that day should be complete. Click “Add Schedule”

Now on the “Scheduled Job Manager” screen you will notice there are no jobs listed (yet). Click refresh.

Now you can see and review your scheduled jobs

So to recap, this is what I now recommend as a schedule for your Flex Raid array:

Update daily

Validate weekly

Verify monthly

Wouldn’t it be nice if you could have FlexRaid e-mail you automatically to let you know its status? We will cover that next.
BACK TO TABLE OF CONTENTS

E-mail Notification in FlexRaid

Another great feature of FlexRaid is the ability to receive automatic daily updates on the status of your job scheduler (if an update is failing its also a clue that you could also have a failing or filed drive).

I have found that the easiest way to get this to work is with a Gmail account. If you already have a Gmail account then you are all set. If you don’t have a Gmail account then you can create one easily for free and just have it forwarded to your regular e-mail account autotmatically. Or you can try to set FlexRaid to send the e-mail to your regular account which I do not cover here.

First go into the FlexRaid control panel and then into “Notifications”

After you have created your Gmail account fill out the following with “smtp.gmail.com” for the Host, “465″ for the Port, enter your username (email address) and email password, fill out the sender and recipient, and then select when and what you want FlexRaid to send you an e-mail about. Once done click “Verify” and FlexRaid will immediately send you a test e-mail

If the e-mail was sent successfully you will see the following in the bottom right corner

Click Save on this screen once finished. If you go to your e-mail account this is what you should see if FlexRaid was successful in sending you an e-mail

BACK TO TABLE OF CONTENTS

Checking the Log in FlexRaid

If you need to check the log in FlexRaid it is very easy to do. Open your OS (“C:”) drive and open the FlexRaid text document

Now you can scroll through the file and look at the log. You can even find out why you might have received and error message or if FlexRaid completed a task

BACK TO TABLE OF CONTENTS

Creating Network Shares in FlexRaid

As a general rule if you are using FlexRaid you should let FlexRaid control your network sharing and NOT WHS 2011

First open FlexRaid, go to Server Config 1 (or whatever you named it) and choose “Server Shares”

Next choose “Select”

You will need to create at least one folder manually to be able to share as you cannot share the entire root drive. Right click on the folder that you would like to share and then left click on “Select” to add it.

Note that FlexRaid will fill up your drives sequentially and you don’t really have to ever worry about if a drive is getting full. It will fill up drive 1 and then move to drive 2 automatically. So make whatever folders you want and don’t worry about if there is room on that particular drive. Its the size of the whole array that is now important.

Now you can see the folder I just shared (V:\Movies). Set a share name, who to share it with and what you want to allow in that folder as far as access is concerned. I choose full because I am the only one that accesses my server. If your situation is different plan accordingly so data is not accidentally deleted.

Click “Add/Save” and this share will now populate

Now when you go to your network you can see the new folder that we have added and shared

One thing I like to do on all my client HTPCs connected to the server is to map the network drive (located on the server) so it shows as a “virtual” physical drive on the machine. This makes adding media libraries in Media Browser, XBMC, etc much easier.

To do this simply locate your networked folder (try to choose the parent folder preferentially) and right click. Then choose “Map Networked Drive”

Here you can change the drive letter. Tell Windows that you want to reconnect at logon as well.

Here you can see the new “Y:” drive that I have added. Windows now sees and treats it the same as any hard drive or USB flash drive on my HTPC. This makes adding libraries a snap.

BACK TO TABLE OF CONTENTS

Installing FlexRaid Updates

Just like all pieces of well developed and well supported software occasionally FlexRaid will come out with an update. This can usually be seen in the top right of the mainscreen when you first open FlexRaid. However, every once in a while I actually go to FlexRaid’s “Latest Download Links” page located here to see if there is a newer version than the one I am running. If there is then we need to update FlexRaid to be able to use it. Updating FlexRaid correctly is key to keeping your drives and settings intact so you don’t have to rebuild your entire array and redo all of your settings.

So first download the new version (if available) and remember where it is saved.

Now open FlexRaid and go into your configuration page. Note here that FlexRaid tells you that the storage pool is running. We want to stop this to be able to apply the update. So let’s click “Stop Storage Pool”

FlexRaid will stop the pool and tell you that it is now stopped

Now click the Start menu and look for the “OpenEgg” folder. Open this and select “Stop Service”. After the service is stopped click “Uninstall” to uninstall the current version

Now restart you server to complete the uninstall

Now locate the new version you found and install it

Click to start the FlexRaid Service and click “Finish”

Reopen FlexRaid and go into your Configurator

Now let’s restart the storage pool by clicking “Start Storage Pool”

You may need to reboot your server one final time to complete the installation

If you come back in to the config settings you will see that your pool is once again running

You have now just correctly and safely upgraded your FlexRaid installation to the newest version. All of your settings and drive designations are saved and intact.
BACK TO TABLE OF CONTENTS

Manually Check Your Array

If you don’t want to setup e-mail alerts you can quickly and easily have FlexRaid run the Update, Validate or Verify on your array. I also do this when I get the occassional error report from FlexRaid. Again, I try to make sure that all downloads have completed (or are temporarily stopped) and that anything else that could change my data during or immediately after the chosen command are not running.

To start open FlexRaid and go to the Config Panel and open the “Toolbox”. Here you will see under quick commands that you can choose Update, Quick Validate, Validate or Verify. Let’s click “Update” to update your array for FlexRaid

FlexRaid will now start updating your array

Once completed FlexRaid will tell you the results. Since the last time I updated my array I have 21 new, 25 changed, 6 deleted, and 0 corrupted files. Usually after an update I like to run a quick validate. So let’s click that now

FlexRaid will now start the quick validate process

And this is the result that I want to see every time: Healthy and Up to Date!

BACK TO TABLE OF CONTENTS

Adding a Drive to Your FlexRaid Array

This guide will show you how to install an additional drive onto your FlexRAID configured server. First shut down your server and install your new hard drive in your case and connect it to your motherboard and power supply. Now restart your computer.

Next you’ll need to first get the Operating System to recognize the newly installed drive. To do this, go to Start-> and RIGHT CLICK on Computer. Then select “Manage”

Inside the Manager you’ll want to select “Disk Management,” which should make a pop up window appear

Inside the Initialize Disk window, select the GPT option to use the drive as a secondary drive. Select this option since this is a hard drive that you want to store information on, NOT an Operating System

Once the drive has been initialized you’ll need to create a new partition so that the drive can store information. Find the new drive and right click to select the New Simple Volume Option

This will bring up a setup wizard to configure the new partition

I didn’t change any of the options inside this wizard, unless renaming the new drive, which helps to differentiate this drive from others on your system

Once you finish the setup wizard, the new drive will get partitioned in order to be usable. This may take a few seconds

Once the new drive has finished partitioning go to your FlexRAID settings and get to the server configuration window

Then click Drive Manager

Select the new drive and then select Add to Storage Pool

For this guide I selected to add the drive as a DRU-type drive (which is a data-type drive). This allows me to expand the total RAID size across all of my DRU drives.

Remember your Parity drive is the drive that will provide redundancy for the information across ALL DRU drives. As such it needs to be as large as your largest DRU drive

Double check to make sure the changes went through correctly

If everything is correct hit Refresh

Then go back to the main menu of your server and select Start Storage Pool to make the changes take effect

Then go to Computer and check to that your total FlexRAID drive has increased

If the drive you just added had data that you want included on your parity drive rebuilding your array at this time is a good idea.

BACK TO TABLE OF CONTENTS

Replacing a Failed or Failing Hard Drive in FlexRaid

One of the many reasons for using a software based raid server is redundancy (notice I didn’t say  “back up” as a raid of any type should never be used as true “back up”) of your data. If you have a failed or failing drive its easy to replace the drive and not lose any of your data.

I recently had a drive that was dropping out of the array. A reboot of the server would make it re-appear. I suspected a failing drive and running the S.M.A.R.T drive analysis confirmed my suspicion.

To do this first open your Flex Raid system control panel. Then select “Drive Testing, Info, and S.M.A.R.T (Health). Select each drive and go to “Drive Analysis”. Then select “Short Test” (or Long Test if you are more patient). After a few minutes go to the “Test Logs” tab and look at the result. Here you can see that this drive was the culprit and gave me a read failure. The rest of my drives checked out fine.

Next click the “Overview” tab to see more about the drive. Here you can see the drive that is failing. Write down the serial number of this drive.

Now power your server down and locate the drive. You can do this by matching the S.M.A.R.T. serial number that you wrote down to the serial number located on your actual hard drive. Pull the drive out of your machine and insert a replacement (and hopefully known working) hard drive in its place. I recommend replacing it with the same size if possible that is freshly formatted and empty.

Now power your server back up. Your OS will likely install new drivers for the new drive that you just attached.

Go to “Computer” under the start menu and look at your drives. You should see your FlexRaid pooled drive as well as your new drive you just added. Here you can see my new drive which I also labeled “Server Drive 4″ just like the previous drive. Its drive letter “D” listed below — remember this drive letter as it is important for later.

Now let’s open FlexRaid again and look at “ServerConfig”. Click on “Drive Manager”. Click “Stop Storage Pool”. Then click on “Drive Manager”

Here you will notice that FlexRaid recognizes that my “F” drive (the failing drive) has been pulled and it notes its status as “Missing”.

Now highlight the missing drive (DRU2 here) and select “Restore/Swap out”

FlexRaid will now ask you what you want to do

Remember the drive letter I asked you to remember? Use that as the drive that you are using to replace your failed drive. Once you have verified this click “swap out the drive first. Then, restore the data into the new drive.”

The process will now start

Depending on the size of the drive and how much is on the drive this will take a few minutes to a few hours while it rebuilds the data.

Once the drive has been rebuilt go back to “Drive Manager” and confirm that your missing drive has been rebuilt.

Next restart the storage pool

After the pool has been restarted you should again see the full size of your FlexRaid pooled drive under “Computer” in the start menu

www.assassinserver.com

©Copyright 2012 by assassin @ assassinserver. All rights reserved. This guide and its contents are copyrighted by assassin @ assassinserver. This may be used for personal use by the purchaser only; users are forbidden to reproduce, republish, redistribute or resell and material from this guide without the permission of assassin @ assassinserver.

Digiprove sealCopyright secured by Digiprove © 2013

assassin