Data Robotics - Drobo gen2 (firmware 1.3.0)

 

2009-11-19 by malik@whitehats.ca

Testing on Ubuntu 8.10 64bit

 

Well, itís been a while since Iíve posted any content on the site.I did some testing of my new Drobo 2nd generation unit and figured Iíd post some of my results in the hopes that theyíll be useful for others.I looked around quite a bit for statistics published and found some but none that gave me a really good sense of what to expect for real world data throughput in a configuration that is a little less than typical, a setup under Linux.

 

††††††††††††††† root@hardy:~# more /etc/lsb-release

††††††††††††††† DISTRIB_ID=Ubuntu

††††††††††††††† DISTRIB_RELEASE=8.10

††††††††††††††† DISTRIB_CODENAME=intrepid

††††††††††††††† DISTRIB_DESCRIPTION="Ubuntu 8.10"

 

††††††††††††††† root@hardy:~# uname -a

††††††††††††††† Linux hardy 2.6.27-15-server #1 SMP Tue Oct 20 07:30:41 UTC 2009 x86_64 GNU/Linux

 

I am using ext3 for the file systems (4 @ 1.5tb Seagate ST31500341AS (7200rpm) drives. Drobo creates 3 devices of 2tb each visible to the OS).I plan on using only 2 of the three devices as much as possible to allow drobo the room it needs for data redundancy across drives and to achieve better performance etc.

 

root@hardy:~# fdisk /dev/sdd

 

The number of cylinders for this disk is set to 267349.

There is nothing wrong with that, but this is larger than 1024,

and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs

†† (e.g., DOS FDISK, OS/2 FDISK)

 

Command (m for help): p

 

Disk /dev/sdd: 2199.0 GB, 2199023185920 bytes

255 heads, 63 sectors/track, 267349 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x0005c670

 

†† Device Boot††††† Start†††††††† End††††† Blocks†† IdSystem

/dev/sdd1††††††††††††† 1††††† 2673492147480811†† 83Linux

 

Iíve also installed the opensource drobo-utils (http://drobo-utils.sourceforge.net/) though I have not dug into things to see why it says my partition type is NTFS.For each device I chose msdos using parted and then created an ext3 filesystem.

 

DroboView - My DroboView

 

droboutils2.jpg

DroboView - Drive Statistics

 

For those that want immediate gratification Ė my objectives and results follow.Please read on further down for more specific information that helped me formulate my opinions.

 

My Drobo Objectives:

 

1.††††††††††† Have redundant solution to achieve some Business Continuity/Disaster Recovery Planning objectives.

2.††††††††††† Have an easily growable file systems of decent capacity

3.††††††††††† Have these file systems locally available to the Operating System Drobo is connected to

4.††††††††††† Have these file systems remotely available via the network

5.††††††††††† Have enough throughput read/write speed to run VMware or VirtualBox instances from without unacceptable latency from the local OS

6.††††††††††† Have enough throughput read/write speed to run VMware or VirtualBox instance from without unacceptable latency from across the network.

 

Results:

 

1.††††††††††† Achieved!

2.††††††††††† Achieved! (performance degradation not observed yet but expected as drives fill up)

3.††††††††††† Achieved!

4.††††††††††† Achieved!

5.††††††††††† Sort of - VM instances do run but are a bit slow - they are still functional though

6.††††††††††† Not achieved - too slow to be usable by my standards

 

Todo:

 

Get a Firewire 800 instance and see if this improves things further.The darn card I got to use was PCI64 and I needed to get PCI Express (doh) so I only tested Firewire 400.Incidentally the Drobo user manual states that you need to get a Firewire 800 to 400 cable if you want to use Firewire 400 with Drobo and that this is not included.It was indeed included.The Firewire 800 to 800 cable was not included (suited me fine as I didn't have Firewire 800 available and needed the cable shipped).I did purchase a separate Firewire 800 cable (1394b) but still have to get an interface for it.

 

I connected Drobo via firewire 400:

 

††††† root@hardy:~# lspci | grep 1394

††††† 05:03.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)

 

I connected Drobo via USB2:

 

††††† root@hardy:~# lspci | grep USB2

††††† 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 02)

††††† 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02)

I copied data over the network via Network Interfaces at gigabit:

 

††††† root@hardy:/proc# lspci | grep Ethernet

††††† 02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 12)

††††† 05:02.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter (rev 11)

 

††††† root@hardy:/proc# mii-tool eth0

††††† eth0: negotiated 1000baseT-FD flow-control, link ok

 

My connected storage is as follows (Vendor: TRUSTED is Drobo):

 

††††† root@hardy:~# cat /proc/scsi/scsi

††††† Attached devices:

††††† Host: scsi0 Channel: 00 Id: 00 Lun: 00

††††† Vendor: ATA†††† Model: ST3500630AS††††† Rev: 3.AA

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 05

