A couple of weeks ago Brian wrote an article titled “F*** the SAN. VDI storage should be local!” It had about 40 comments and 3000 views in its first day, showing the emotion and interest in this topic. It really sparked a small war within the community (as seen by the comments section) and a number of debates about the various use cases for SAN, where it fits, and where it doesn’t. I commented in favor of local disk, but only when it makes sense, and with appropriate caveats. Well, today I am going to take the other side of the argument and say that “Brian is wrong”.
Let me state that I don’t have a dog in the fight. I don’t sell storage (local or centralized), nor do I pimp a product that requires either type of storage (Unidesk will work with either). And while I believe that to ignore local storage when designing a solution is essentially “IT malpractice”, I do not believe you can make a flat out statement (like Brian did) that all “VDI storage should be local!” Also, I should note that I met up with some of the EMC VCE guys (like Fred Nix and Brian Whitman) last week who raked me over the coals pretty well about local disk vs SAN and supplied some of the pro-SAN ideas for this article
With all of this said, let’s get the party started. People are interested in this topic for two basic reasons:
- Storage is the biggest line item (in terms of dollars) for most VDI implementations
- Everyone is looking to “solve” the disk problem (loosely defined as reducing cost and handling the IO)
Obviously just reducing the cost of the storage does you no good if you ignore the IO issue. Yes, you could get really cheap SAN storage by using nothing but the biggest and lowest cost SATA drives around. But you may be doing so without being able to handle the IO demands of the desktops and have to purchase better storage later on anyway. Of course SAN storage is expensive when compared strictly on a GB vs GB cost with local storage, and local storage has been used for desktops for a long time, or so the story goes.
So why can’t I use local storage?
- Not always enough drives/spindles in the server
- DR / Replication
- Fault Tolerance / Failover
- Power management / load management
- Rapid Provisioning and Reclamation
Not enough drives/spindles in the chassis
When looking at today’s hot computing models for enterprises the growing use of blade servers cannot be ignored. Cisco’s UCS, HP’s Blade series and even Dell blades are being purchased at an ever increasing rate. The reasons behind the use of blades are irrelevant. What is relevant is the number of spindles you can get in any given blade.
If we look at the majority of 2 socket blade configurations, your max number of drives is going to be two (2). Assuming you are using 15K SAS you would have about 400-500 total IO available (obviously variable based on configuration). If maximum user density is your goal, you may not have enough IO to support more than 20 or 30 desktops on this blade and need to move to a centralized storage configuration that has some high end caching and the ability to move “hot” data to faster spindles or maybe SSD (local or remote). But if you move to SSD locally your cost per GB may be just as high as your centralized storage anyway.
Of course you can always move into a 1 or 2U rack server configuration, but often times the “VDI Guy” doesn’t own the hardware selection in enterprises and is stuck with what he can get…
Using local storage will require that you use “Some other tool” for DR. SAN based storage allows you to replicate the VMs, leverage things like SRM, and know that the desktop VMs are replicated just like any other VMs in the environment.
Does this mean you COULDN’T do DR with local disk? No, but it does mean having the desktops in a second location, spun-up or ready to be spun-up. These DR desktops have to be patched and managed as any “stand-by machines” have to be. This is often a “hidden” cost we don’t look at much.
Regardless of the hypervisor, recovery from a server/host OS failure is going to be faster with centralized storage. Those of us that are VMware guys have fallen in love with HA services and the ability for VMs for be restarted within minutes on another host in the cluster. If you are using local storage this option goes away and recovery must be done another way. If you are using persistent desktops this becomes a much more sticky issue than if you are using “throw away” pooled desktops.
Power Management and Load Management
While not important to every environment the idea of being able to consolidate loads dynamically during non peak hours, and possibly even power down or place hosts in stand-by is very attractive. If 80% of your users use their desktops during the day, then 60% (or more) of the time the VMs are unused and there is potentially a large power and cooling savings sitting out there.
Without centralized storage these features are not available or require numerous hoops to jump through.
Rapid Provisioning and Reclamation
Another benefit of centralized storage is the rate at which new desktops (or an VM) can be deployed. Often local storage will require longer to provision or sometimes a manual process. Let’s face it, copying a template disk to disk is going to be faster than local disk to local disk over the network.
Of course Reclamation is even a bigger thing to me. If you are allocating persistent desktops, the ability to track your storage use and reclaim as desktops become “Stale” is going to be very important. Much like “VM sprawl” that occurred once VMware kicked in the datacenter door it is likely you will wind up with the same issues here. Unused desktops, old templates, etc etc. I remember a MetaFrame consolidation project I did once where we found 6 servers in a silo that hadn’t been used by a user in over a year… no one ever noticed.
The dynamic datacenter demands centralized control, provisioning and reclamation of resources. Without centralized storage your VDI implementation is essentially NOT part of that dynamic datacenter.
Is this for everyone?
Now, to be realistic, if you work in an environment that only has 20 or 30 servers and is planning to use 2, 3 or 4 of them for desktops you may not see anything in this list that applies to you. If that is the case, that’s OK!!! But for those in enterprise environments looking over their IT landscape and all the requirements placed on systems for recovery, compliance, DR, availability, limited facilities, etc, etc you are starting to see that local disk may reduce CAPEX right now, but create a number of other problems for you and your team.
With all of that said…Brian is wrong. Not ALL VDI storage should local. There is a place for local storage and you should be able to articulate WHY you are (or are not) going to use it. But to ignore SAN storage and wave it off for VDI projects is just as much “IT malpractice” as saying there is no local disk option.