Multi-Tenancy

Another question from someone I work with.  “Can you explain the meaning of ‘Multi-Tenant’?  Aren’t all virtualized servers and storage ‘Multi-Tenant’?”

The term Multi-Tenant is a little misleading.  Technically, yes virtualized servers are multi-tenant in that there are multiple servers running on a single server.  The term Multi-Tenant in the technology world however typically refers to a system where more than one company is using the same systems.

By way of example, we can look at a cloud hosting provider such as HP’s Cloud System Matrix (CSM).  As a disclaimer, this not an official HP Blog, and I am not an expert on CSM, but I do have a solid understanding of it.  So on CSM, you have multiple options.  The most common and cost effective method is to simply purchase a virtual instance of a server.  Essentially you get a virtual machine.  Your virtual machine is on the same physical machine as several other peoples.  In fact, it might get moved to other servers using vMotion without your knowledge.  The concept is that you are simply renting or leasing a virtual machine, but you don’t care what the physical hardware is.

In the HP StoreServ, formerly 3Par, storage, arena, we have a similar concept of multi-tenancy.  Consider the design of the 3Par array.  Everything within the system is built first for redundancy, then for performance.  It is the only truly tier 1 array that extends from the SMB through the global enterprise using the same architecture.  The system was originally designed for hosting providers, thus everything had to remain functional no matter what.  With this in mind, the system was created to be multi-tenant.  It is literally possible to present the system as multiple virtual SAN’s without the users realizing it.  This is perfect again if you want a granular control of your SAN, but you want to rent or lease it.  A service provider might purchase a large system, and partition it off to many different companies.  Since they all share the SAN, the system in multi-tenant.  The HP StoreServ array is able to give a secure virtual san to each user.

So to wrap up, something which is virtualized but not multi-tenant would be most traditional virtualized systems.  A company virtualizes their infrastructure within their own datacenter, or even at a colo.  Since they are the only company on the system, that would be a single tenant system, or not-multi-tenant.

Multi-Tenancy

SAN v. NAS

In my job at HP I come into contact with many people with many questions.  Some are quick answers, but many are an opportunity for me to spend a few min educating them on storage or virtualization.  Anyone who knows me knows I am passionate about Storage and Virtualizaiton, and I love to be able to help explain what I have learned.  I have a similar passion for learning from others and asking questions, but that is a topic for another post.  Going forward, rather than responding to questions via e-mail I am going to try to use this as a forum to reach a broader audience.

This question came to me from a friend, whom I work with from time to time, who is in a similar line of work, and loves to learn and ask questions much as I do.  He writes, “Why would anyone use a (Insert Unified Storage Here)  as a “NAS”?”.

Unified Storage essentially refers to any array that can present both file and block.  Unfortunately this is a bit misleading.  The reality is that File and Block are two different things.  Block storage is the underlying logical storage typically presented as a raw device to the operating system, whereas File storage requires a file system and is presented to the file system through a path using SMB(CIFS), or NFS.  So the misleading part of this is that you can’t have both in a single controller, or controller pair.

Most companies start as one, File for example, and then present the block storage out through the file controllers.  This creates some significant performance issues.  This requires a multi layer system which is inherently inefficient.  On the other side for a company starting with a block system and adding file, it ends up as a block system and a fiber attached “Gateway”, which is essentially a dedicated server.  As you can see neither solution is doing both well, but it works well enough.  Some systems do better at masking themselves, but at the end of the day they only do one well.

So back to the question, why would anyone use a Unified System as a NAS?  Honestly it usually comes down to simplicity and licensing.  Coming from a mixed windows and *nix background both, I am torn here.  In a windows environment, SMB v3 on Windows 2012 will provide a much higher level of performance, but there is also a cost for the windows licensing.  For many smaller shops, either using a linux server, running Samba, or a small unified appliance will provide a simulated windows file server.  While it might lack some of the advanced features of the newer versions of windows, the costs are usually lower, and there are sometimes management or other features which are attractive.

The short answer is that many small shops like a hybrid appliance, and find that the cost makes it very attractive.  For larger companies, this approach does not make sense, but when you are running an one man IT shop, this is a potentially compelling fit.

SAN v. NAS