Following on from yesterday's Forecasting Fisticuffs webcast (recording here) with fellow Enterprise Irregular bloggers Vinnie Mirchandani and Dennis Howlett alongside Appirio's Narinder Singh, I tweeted a provocative prediction for 2010 that "Private clouds will be discredited by year end". There followed a flurry of counter-tweets, most notably a challenge from Cloudscaling CEO Randy Bias to put my money where my mouth is.
That required a bit more clarity about what we'd actually be betting on, and the continuing conversation quickly showed up the constraints of Twitter's 140-character limit. I resolved to dive into some of the underlying concepts in a blog post here today.
First of all, 'discredited'. As I elaborated to SearchCloudComputing's Carl Brooks, that means "No one likes using the phrase any more" — I was aiming to capture something halfway between the repulsion and embarassment people used to feel about, respectively, application service providers and intranets. People will still be using private clouds, but I believe they'll feel increasingly ashamed or nervous of admitting it in public, except to fellow-users. The rest of the world will have moved on. I'm inclined to agree with Phil Morris that my timing was probably over-ambitious. Year-end 2011 or mid-2012 would have been a lot safer but hey, I wanted to be provocative. And I truly believe sentiment will have started shifting before the year is out.
Now let's turn to 'private' and 'cloud'. My definition of private is simple: not public. Randy Bias offered a list of defining features: "unshared, single tenant, self-service compute, storage, and network infrastructure." He then went on to mention three varieties of private cloud: "virtual, external, or internal," which is when I started to realize this was a much more nuanced discussion than our tweets were going to allow. It was obvious that some of his definitions of 'private' cut across into areas that I would define as 'public'; and vice-versa.
For example, I have no objection whatsoever to virtual private cloud, so long as it's a logical slice of a public cloud infrastructure, or as I wrote last August: "computing that operates within a public cloud but which uses virtual private networking to give individual enterprises the ability to mask off a portion of the public cloud under their own delegated control and management." On the other hand, you can make your infrastructure as multi-tenant as you like, it's not cloud if it's confined within a closed, single-enterprise environment.
So when I talk about 'private cloud' as something the world will move on from, I'm not talking about cloud infrastructure that's logically partitioned to make it private. I'm talking about physically private infrastructure that's logically structured as though it were cloud.
This definition is clear-cut at the extremes, but of course there's a shaded area in the middle where the two ends meet, and I suspect a lot of that shaded area is occupied by what Randy Bias calls 'external private cloud' (and is very bullish about). This is cloud infrastructure that's hosted by third party providers, and I can imagine that some of it is going to be built on what I would regard as perfectly valid public cloud infrastructure, logically partitioned. But a lot of it is going to be as alluring as lipstick daubed on a pig, because behind the scenes the hosting providers will be doing a lot of covert physical partitioning to cut corners (actually, some of them will openly tout that partitioning as a selling point).
My litmus test for public vs private cloud is at a different level than multi-tenant architectures, firewall configurations and flavors of virtualization. In my book, a public cloud is one that's concurrently shared by thousands of discrete customers, all of whom access precisely the same (though continuously enhanced) baseline functionality and have complete freedom of action (and control) over how they use that functionality within the constraints of the platform. The strength of the cloud model (and why public cloud will leave any variety of physically partitioned private cloud trailing in the dust) is the collective scrutiny, feedback and innovation that becomes possible when thousands of customers are using the same, constantly evolving, shared platform.
Perhaps the reason those benefits are not yet self-evident — and thus why this argument is so hard to put across — is that so far we've mostly been looking at infrastructure as a service, with Amazon Web Services as the most established example of a public cloud platform. The problem with that is, the shared platform only goes as far as the AMI, and from there on up, you fall straight back into private software instances with none of the benefits of a collectively shared platform. This year I think we're going to be hearing far more about platform as a service, and that's the layer at which people are really going to start leveraging the power of the public cloud and realizing how much they're giving up by wanting to manage their own discrete, private software stacks.
One last thought. There's a whole other discussion that needs to be had about how enterprises should migrate their IT assets to the cloud, because everything I've written above still begs the question of when and what to move to PaaS and/or IaaS, what to do with remaining on-premise assets, and whether in that hybrid environment of half-on, half-off the cloud there's an argument for implementing private cloud-like infrastructure. The bulk of that discussion will have to wait for another post, but it may be that, although discredited in the sense that enterprises may not like to talk openly about it very much, there will be a lot of 'private cloud' going on for the next few years as part of those migration strategies.