So you want to roll your own cloud
How hard can it be?
Sysadmin Blog I have set myself a mission to create a cloud this year. Not a lab test version of something or other, but a real and usable cloud that I can sell to my clients. It's not built yet, but I intend to document my journey towards that end.
The first question I get when discussing this project is always "why do you want to build a cloud?". The quick and dirty of it is that I have piles of still quite usable hardware lying around and I figure if my clients are going to spend subscription fees on public cloud they might as well spend that money with me.
Build versus consume
If we're being honest, I'm a lazy sort. My hair is usually on fire, and I don't really want to spend the rest of eternity tinkering with infrastructure. I want to light up a cloud and just have the thing sit in the corner and print money. I'm not in it for the nerd cred. I'm in it to diversify my company's revenue streams.
This means I am not interested in welding together Openstack components or building whatever it is you call Microsoft's System Center-based abomination. I don't even want to roll VMware's awkward attempt at a cloud solution, because every time I try, I end up wanting to punch developers.
If I didn't already own a whole bunch of gear, I probably would have ended up going with Nuvolat. Their sales people are remarkably persistent, and through all the demos they've convinced me they can offer a turnkey cloud solution that I can resell with minimum effort. If you negotiate hard enough, they'll even throw in some marketing and lead gen support. Unfortunately, Nuvolat does take a minimum buy-in, and I'd rather use the gear I already have.
There are a lot of Nuvolat-like companies out there. You buy some hardware, they load it up with their cloudy software and host it in a colo for you. Among these, Profitbricks deserves a mention, if for no other reason than I love their UI.
About here someone usually pipes up and mentions that I could just resell Azure or AWS. They're right, sort of. Except for the part where they're pyramid schemes. I feed the large public clouds my client base and they let me keep some insignificant percentage of the subscription fee. That percentage goes down dramatically over time. If I want to keep myself in shoes I have to keep acquiring new customers and shovel them into the fire. I want to make money, not be a outsourced sales monkey with no benefits for some tech baron in Seattle.
This leads me to looking at the state of Infrastructure Endgame Machines (IEMs) in early 2017. Who's got what, and how much of what we think we know is outdated?
On premises solutions
For those looking to buy pre-canned cloud solutions for on-premises use, the winner is Microsoft. I'm certainly no Microsoft fanboy, but Azure Stack has this thing where it's awesome and amazing and fries all competition like ants under a microscope. For ease of use and sheer featureset it is unmatched, and looks to stay that way for quite some time. Unfortunately, Azure stack can only be purchased in "large", as the GA version doesn't allow you to install on your own hardware. I have many sads.
Yottabyte (disclosure: client of mine) makes its own custom KVM-based HCI cloud appliances. The Openstack world is also full of the likes of Breqwatr, which will sell me HCI cloudy appliances, or Mirantis that have systems integrators provide them. Nutanix's recent acquisition of Calm.io also leads me to believe it'll be selling turnkey cloud boxen very shortly, while whichever tentacle of Dell that currently owns VxRack is building a contender.
All of these are worthy of consideration. IEMs have come a long way in the past 16 months. Still, I need something I can install on my own gear. When I went looking, it wasn't difficult to find offerings.
And then I discovered vOneCloud.
vOneCloud is what VMware's vCloud software should be, but sadly likely never will be. vOneCloud is a virtual appliance that turns any modern VMware installation with a vCenter into a fully multitenant self-service cloud. It is essentially OpenNebula with an easy button designed to integrate with VMware in under 5 minutes.
Oh, and it's free to try, but they do expect you pay for support if you want to deploy in production. You can sort of think of it like RHEL to OpenNebula's CentOS.
I downloaded the .ova, injected it and a few minutes later I had a cloud. Easy peasy. It took me all of about 10 minutes to figure out how to replace the vOneCloud repo with the stock OpenNebula repo (which enabled updates). It took another half an hour to figure out that I needed to edit /etc/one/sunstone-views/admin.yaml in order to "unhide" the OpenNebula appliance marketplace.
And...that's it! Without reading the manual or any documentation whatsoever I had figured out how to connect up my vCenter, hosts/clusters and storage. I was downloading appliances from the marketplace, setting them up as templates and had created my first test tenant and deployed VMs inside of an hour.
I don't know yet if vOneCloud is the right choice for my production cloud. I do know it is the right tool to teach yourself about creating and administering a cloud of your very own. We've reached the point where rolling your own cloud doesn't mean welding together infrastructure. Now comes the hard part: we have to train ourselves in new ways of thinking.
The challenge now is learning to think like a multitenant admin. If I am going to stand up a cloud, I am going to need to think about how to partition resources, and how to cost them.
We now live in a world where there is competition to deliver you the tools to roll your own cloud in under an hour. Look how far we've travelled. ®