Articles in the Storage category

  1. Is Storage Really That Cheap?

    Sun 05 October 2008

    Nowadays you can buy a 1 TB harddrive for less than 100 euro's . So I build myself a 4 TB NAS box, which is already 50% full. However, although it is to some degree fault-tollerant by using RAID 6, one mistake or catastrophic hardware faillure and all data is lost.

    And that's where the 'problem' start. For every € spend on storage, you may need another € to secure that storage.

    You can choose to take and accept the risk outlined earlier and not to make backups. However, if you do want to make backups of terrabytes of storage, how are you going to pull that off without too much cost? 

    In my opinion, the only reliable and usable solution is to build a second NAS box and sync the two. Ideally, both machines reside at different locations, but hey, I'm talking about a home solution, not a professional environment. Although you might ask why on earth you need 4 TB of space at home in the first place.

    Anyway, the point I'm trying to make is that although storage in itself is cheap, if you want to keep all that data safe, storage is far more expensive than you might think.

    Tagged as : Uncategorized
  2. Building a RAID 6 Array of Mixed Drives

    Sun 10 August 2008

    To be honest, 4 TB of storage isn't really necessary for home usage. However, I like to collect movies in full DVD or HD quality and so I need some storage.

    I decided to build myself a NAS box based on Debian Etch. Samba is used to allow clients to access the data. The machine itself was initially based on 4 x 0.5 TB disks using the four SATA ports on the mainboard. With Linux build-in support for software RAID, I created a RAID 5 array, giving me 1.5 TB of storage space. Since a single movie is around 4 GB, the 1.5 TB turned out to become rather tight.

    So I bought 4 x 1 TB disks and a Highpoint RocketRaid 2320 controller (SATA 4x). I put all 8 disks on this controller.

    I wanted to create a single RAID 6 array using both the 1 TB disks and the 0.5 TB disks. I didn't want to create two separate array's because although it would have provided additional space, it wouldn't have given me the same safety level as RAID 6 does.

    I mainly chose for RAID 6 since I cannot afford a backup solution  for this amount of data. I'm aware that RAID is no substitute for a proper backup, but it's an accepted risk for me.

    Using both 1 TB disks and 0.5 TB disks, how to create a RAID 6 array using different drive sizes? The solution is fairly simple. Just put two 0.5 TB disks together in one RAID 0 volume and you'll have a 'virtual' 1 TB disk. Since I had four 0.5 TB disks, I could create 2 'virtual' 1 TB disks. 

    raidschemeThe only downside is that I had to skim a little bit of storage capacity of the native 1 TB drives, because 2 x 0.5 TB provides slightly less storage space than a single 1 TB disk. We're talking about something like 50 MB here, so It's not a big deal in my opinion. 

    The funny thing is that this array actually performs rather well. The disks are connected using a HighPoint RocketRaid 2320 controller. This controller is used just for it's SATA-ports, the on-board RAID functionality is not used. For RAID, I use Linux software RAID, using mdadm. This is how the RAID 6 array looks like:

            server:~# mdadm --detail /dev/md5
            /dev/md5:
            Version : 00.90.03
      Creation Time : Thu Jul 24 22:40:26 2008
         Raid Level : raid6
         Array Size : 3906359808 (3725.40 GiB 4000.11 GB)
        Device Size : 976589952 (931.35 GiB 1000.03 GB)
       Raid Devices : 6
      Total Devices : 6
    Preferred Minor : 5
        Persistence : Superblock is persistent
        Update Time : Sun Aug 10 15:36:18 2008
              State : clean
     Active Devices : 6
    Working Devices : 6
     Failed Devices : 0
      Spare Devices : 0
         Chunk Size : 128K
               UUID : 0442e8fa:acd9278e:01f9e43d:ac30fbff (local to host server)
             Events : 0.14170
    
    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       8       17        1      active sync   /dev/sdb1
       2       8       33        2      active sync   /dev/sdc1
       3       8       49        3      active sync   /dev/sdd1
       4       9        0        4      active sync   /dev/md0
       5       9        1        5      active sync   /dev/md1
    

    And this is how this array performs:

    server:~# dd if=/storage/test.bin of=/dev/null bs=1M
    
    10000+0 records in
    10000+0 records out
    10485760000 bytes (10 GB) copied, 45.7107 seconds, 229 MB/s
    
    server:~# dd if=/dev/zero of=/storage/test.bin bs=1M count=10000
    
    10000+0 records in
    10000+0 records out
    10485760000 bytes (10 GB) copied, 81.0798 seconds, 129 MB/s
    

    With 229 MB/s read performance and 129 MB/s write performance using RAID 6, I think I should be content.

    Tagged as : Uncategorized

Page 16 / 16