In my last post, I wanted to point for people who think of OpenStack as “too complex” stacks up component for component to a VMware stack; now that is not to say they are equal in every way, far from it. They can, however, coexist as I still believe they have different purposes in the data center. This post lead to a conversation with Trevor pot which basically boiled down to KVM v ESXi - a very interesting topic, and not something we are likely to solve on Twitter or a blog post. But, as Trevor usually does, he made me think (shaking fist in air at Trevor - how dare you make me think!).
My position is that I would never deploy KVM to an SMB, which Trevor has experience doing, and successfully done so. He also cited vendors such as Scale Computing as a success story about deploying KVM in the SMB, which is not an apples to apples comparison between KVM and ESXi in my opinion.
First and foremost, when I make the decision to deploy Scale Computing, or similar vendors who have essentially hidden or abstracted KVM into a black box behind the scenes, I am generally not making the decision to deploy them BECAUSE of KVM. Rather I would chose Scale Computing for a great many number of SMBs because of what Scale Computing has built for me as an administrator to worry about managing my virtual machines and applications, not the underlying hypervisor. There are quite a few SMBs where even something Scale Computing has too high of a cost. Having worked at smaller VARS/MSPs I can tell you that there are many SMBs who don’t need more but a few servers for them to operate their business, and I can and have do this very easily with ESXi and no vCenter while still providing and meeting SLAs and availability concerns.
Just to be clear here - Scale Computing is a GREAT solution, I am not bashing them because of KVM. They have proved this model out and would sign off on the purchase an implementation any day. For that same company, however, I might (and probably would) not sign off on a pure KVM deployment.
Another concern I would have with deploying pure KVM at an SMB is ongoing maintenance and support. While I, as an engineer, may very well be able to support the KVM deployment, you also need to consider that you may not also be around, I mean heck if I won the lottery tomorrow I’d probably be taking a long vacation at the beach. So, why is that a problem? Having been Director of IT for a few different organizations, and involved in the hiring process with several others, I can tell you that finding a quality Linux operations/IT engineer is not small task - at least in Boston (which isn’t exactly the equivalent of Death Valley for the tech world). Now, I have met a great deal of programmers well versed in linux - but they don’t want to do ops, and if we are talking about a typical, non tech SMB, they are probably not interested in doing it full time…they’d rather be developing - that that is totally cool, but also means the SMB will struggle to replace your skill set. (That’s not to say programmers can’t do IT, please don’t extract that from what I have said - its just generally not their passion, not the thing they want to do everyday. Someone I consider one of my best friends, and is a programmer, understands and COULD do IT/infrastructure very easily, it’s just not what he wants to do).
Another area to consider is the ecosystem - how many backup vendors support KVM? Veeam? Nope; they support VMware and Hyper-V though! Unitrends? Nope; support VMware and Hyper-V though! Now before you go rip me up on Twitter, yes KVM runs on Linux so if you can backup Linux you can backup the related files. You can also do in guest backup of the virtual machines but at this point you may be making decisions to scrape previous investment and knowledge for certain tools to support KVM. Check out IT support forums and watch the tumbleweeds roll by when someone asks a question on pure KVM or Xen. Since I mentioned Xen, probably a great time to point out that before my first production deployment of VMware back in 2008 we had tested VMware, Xen, and Hyper-V. From a pure technology and performance standpoint, we actually selected Xen for the project, however during the production POC we ran into some errors even Google hadn’t heard of. We hoped on the VMware community forums and started searching for posts related to the NIC we were using (was a NIC problem with Xen) and had plenty of similar posts and ways to fix it - we ended up switching to VMware (and this was a company that pinched EVERY penny - even the CTO saw the value in spending the money on the VMware licenses).
If KVM and OpenStack are so great, why are so many vendors making a career out of hiding or abstracting what they are behind some other management layer? If we go up to a full “cloud” solution you have vendors like Mirantis also abstracting KVM and OpenStack, as well as Project Caspian which EMC announced at EMC World. While I am sure there are some, I don’t know of any vendors who have built a black box to sell to customers to completely mask the full suite of VMware products - why is that? Some might point out that Nutanix has built Acropolis which can abstract ESXi/vCenter - and that is quite true. However, I don’t think (but don’t know since I don’t work for Nutanix) they built Acropolis with the intention of making ESXi/vCenter easier to manage - they made it so they would not have to rely on ESXi at all and could deploy KVM instead (that’s not meant to be FUD Josh). Acropolis gives Nutanix customers choice on which they want to deploy, without having to worry about maintaining and managing KVM, again - at that point KVM is a black box.
So if KVM and OpenStack are so great, why are there so many black box vendors abstracting it? And if VMware the deployment and management of a full suite of components is so awful and hard…why are there no black box vendors for that?
Before you go - please read!!!
Between this and my last post, you would think I’d hate myself. I am not saying KVM or OpenStack is bad, nor am I saying that VMware/vSphere/vRA is the only solution you should consider, but, as with everything it comes down to both TECHNICAL AND BUSINESS requirements as to what the right solution is. The black box solutions vendors like Scale Computing produce and support are top notch, and if you are an SMB admin you should have them on your list for your next refresh, but you also need to consider the impact to deploying the pure versions of the underlying technology as well.