So there’s been a lot written about cloud building lately. Private cloud, hybrid cloud, public cloud, storm cloud, whatever. There’s been a lot of spin in terms of what actually constitutes “cloud computing”. Luckily NIST has created formal standard definitions for what cloud computing is. An excellent primer that many CIO’s, managers, and decision-making, vision-directing folks should check out for a level-set is The Cloud Computing Tutorial (http://www.thecloudtutorial.com).
There is nothing that burns my britches more than a manager saying something like “We just virtualized our datacenter and deliver our apps out to our users through a web front-end/Citrix/RDS – we are CLOUD READY!”. If that’s the case, then we’ve been mastering the cloud for my entire 15 year career. It’s so much more than that – there is a great deal that by definition we need to be thinking about. Things like self-service provisioning, elasticity, pooling/multitenancy, metering, etc. Once your cloud architects start putting some technology widgets into Visio or on the whiteboard to enable your cloud capabilities, the true complexity and considerations for how to make this all work really come in. More importantly, a good cloud architect will be one that can connect the cloud technologies with the business requirements and vision. Success in the cloud will be measured by how well the technology is executed, and how well the user experience is delivered to enable productivity, drive revenue, etc.
From my experience in this still evolving cloud computing industry, I have seen many a cloud provider stall out or revert to old habits from the datacenter days that make the solution stray from the true definition of cloud computing. One such example is the tendency for a provider (this could be internal or external tenants) to customize each tenant to the point where it’s either too complex to manage and maintain over time, or too complicated to deliver as a cloud provider. At that point, you’re just a managed datacenter service, which really isn’t cloud computing. The bottom line is that the vision for what you’re trying to do should be well defined ahead of time, and all the considerations and architectural problems brainstormed up front. There needs to be a clear identity around what type of solution you’re providing and design for it with that in mind. Maybe you’re really not doing cloud just yet – maybe you’re hosting first, and clouding later. This technology and concept of the “cloud” is accelerating at a rapid pace and on multiple fronts – storage, networking, outsourcing (EC2, Desktone, TuCloud, Rackspace, etc.), and of course on the virtualization front with Microsoft, VMWare, Citrix, Cisco, and others all offering different flavors and strategies of cloud building product and service offerings.
I think a lot of us could benefit from taking an introspective look back at what cloud really is and how we are building our way there. I know there’s a lot of pros out there who are far and away without a doubt cloud building veterans, and it’s those folks that the rest of us who are getting into this can definitely learn from. Thinking big picture, or “in the cloud” is the place to start. The technology offerings and tools will be there when we’re ready to architect it into the solution we’ve envisioned.