††††† Host: scsi1 Channel: 00 Id: 00 Lun: 00

††††† Vendor: ATA††††† Model: WDC WD5000AAKS-0 Rev: 12.0

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 05

††††† Host: scsi2 Channel: 00 Id: 00 Lun: 00

††††† Vendor: HL-DT-ST Model: DVD-RAM GSA-H50N Rev: 1.00

††††† Type:†† CD-ROM†††††††††††††††††††††††††† ANSISCSI revision: 05

††††† Host: scsi2 Channel: 00 Id: 01 Lun: 00

††††† Vendor: ATA††††† Model: WDC WD2000JB-00G Rev: 08.0

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 05

††††† Host: scsi8 Channel: 00 Id: 00 Lun: 00

††††† Vendor: TRUSTEDModel: Mass Storage†††† Rev: 2.00

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 02

††††† Host: scsi8 Channel: 00 Id: 00 Lun: 01

††††† Vendor: TRUSTEDModel: Mass Storage†††† Rev: 2.00

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 02

††††† Host: scsi8 Channel: 00 Id: 00 Lun: 02

††††† Vendor: TRUSTEDModel: Mass Storage†††† Rev: 2.00

††††† Type:†† Direct-Access††††††††††††††††††† ANSISCSI revision: 02

 

Mounted they look like:

 

††††† root@hardy:~# df -h

††††† Filesystem††††††††††† SizeUsed Avail Use% Mounted on

††††† /dev/sdc1††††††††††††† 47G610M†† 44G†† 2% /

††††† tmpfs†††††††††††††††† 2.0G†††† 02.0G†† 0% /lib/init/rw

††††† varrun††††††††††††††† 2.0G648K2.0G†† 1% /var/run

††††† varlock†††††††††††††† 2.0G4.0K2.0G†† 1% /var/lock

††††† udev††††††††††††††††† 2.0G2.9M2.0G†† 1% /dev

††††† tmpfs†††††††††††††††† 2.0G†† 12K2.0G†† 1% /dev/shm

††††† lrm†††††††††††††††††† 2.0G2.6M2.0G†† 1% /lib/modules/2.6.27-15-server/volatile

††††† /dev/md0††††††††††††† 463G310G130G71% /hardy

††††† /dev/sdc6††††††††††††† 42G5.5G†† 35G14% /home

††††† /dev/sdc3††††††††††††† 47G3.8G†† 41G†† 9% /usr

††††† /dev/sdc5††††††††††††† 47G1.4G†† 44G†† 4% /var

††††† /dev/sdd1†††††††††††† 2.0T240G1.7T13% /drobo/1a

††††† /dev/sde1†††††††††††† 2.0T236G1.7T13% /drobo/2a

††††† /dev/sdf1†††††††††††† 2.0T199M1.9T†† 1% /drobo/3a

 

My /etc/fstab looks like:

 

# /etc/fstab: static file system information.

#

# <file system> <mount point>†† <type><options>†††††† <dump><pass>

proc††††††††††† /proc†††††††††† proc††† defaults††††††† 0†††††† 0

# /dev/sda1

UUID=4b87970f-6049-40be-afdd-86bf691a4bbd /†††††††††††††† ext3††† relatime,errors=remount-ro 0†††††† 1

# /dev/md0

UUID=7433b15f-27cc-433d-b01c-6e1aa7f9d1e7 /hardy††††††††† ext3††† relatime††††††† 0†††††† 2

# /dev/sda6

UUID=000e2437-ba8f-4145-9f07-853ba0d667db /home†††††††††† ext3††† relatime††††††† 0†††††† 2

# /dev/sda3

UUID=77ff472e-0372-44c9-97b1-8d9f28392bb8 /usr†† †††††††††ext3††† relatime††††††† 0†††††† 2

# /dev/sda5

UUID=dc5be55f-b9a9-49d7-9ef5-ca6cb7c0de4b /var††††††††††† ext3††† relatime††††††† 0†††††† 2

# /dev/sda2

UUID=7250fc6f-a65d-4832-b523-13c949b54e23 none††††††††††† swap††† sw††††††††††††† 0†††††† 0

/dev/scd0†††††† /media/cdrom0†† udf,iso9660 user,noauto,exec,utf8 0†††††† 0

/dev/fd0††††††† /media/floppy0auto††† rw,user,noauto,exec,utf8 0†††††† 0

/dev/sdd1†††††† /drobo/1a†††††† ext3††† relatime††††††† 0†††††† 2

/dev/sde1†††††† /drobo/2a†††††† ext3††† relatime††††††† 0†††††† 2

/dev/sdf1†††††† /drobo/3a†††††† ext3††† relatime††††††† 0†††††† 2

 

 

Additional Environment and Test Info:

 

