nav search
Data Center Software Security Transformation DevOps Business Personal Tech Science Emergent Tech Bootnotes BOFH

What's this 'pay as you go' cloud crap? Dunno about you, but my apps don't work that way

Why you pay for what you provision

By Trevor Pott, 17 Sep 2014

Sysadmin blog Anyone who says public cloud computing is "pay for what you use" is trying to rip you off. The public cloud is pay for what you provision, and that is a completely different thing.

In order to move away from the model that pretty much every existing application uses – one where you provision the peak amount of resources required and then the application sits idle until it's needed – you need to throw away your code and rewrite it from the ground up.

This means either convincing your software vendor to scrap their codebase and start over; having your in-house developers do the same; or both. Very few applications are an island, and in the real world one application feeds information into another, which then feeds information into another.

Suddenly your simple point-of-sale "application" is 15 interwoven packages, some of which are written by third-party vendors, some of which are written in-house, and all of which must be on 100 per cent of the time.

To even suggest that tossing all your applications out the window is a viable path forward is lunacy of the highest order. Large enterprises could probably afford to move one app cluster at a time. Any company approaching a natural replacement cycle would probably consider a next-gen "burstable" architecture for their new application. But nobody out there has the money to just chuck it all out the window "because cloud."

In case I'm not being blunt enough here: the advantage of hybrid cloud setups like VMware's vCloud Air is that you don't have to throw away your investment in 30 years of applications. You can move them unmodified into VMware's cloud and you throw away your applications only when it is of benefit to you to do so, not as it fits into the desires of some mega-corporation to migrate all its customers to a subscription-based approach to licensing.

But the concept that we will just magically see benefits from the cloud if we all just hold hands, sing Kumbaya, and "only use what we need" is patently ridiculous. The amount of money required to ditch applications, recode them, and then retrain all our staff is prohibitive.

There's a good reason mainframes are still around: nobody is particularly interested in the massive investment involved in rewriting and redesigning those programs, so we collectively drag mainframes along well past what industry pundits felt should be their "best before" date.

What held true for mainframes holds true for "traditional" x86 applications: they are here, we're heavily invested in them, and they aren't going away for decades. Before you take to the comments in a blinded rage and vent your almighty fury at the very notion, I encourage you to try to simply accept the above.

Seek a state of emotional zen in which you can cope with the difficult concept that one size does not fit all, and that the old technology does not disappear simply because something new and shiny had come into being.

Different clouds for different folks

This isn't to say that one should consider a hybrid IaaS cloud like vCloud Air the solution to all ills. If I was at a point that I could throw away my application and rework it from the ground up, I'd be a fool to code it for vCloud Air.

If I was American, I'd develop it for Amazon. It's cheaper on average than Microsoft Azure, and Amazon is ever so vaguely less creepy than Google. If I was not American, I'd code it for OpenStack. I might write it for Docker, once Docker has things like FT, HA and vMotion, but I'm honestly not sure why I'd bother, since Docker seems like more work than AWS and doesn't offer a fraction of the flexibility you get when using a proper hypervisor.

So from one angle, VMware, and to a lesser extent Microsoft, have the best tech to solve the "moving legacy workloads into the cloud and back out again on a whim" problem. What both companies need now is a licensing (and marketing) scheme that is less "cloud hippie" and more "acknowledging the harsh realities of how applications are utilized in the real world by real companies."

Fighting the old guard

If they don't, they will be eaten alive by OpenStack, which absolutely doesn't have bizarre licensing constraints. Contrary to popular boardroom belief, OpenStack is taking off. Every single enterprise – and most small to medium businesses above 500 seats – that I talk to are running proof-of-concept setups right now. They're learning the tech, and regionalized cloud providers are springing up like weeds.

That last bit is important. American companies cannot get it through their heads how deep the distrust is of American cloud providers, and how much that distrust is growing. There is a market opportunity to be had here, and companies around the world are seizing upon it.

Before you make the mistake of writing off regional OpenStack vendors as irrelevant startups, I should point out that some of the biggest OpenStack cloud providers around the world are telecommunications companies. They have been looking for a new revenue stream for ages, and they've finally found it.

The telcos can stand up an OpenStack cloud quickly and easily. They have resources, they have the financing, they have a long history of finding the sweet spot in subscription revenues that people are willing to pay … and they own the pipes.

Let's say my telco says to me: "I have a cloud. Put your workloads into it and you won't pay for bandwidth that is between your corporate and home connections that are on our network and your systems in our cloud. You'll only pay for 'off network' traffic such as connectivity to the greater internet."

That's a hell of a deal, and suddenly a lot of the unpredictable costs of cloud computing evaporate.

The right cloud for the job

In the real world, real companies have applications that can't burst, won't be rewritten to do so, and need to sit idle for 16 or more hours of the day, but still be ready to serve their workloads at an instant's notice. If VMware is to succeed with vCloud Air's – or Microsoft with Azure – they will have to figure out a way to allow those sorts of workloads to exist on their infrastructure and still be affordable.

If they want hybrid cloud setups to be a success outside of the US then they'll need service provider licensing that allows third-party companies (ie: companies with zero US legal attack surface) to stand up compatible clouds at prices that don't terrorize the customer – and still leave margin for the cloud provider.

They will also have to put aside the notion that they can simply throw marketing at the problem, and have customers believe that the cloud is actually "pay for what you use." It's pay for what you provision, and the winning hybrid cloud vendor will be the one that acknowledges that first. ®

The Register - Independent news and views for the tech community. Part of Situation Publishing