For another project, I had reason to try and find out the limits of the OnTap 8 Cluster-Mode; apart from the fact that NetApp need taking out and shooting with regards to their documentation, I’ve ended up reading more about Cluster-Mode than was probably entirely necessary for this project but it has been fascinating and some subsequent conversations with people have left with a very distinct impression that few people really understand what Cluster-Mode does. I made assumptions about what it was based on biases and prejudices from using other products.
For some reason, I equated OnTap 8 Cluster-Mode with SONAS and Isilon for example; this was a mistake, NetApp have as per usual taken their own approach and have produced something quite different. It is probably useful to understand some terminology.
Global Namespace is a term which gets thrown about a lot and is going to probably cause confusion when comparing products.
A File System is a method of storing and organising computer files and their data.
A Global NameSpace provides an aggregated view of an Enterprise’s File Systems allowing files to be accessed without knowing where they physically live; it is a virtual directory structure.
NetApp’s Cluster-Mode is really the aggregation of a number of NetApp Filers and volumes into a single virtual server, providing a Global Namespace for this aggregation, meaning that instead of having to know which filer a share lives on, it is possible to move from mounts which look like:
to mounts which look more like
This is obviously a lot easier for the end-users and means migrations etc do not require reconfiguration of end-user machines. This is a good thing!
OnTap 8 Cluster-Mode does allow you to aggregate performance of up to 24 filers; all of them can see all of the data and serve it out. But as far as I understand and I will be happy to be corrected, you are still limited to file-system sizes of 100 Tb i.e the maximum size of a 64-bit aggregate and also as far as I can tell, you are limited to having the file-system owned by a single HA pair. Data is not striped across all the nodes and the loss of an HA pair will result in the file-systems being hosted by that pair going off-line.
Isilon, IBM and HP in their products allow file-system sizes far in excess of this and measure their sizes in petabytes; this is because at their back-end, there is a true cluster file-system. This enables an individual directory for example to be considerably larger than 100 Tb or even individual files to be larger than this. Some of you are probably now shaking your heads and wondering what sort of files could possibly be that large; I will admit that 100 Tb would a very large file but files in excess of 1 Tb are not that uncommon in my world and a 100 Tb file-system could only have 100 of these in, not that much really.
A single file-system can also be made up of pools of storage which performs in different ways and can be fairly easily be automatically tiered; you can have files in the same directory which actually live on differing tiers of storage. Your home directory for example, those files which you are currently working on could be sitting on active disk whereas the files which are gathering dust could live on spun-down SATA.
Isilon, IBM and HP don’t have to implement a Global Namespace because their file systems are large enough and are distributed in such a way that a single file system could provide all file space required by an Enterprise.
Now NetApp’s approach does have some huge advantages when building Secure Multi-Tenancy for example and it allows for a very granular approach for replication etc. Also NetApp don’t have to deal with huge amounts of meta-data and their file-locking is probably easier but it is different.
There is certainly a take-away from my research….
Global Namespace != Single Huge Filesystem
Now perhaps you already knew this but I suspect many were under the same delusion as me! And does this mean that NetApp don’t have a true Scale-Out Solution? I can certainly make arguments for both views.
Bring on OnTap 9! I reckon that’s the release which will combine it all including Striped Volumes from 7G.
p.s If I am completely wrong; it’s NetApp’s fault, the documentation and description of Cluster-mode is rubbish! Truly terrible! And yes, I could get someone from NetApp to come and talk to me about it but if I can’t get it from the documentation…you fscked up!