1.       My Motherboard is an ASUS P5B Deluxe (http://asus.com/product.aspx?P_ID=bswT66IBSb2rEWNa)

2.       All testing was done with drobo at ~13% capacity (i.e. 780GB of data on disk of potential 6TB of space)

3.       The ~4gb test file was 4032823296 bytes (an ISO image)

4.       I didnít measure length of time to xfer files, I monitored file IO between the destination (to) and source (from) and took an average.I used conky (http://conky.sourceforge.net/) to do this.

 

droboconky1.jpg

Conky Ė Example local read from SATA3 write to Drobo

 

Test Results Expanded:

Firewire 400 Tests:

 

Well, the first test which I repeated twice was so dismal that I didnít bother testing further.I donít recommend using Firewire 400 (1394a) as USB2 results were much better.I wish I had some stats on Firewire 800 (1394b) but I donít.If I do end up testing with Firewire 800 Iíll update and add a section on that.

 

Copying a ~4gb file from a 200GB RAID 0 (/dev/sdc) config consisting of the ATA ST3500630AS (Seagate IDE) and WD2000JB-00G (Western Digital IDE) drives and Drobo Lun 00 (/dev/sdd1) I had write thoughput of a steady sustained 11mb/s.I repeated the test twice.I did not test read IO.

 

USB2 Tests:

 

The general results are that youíll see ~21.5mb/s average when copying data to and reading data from drobo when attached locally via USB2 with large files and itís pretty consistent.Thatís not great but itís not that bad either Ė I give it a pass for usability.How this will work out when doing multiple read/writes at the same time Ė not sure.That is something to seriously consider testing further (i.e. streaming media/video or music at the same time as doing a large file xfer).The only test I have done on this so far was running a VMware instance from the mounted drobo media and copying a file at the same time.The Virtual Machine slowed to a crawl during this time and was basically unusable.Thatís just an observation Ė I didnít dig into it to really get to the root of the issue.I have assumed it is because of the IO overhead.

 

Copying the same ~4gb file as in the Firewire 400 test from /dev/sdc6 to /dev/sdd1 resulted in a steady average throughput write of ~22mb/s.Copying the same ~4gb file from /dev/sdd1 to /dev/sdc6 resulted in pretty much the exact same results of ~22mb/s.

 

Copying the same ~4gb file from /dev/sdc6 to a SATA3 drive (/dev/md0) resulted in ~41mb/s.

 

Copying the same ~4gb file from /dev/md0 to /dev/md0 results in ~65mb/s.

 

Copying the same ~4gb file from /dev/md0 to /dev/sdd1 resulted in an average of ~21mb/s.

 

Copying the same ~4gb file to an SMB share /dev/sdd1 mounted across the network (Windows Vista 32bit with SATA3 Drive not in RAID configuration) resulted in ~5.2mb/s.

 

Copying smaller files across the network to an SMB share /dev/sdd1 resulted in higher throughput of ~9.1mb/s (files of approx 1mb in size).

 

Copying the same set of smaller files an SMB share to /dev/md0 resulted in only slightly higher throughput of ~9.2mb/s.

 

Copying the ~4gb file over the network to /dev/md0 resulted in ~13.1mb/s.

 

Observations:

 

1.††††††††††† I did copy some data to /dev/sde1 and then pulled one of the drives (hot) out of drobo.It did it's thing and within ~30 seconds the lights had reverted back to green.My data was still available which was expected.Hurray!This was really important for me and one of the primary reasons for purchasing a Drobo.

 

2.††††††††††† If you edit your /etc/fstab to add mounts and drobo is not available at boot you'll likely drop to a maintenance (init 1 or 2) shell.I had an issue where I had drobo unplugged from the computer and rebooted which caused the system to drop to the maintenance shell.Oh well, not a Drobo issue but something to note for others.If this happens you can plug in Drobo and reboot or edit your /etc/fstab and remove the Drobo mount points and reboot, plug in Drobo and then re-enable your mount points.Just a few suggestions.

Notes on installing drobo-utils

 

http://drobo-utils.sourceforge.net/

 

  1. Download the drobo-utils pkg from Sourceforge

 

  1. Uncompress it

 

  1. Move the ./hoho directory to /opt/drobo

 

  1. Edit the users ~/.bashrc file and add the following:

 

PATH=$PATH:/opt/drobo

export PATH

 

  1. Edit the /opt/drobo/droboview file and change the file to read:

 

#!/bin/sh

exec sudo /opt/drobo/drobom $* view

 

  1. Create a file /usr/share/applications/drobo-utils.desktop containing:

 

[Desktop Entry]

Encoding=UTF-8

Name=Drobo-Utils

Comment=created by Jamie

Exec=gnome-terminal -x "/opt/drobo/droboview"

Terminal=True

Type=Application

Icon=xchat

NoDisplay=false

 

 


Non-Active Sitemap

Copyright © 2000-2014 Whitehats.ca
Contact Information 519.221.9132 : Web Contact webmaster@whitehats.ca