Friday, March 29, 2013

Eucalyptus SAN Adapter: SAN Considerations

As we have discussed in previous blog posts, if you want to have High Availability (HA) for the Eucalyptus Storage Controller (SC), you must use the Eucalyptus SAN Adapter and a supported SAN. NOTE: To use Eucalyptus with supported SAN storage, you must decide whether administrative access can be provided to Eucalyptus to control the SAN. If this is possible in your environment, Eucalyptus can automatically and dynamically manage SAN storage.

As of Eucalyptus version 3.2.1, Eucalyptus supports the following SANs: Dell Equallogic series of SANs (PS 4000 and PS 6000), NetApp Filer FAS 2000 and FAS 6000 series and EMC VNX. For Dell Equallogic, Eucalyptus requires SSH access to enable automatic provisioning. Eucalyptus will manage NetApp SANs via ONTAPI (version 7.3.3 and above). For EMC, Eucalyptus expects that the EMC NaviSecCLI software will be installed on the Storage Controller host.

Use of the Eucalyptus SAN Adapter gives you the following benefits:
  • Integrate Eucalyptus block storage functionality (dynamic block volumes, snapshots, creating volumes from snapshots, etc.) with existing SAN devices
  • Link VMs in the Eucalyptus cloud directly to SAN devices, thereby removing I/O communication bottlenecks of the physical hardware host
  • Incorporate enterprise-level SAN features (high-speed, large-capacity, reliability) to deliver a production-ready EBS (block storage) solution for the enterprise
  • Attach SAN devices to Eucalyptus deployments on Xen, KVM, and VMware hypervisors
The Prerequisites for using the SAN Adapter are as follows:
With all the above said, the Eucalyptus SAN Adapter functions similarly among the three supported SANs, so the real differentiators, or selection criteria, are going to be the typical ones with respect to selecting a storage platform. Namely, things like iSCSI performance, total storage cost, current employee skill set, current deployed storage platform(s) and the existence of fibre channel infrastructure or SAN will play a key role in deciding which platform to go with. 

First off, speaking from a CIO/CTO perspective, if you are satisfied with your current storage provider (assuming it is NetApp, EMC or Dell), and you have invested in training your storage administrators and engineers on that platform, it only makes sense to stick with that platform. This is probably the most important facet to this decision. If you do not currently use a SAN or use a different storage platform, but are looking to purchase one of the three supported SANs for your Eucalyptus Cloud deployment, then you will want to look at other factors like cost and performance. Cost is a very nebulous topic (pun intended) so it is best to get a quote for a similar storage size and feature set across all three and compare. Performance is also very nebulous because there are many factors that can impact it. I will delve more into this in the next section (technical).

In terms of technical differentiation, there are some key things to look at and some historical points to make. First, lets start with what Eucalyptus will be 'doing' with these storage platforms and what that translates to in terms of feature set and technology. Strictly from a SAN Adapter (Storage Controller) perspective, Eucalyptus is using the SAN to create, mount, snapshot and otherwise 'use' iSCSI block devices. The keyword in that last sentence is 'block'. This is where we get into the historical aspect of the storage platforms supported. 

NetApp has historically been a NAS device and an excellent one at that. Over time, they have moved toward offering block level storage instead of just file level storage. This has been done by creating virtual block devices that sit atop the WAFL layer, thus they are virtual constructs that do not actually have direct access to the disk blocks underneath. I have seen several technical blog posts over the years from various NetApp employees stating that WAFL is a filesystem and that WAFL is not a filesystem. Regardless, I do believe that the virtual construct atop WAFL is still the case. If any NetApp employees read this and know this not to be the case, please comment below (preferably with a few diagrams to back up your claims/data) and I can change this section. Regardless, because much of the value add for NetApp has to do with NAS (or filesystem level) services, it would seem counterintuitive to use a NetApp ONLY for block device exports without using any of the file-level services that NetApp is so great at.

Dell EqualLogic and EMC VNX, by contrast, are devices that were designed to be SANs (not NASes) and export block devices with extreme speed and stability. Both of these are essentially iSCSI implementations of what SANs have done for so long with fibre channel. Being that they were designed to export block devices, they do so extremely well, with excellent performance and via the iSCSI protocol that Eucalyptus requires for Storage Controller use. If you are ONLY using the SAN for Eucalyptus Storage Controller/SAN Adapter, it would make more sense to pick a device that is simplified to do just this. One thing to note, with respect to scalability, between the EMC VNX and the EqualLogic is that to scale an EMC, you simply add more shelves to the unit (up to the capacity), whereas with the EqualLogic, you have to add entire EqualLogic units in order to scale. You can not simply add more shelves as with a traditional SAN. This drives up the cost significantly and it may become a wash (in terms of pricing) should you need to scale beyond a single Equal Logic enclosure. Again, if any of this has changed recently, I invite both Dell and EMC employees to provide information justifying a change and I will be glad to make it.

So, now that we have covered many of the non-technical and technical considerations for choosing the right SAN to use with Eucalyptus, which should you chose? Which would I recommend? I will give you a three point list to help you select which is best for your deployment.
  • If you are using the SAN for more than just your Eucalyptus deployment and using file-level services such as NFS exports and planning to use more advanced SAN software features such as cloning, snapshotting, mirroring, etc., then go with a NetApp.
  • If you are using the SAN ONLY for your Eucalyptus Cloud and ONLY using block-level services/devices, and you do not need to scale beyond the maximum single enclosure size, then go with a Dell EqualLogic.
  • If you are using the SAN ONLY for block-level services/devices and you need to scale beyond the single enclosure size of an EqualLogic, then go with an EMC VNX.
Keep in mind that these are VERY simplified reason points to select each. You may have other constraints or decision points to take into consideration. If you are still stuck in trying to select which SAN to go with, Eucalyptus Professional Services would be happy to discuss your use case, needs and considerations to help recommend which SAN to go with. As with all blog posts, if you have any questions or need further clarification on anything contained in this post, please leave a comment below and I will be happy to reply in a comment, or perhaps another blog post should the discussion warrant it. 

No comments:

Post a Comment