Las Solanas Consulting

Storage Virtualization | FAQs & Discussions

How to Attach your Mac Mini or G4 Cube to an iSCSI SAN Storage Array

"Insanely Great!" You may recall hearing that exclamaton in the early 1980s, frequently uttered by IT visionary Steve Jobs, co-founder of Apple (née Apple Computer, Inc.) whenever he saw anything that was... well, insanely great.

I was reminded of that expression today when I installed the ATTO Technologies Xtend SAN iSCSI software initiator on my trusty Mac G4 Cube and began serving highly available storage from my DataCore SANmelody SAN.

Suddenly, my otherwise isolated G4 Cube has access to a large pool of mirrored storage, complete with snapshots for implementing automatic nightly and weekly backups.

In this cookbook, I will describe the hardware and software and also walk through the configuration with screenshots.

SANmelody Software Turns PC Servers into a SAN Storage Arrays

Let's begin by talking about my storage environment. I'm a full-time employee of DataCore Software Corporation and as such, I have built a complete lab to showcase my company's products. My SAN or Storage Area Network is based entirely on DataCore's SANmelody™ software running on commodity servers with their direct attached storage. This unique software package converts those servers into SAN storage arrays offering both iSCSI and Fibre Channel SAN connections.

MacOS iSCSI Virtual SAN
Synchronous Data Mirroring over iSCSI for MacOS

The diagram above shows an abbrieviated version of my lab. For clarity's sake, I've left out the two SANsymphony servers, the two VMWare ESX servers, the SUN Solaris box, and the Fibre Channel infrastructure. What you see above are two Dell PE840 servers running SANmelody, an HP Pavilion (my work machine), and my favorite: the G4 Toaster I bought back in 2000.

The ATTO Technologies Xtend SAN iSCSI Initiator for Mac OS X

ATTO Technologies sells an iSCSI Software Initiator package for the Mac OS that allows any Mac running 10.3.6 or higher to connect to an iSCSI SAN Storage Array by using any available Ethernet port. As you know, the Cube is a very quiet little appliance that has no expansion slots. Combining the Xtend SAN Software Initiator with Datacore's SANmelody software provides a means of expanding the Mac's storage far beyond the realm of the simple external Firewire backup disk: the Cube can now benefit from the advanced features of a Storage Area Network.

The iSCSI protocol is layered on top of IP, so your Ethernet port can still do double duty as Internet connection, AppleTalk File Server, etc. In fact, my G4 Cube uses AppleTalk to access volumes on my old faithful PowerMac 8500 (my vinyl-ripping and editing machine), and now also mounts large volumes from my SANmelody iSCSI SAN. SANmelody's Synchronous Data Mirroring feature means I can keep my enormous iPhoto library secure, and also facilitates moving that data to another machine should I ever (heaven forbid) retire the Cube.

Although the Xtend SAN 2.11 System Requirements ReadMe does not list G4-based PowerPC Mac's like my 450 MHz Cube, I confirm that the software works like a champ in my 10.3.9 configuration.

Installing the ATTO Technologies Xtend SAN software

The Xtend SAN software employs a familiar wizard-like Mac OS installation utility and requires that you have administrative privileges on your Mac. The process also requires that you restart your Mac, so you'll need to schedule a few minutes of downtime.

Installing Xtend SAN software on Mac OS X
Installing the Xtend SAN Software

Making the Mac OS - SANmelody iSCSI Connection

Due to the architecture of the Mac's I/O Subsystem (and/or its interaction with the Xtend SAN iSCSI driver and SANmelody), we will have to manually create the iSCSI channel identifier on the SANmelody server. The Xtend SAN driver creates this unique channel identifier by using the Mac's serial number. There a few ways to find the information you need to create the channel. One way is to read the ATTO Application Note for SANmelody which explains how to find the serial number and create the channel. They suggest looking for the computer name plate (on the back side of your macintosh, or in the case of my G4 Cube, on the underside of the "toaster"). I prefer to simply bring up the "About This Mac" dialog from the Finder's Apple Menu. If you click the "More Info..." button, you'll get the System Profiler utility which lists the Mac's serial number.

Finding The Serial Number On Your Macintosh
Finding The Serial Number On Your Macintosh

Yet another possibility is to try logging in to the SANmelody from the Xtend SAN Utility, and then dumping the SANmelody iSCSI trace logs into a text file and doing a copy/paste of the channel identifier you find there. SANmelody keeps trace logs on all iSCSI and Fibre Channel activity for diagnostic use; when an initiator attempts to login to a channel, the identifier is recorded in the trace log — but never mind that for now; just get the serial number from the System Profiler and let's continue.

Once you have your Mac's serial number, we're ready to create the channel. Go to the SANmelody interface, click on the Application Servers snap-in, and with a right-click over the Application Servers panel, select "New Application Server" from the popup menu. You'll see the dialog below.

Creating MacOS Client in SANmelody
Creating a Mac OS Application Server in SANmelody

Type in a name for your Application Server — I chose "G4Cube" for mine. Then select Mac_OS from the popup menu. Click OK to create the Application Server. Now right-click over the newly created G4Cube Application Server icon and select the "Add Channel" menu item, as in the screenshot below.

Adding a channel to our Application Server
Adding a channel to our Application Server

