Unicorns, Leprechauns, and Private Clouds...
By mrbill on Sep 30, 2009
Numerous conversations and customer projects over the past few weeks have motivated me to exit from the travelogue and world adventures entries here, and get back to geeky writing for a bit.
Yes, cloud. We all "get it". We all see Amazon and the others in the public cloud space doing really cool things. Somewhere along the way, some of the message got scrambled a bit though. With any luck, I'll clear up some of the confusion, or at least plant some seeds of thought and maybe even some debate with a couple monologues.
Non-controversial: Let's talk about three kinds of clouds. Most folks in the industry agree that there are Public clouds like Amazon's AWS, Joyent's Public Cloud, and GoGrid. That one is easy. In theory, there are "private clouds", where the cloud exists within the IT organization of a customer (note that I did not say "within the four walls of the datacenter"), and "hybrid clouds" that allow a private compute infrastructure to "spill over" to a public cloud, as expandable capacity, disaster recovery, or dynamic infrastructure.
No hate mail so far? Good, I'm on a roll.
So do private clouds exist? Maybe. If we hop into the WayBack Machine, John Gage said it best, "The Network is the Computer.". Let's dive a little deeper into what makes a computing infrastructure a "cloud":
Unfortunately, most people start on the left side, with the technical details. This rarely results in a productive discussion, unless the center and right columns are agreed on first. We put a man on the moon, I think we can solve content structure and locking/concurrency in distributed and flexible applications. We don't want to start a cloud discussion with APIs, protocols, and data formats. We want to start with business drivers, and justifiable benefits to the business in costs, value, and security.
The center column describes at a very high level, the goals of implementing a "private cloud", while the right column lists the control points where a private cloud architecture would create efficiencies and other benefits. If we can agree that the center column is full of good things that we would all like to see improved, we can apply the business drivers to our IT environment and business environment to start looking for change. All changes will be cost/benefit, and many will be business process versus technical implementation conflicts. For example, is your business ready to give all IT assets to "the cloud", and start doing charge-backs? In many corporations, the business unit or application owner acquires and maintains computing and storage assets. In order for a shared environment to work, everyone must "share" the compute resources, and generally pay for the usage of them on a consumption basis. This is just one example of where the business could conflict with the nirvana of a private cloud. You can imagine trying to tell a business application owner who just spent $5M on IT assets that those assets now belong to the IT department, and that they will be charged for usage of those assets now.
So is private cloud impossible? No. Is private cloud achievable? Probably. Does private cloud fit your current business processes and needs? Probably not. Do the benefits of trying to get there outweigh the hassles and heartaches of trying to fit this square peg into the octagon shaped hole without using a large hammer? Most definitely.
Some attributes and motivators for cloud computing have huge benefits, especially on the financial side of the equation. Virtualization definitely has some great benefits, lowering migration downtime requirements, offering live migration capabilities, enabling new and innovative disaster recovery capabilities, and allowing workloads to "balance" more dynamically than ever before. Capacity planning has always been a black art in the datacenter, and every model only survives as long as the workloads are predictable and stable. How many applications have you seen in your datacenter that don't bloat and grow? How many businesses actually want their number of customers and transactions to remain stable? Not many, at least not many that survive very long.
So, to wrap up this piece (leaving much detail and drama for future blahg entries)... Private clouds probably don't come in a box, or have a list of part numbers. Business processes and profiles need to adjust to accommodate the introduction of cloud enabling technologies and processes. Everyone, from the CIO, to IT, to legal, to business application owners, has to buy into the vision and work together to "get more cloud-like". And finally, the business discussion, business drivers, and evolutionary plan must be reasonably solid before any pile of hardware, software, and magic cloud devices are ordered. The datacenter will go through an evolution to become more "private cloud", while a revolution will likely mean huge up front costs, indeterminate complexity and implementation drama, and questionable real results.