1

I have a bunch of (old) NetApp DS14MK2 disks arrays with Fibre Channel connections.

I wouldn't use them to anything critical, but instead of throwing them out, could I use each of them as a separate JBOD for Linux (XFS) or Solaris/OmniOS (ZFS)?

Jasmine Lognnes
  • 2,520
  • 8
  • 33
  • 51

3 Answers3

3

My solution was a bit more complicated. I was able establish a JBOD on my NetApp DS14MK4 (14 x 450GB) using an HP Qlogic QLE2462 HBA on an Ubuntu 16.10 box using the following commands (some settings will be different based on your hard drive type and sizes, so adjust accordingly):

  1. Enable Qlogic HBA BIOS using on system boot-up (Disabled by default)

  2. Use lsscsi or sginfo to list drives in Ubuntu (can use apt-get to install) and make a list of all "/dev/sd?" drives that are marked with "netapp":

lsscsi --list OR sginfo -l

  1. You have to resize the block count using sg_format (originally set to 520) to 512 in order for OS to recognize (-r is a "resize" command and we need to use "-6" as the sense mode here (default is "10")):

sudo sg_format -6 -r --count=-1 --verbose /dev/sd?

  1. Now you need to actually format each drive (I opened 14 terminal windows and did them all at once without issue on an old Pentium D box):

sudo sg_format -6 -F -s 512 --verbose /dev/sd?

  1. Use BlockDev to reread the partitions:

sudo blockdev --rereadpt /dev/sd?

  1. You should now see them using:

sudo cat /proc/partitions

  1. Use GParted (I used the GUI this time) to create partitions necessary to group these later as LVD. First create a partition table: Device > Create Partition Table > Choose "GPT". You will then use GParted to format them as type "lvd2 pv".

  2. Now use VGcreate to create a Logical Volume Group (use partition names here, not device names, i.e. sdb1 NOT sdb):

sudo vgcreate VG_NAMEOFYOURCHOICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 /dev/sdj1 /dev/sdk1 /dev/sdl1 /dev/sdm1 /dev/sdn1 /dev/sdo1

  1. Now you need use LVcreate to create a logical volume using raid5 with all 14 drives using the volume group you just created (I chose a striping length of 64 as is suggested for default on Raid5):

sudo lvcreate -L 5.72T -i14 -I64 -n VG_NAMEYOUCHOSEIN#7 LV_NAMEOFYOURCHOICE

  1. Make sure you can see the logical volume you just created:

sudo lvdisplay /dev/VG_NAMEYOUCHOSEIN#7/LV_NAMEOFYOURCHOICE

  1. We now need to create a folder to mount this logical volume to and set ownership and permissions:

sudo mkdir FOLDERNAME

sudo chown yourusername:yourusername /FOLDERNAME

sudo chmod -R 777 /FOLDERNAME

  1. Let's create a file system on our logical volume (I'm using ext4, you can use jfs or others):

sudo mkfs -t ext4 /dev/VG_NAMEYOUCHOSEIN#7/LV_NAMEOFYOURCHOICE#9

  1. Let's mount this file system to our new folder:

sudo mount -t ext4 /dev/VG_NAMEYOUCHOSEIN#7/LV_NAMEOFYOURCHOICE#9 /FOLDERNAME#10

  1. You can drop this in etc/FSTAB if you wish, the -t in #12 did it for me on reboot nevertheless. You can rerun the mount command if upon reboot you don't have your drive available.

Welcome yourself as a proud owner of a NetApp Custom Fiber Channel JBOD!

2

If Netapp has some sort of custom drive firmware, that might prevent this. This is a pretty common thing to see in the world of storage controllers. You may be able to overwrite this firmware with stock firmware from the drives' OEM, but that may still not work, depending on whether the FC components between the disks and the HBA are also locked somehow.

Basil
  • 8,851
  • 3
  • 38
  • 73
1

This guy have done it.

Get device names with

sginfo -l

Each drive needs to be formatted from 520 bytes to 512bytes.

sg_format --format --size=512 --verbose=/dev/sgX
Jasmine Lognnes
  • 2,520
  • 8
  • 33
  • 51
  • 2
    Not sure how much I trust someone who doesn't know how to pronounce "verbose", spells out "JBOD", RAID5 over 13 and 14 drives.... Just sayin' – Chris S Jul 24 '14 at 19:52
  • @ChrisS He says that any 4gb QLogic will work. He was probably new to storage, when he made the video =) – Jasmine Lognnes Jul 24 '14 at 21:48