But then I stumbled across a blog post that brought some key points into focus for me, and did a lot to reinforce some of my fundamental beliefs.
Not that I need any more reinforcement, mind you ...
A Cloudy Headache
Before we get started, you should go read this post from Alan Williamson.
Alan brings three interesting perspectives to this discussion.
First, he appears to be a card-carrying cloud enthusiast and technologist.
Second, he's using Amazon's cloud to actually try and get work done.
Three, he's experiencing massive headaches just like any other IT person trying to use infrastructure to get work done.
Now -- drum roll please -- is anyone surprised by this?
I Think Alan Misstates The Problem
Alan blames his myriad problems and challenges on Amazon's service being oversubscribed. He's right, but there's more to it than that.
I would blame his headaches on Amazon's service being under-controlled.
And therein lies a key differentiator between public and private clouds.
Expect Oversubscription
Clouds are shared infrastructure. They're built to be oversubscribed. They wouldn't be economical otherwise.
Just like any form of shared infrastructure (phones, planes, power, etc.) you hope and pray that everyone doesn't demand maximum service at the exact same time. And, if you're not comfortable with that scenario, you work with your vendor to assure certain minimum levels of service, for which you pay for.
But there's more to the discussion than just simple SLA definition ...
Transparency And Control
Perhaps the most telling part of the post is their futile efforts to indirectly diagnose what is wrong, and how to go about fixing it.
Traditional IT has a useful property in this regard: you can drill down into various parts of the plumbing, and (usually) figure out what's wrong, and what to do about it.
Compare that with their approach of shutting down and re-instantiating compute instances until they (temporarily) land in a resource-friendly domain. Reminds of power-cycling a component until it (hopefully) fixes itself.
The Bottom Line
Enterprises won't hand over serious workloads to cloud service providers unless they can have at least the same transparency and control that they have in their traditional data center environments.
And that is just one aspect of what makes the private cloud model so very different than the public cloud models.

I agree 100% with your bottom line, the problem is getting that in a cost effective way. Amazon is often touted as one of the lower costing clouds(if not the low cost? I haven't spent much time looking though others in my organization have). At least for our own stuff amazon is at a minimum a couple hundred percent more expensive to run than doing it ourselves, and that's not taking into account incidents like this, or the recent storage performance issues Rackspace has been trying to nail down in (one of) their cloud(s).
There certainly are cloud providers out there that can provide more guarantees but the prices go up even more(from 2-3x more expensive to 4-5x), making it even less cost effective for anything but really small installations(thinking single digit server count).
In my own talks with such providers, they often hard allocate resources to each customer, and if you want to grow beyond your up front allocation it is a process that takes days to weeks, rather than minutes to hours.
Days to weeks may still be a bargain for those organizations that start a purchasing decision and by the time they decide what they want to buy and actually get it installed and are using it it's already obsolete.
Smaller orgs like the ones I gravitate towards can already expand capacity in days to weeks so there is little benefit to the cloud in that respect.
I suppose there are exceptions though, if your own internal IT/operations is so horribly inefficient, or incompetent then what seems expensive to orgs like mine may be cheap to them.
I recall a few years ago at another company I worked at, they got bought out by a big $billion$ company. Not long after the parent company started to transition IT hosting stuff to the small company because the smaller one managed to do about 5x more per person than the bigger one.
Posted by: nate | January 15, 2010 at 01:12 PM
Chuck,
According to James Hamilton over @ Amazon AWS.
Private clouds are better than nothing but an investment in a private cloud is an investment in a temporary fix that will only slow the path to the final destination: shared clouds. A decision to go with a private cloud is a decision to run lower utilization levels, consume more power, be less efficient environmentally, and to run higher costs.
http://perspectives.mvdirona.com/2010/01/17/PrivateCloudsAreNotTheFuture.aspx
Fast forward five years when Public Clouds are more secure, trusted, reliable and the end user have more control.
IT nirvana...
Posted by: Terry | January 28, 2010 at 11:15 PM
Interesting point of view.
I suppose one analogy could be "why invest in a car, which is nothing more than a temporary step to the final destination of teleportation?"
I'd offer you need to spend more time with the enterprise IT crowd :-)
-- Chuck
Posted by: Chuck Hollis | January 29, 2010 at 05:53 PM