The Add New Channel dialog is used for those cases where you need to manually add a channel to an Application Server, such as with Mac OS X and the Xtend SAN driver. You'll need to give a name to the channel — the standard is to use your Application Server's name, followed by an underscore and an ordinal identifying the channel, such as "G4Cube_1", as this is the first (and only) channel. As this is an iSCSI channel, we click the appropriate radio button, and then tab to the iSCSI Device Name field.

Assigning iSCSI WWN to MacOS Channel
Assigning the iSCSI iqn to the MacOS Channel

Here is where we'll use your Mac's serial number. For the ATTO Xtend SAN driver, the format of the string is

iqn.1995-12.com.attotech:xtendsan:xxxxxxxxxxx

where the xxxxxxxxxxx string is replaced by your Mac's unique serial number. NB: The string needs to be entered exactly as described, with correct punctuation and case. If you accidentally use a period instead of a colon or vice versa, the login will fail with an error 0x5. Likewise, the serial number should be entered lower case, as well; if you enter it upper case, you'll get the same error.

One last thing before we make the iSCSI connection. MacOS X expects to see an initial volume (known as a LUN) with a LUN value or address of zero on any SAN target it connects to. Therefore, we will need to create at least one volume on SANmelody and map it to the channel before we attempt the login. By default, SANmelody will number the first volume LUN-0.

Now that we have configured our Application Server on SANmelody, we can use the ATTO Xtend SAN utility to login to our SANmelody iSCSI target.

Successful Xtend iSCSI login
Successful Login from Xtend SAN driver to SANmelody

At this point, we can create and map SAN volumes to the Mac over the iSCSI channel.

Configuring Virtual Volumes on SANmelody

[Work In Progress]

Discovering LUNs on MacOS
Discovering SANmelody iSCSI LUNs on Mac OS X

Once the LUNs are visible in the driver, we can then use the Mac OS Disk Utility to partition and / or format the iSCSI volumes.

Formatting iSCSI LUNs on MacOS
Formatting SANmelody iSCSI LUNs with Disk Utility

That's all there is to it.

Crank It Up!

It's benchmark time.

If you are familiar with Apple's G4 Cube, you know it has a built-in 10/100 Ethernet port, and although my Dell PowerEdge PE840 SANmelody servers have Gig-E ports, our iSCSI bandwidth between the Mac and the SANmelody server will be limited to 100Base-T speeds.

As a first test, I copied my iPhoto library from a local volume to the SANmelody iSCSI volume.

iSCSI Performance on G4 Cube
Copying my iPhoto Library to iSCSI SAN Storage

The entire copy of 55.77GB worth of huge JPEG files took roughly 2 hours and 24 minutes. This equates to a transfer rate of 6.59 MB/sec, which is what I would expect from a 100Base-T network. Keep in mind this was not by any means a controlled benchmark. During the copy, I was surfing the web, etc., so my Mac's CPU, memory, Ethernet bandwidth, etc., was not exactly dedicated to the transfer — although I suspect any difference in performance would fall below the noise floor.

More importantly, since installing the Xtend SAN driver and mounting iSCSI volumes to my G4 Cube, I have not perceived any degradation in performance. In fact, iPhoto now opens faster than when the library was located on the FireWire drive. Considering the age of the G4 Cube (450MHz G4 processor and 100MHz memory bus), that's a point worth making.

Snapshots! Keeping an Online Backup Handy

[Work In Progress]

Mirroring The Mac OS Data Volumes Data Volumes

[Work In Progress]

Replicating The Mac OS Data Volumes Offsite

[Work In Progress]

Advantages of implementing storage consolidation with SANmelody™

End result: My data secure on mirrored storage with snapshots — one happy customer.

Customer Support

I was impressed by ATTO Technologies' Customer Support organization. They were responsive and competent at resolving a few errors I encountered when setting up the software. ("That's a lower case serial number, pardner.")

Of course, DataCore's Customer Support is also top-notch. The DataCore Customer Support engineers are experts at isolating and debugging SAN problems (like finding a failing GBIC on a third party Fibre Channel switch by just reviewing the DataCore trace logs).

Building an iSCSI SAN -- the Details

If you would like to see how I built my iSCSI SAN or Storage Area Network, I've written a cookbook which you are invited to read. This particular Highly-Available iSCSI SAN is based on a pair of inexpensive Dell PE840 towers.

"I'm Ready To Get Started. Where Can I Buy This Solution?"

Las Solanas Consulting is not a DataCore reseller nor an ATTO Technologies reseller — this article is published for informational purposes. We will gladly answer any questions you may have about any of the products mentioned here; just call or fill out our contact form.

You can purchase the Xtend SAN iSCSI Initiator software for Mac OS from the ATTO Technologies website. Order fulfillment is via CD shipped to your address — while it's not instant gratification, ATTO had the software at my door in 3 business days (I ordered on a Saturday; the box showed up Wednesday).

You can purchase and download SANmelody™ from the DataCore website. The Virtual Infrastructure Foundation Kit includes a year of annual support and has all the features you need to implement our example above — and at a very attractive price. The package manages up to 3TB of logical disk space and features the Storage Pooling and Thin Provisioning feature, not to mention the sophisticated caching and I/O polling engine.

If you can't purchase online, you can contact DataCore™ or a DataCore reseller for sales information.

If you want to take a test drive of the SANmelody software, you can download a free, no-obligation 30-day evaluation. The evaluation software includes iSCSI and FC support, as well as support for their unique Thin Provisioning feature. You'll see for yourself how easy it is to create a scalable SAN infrastructure on a limited budget.