Saturday, April 9, 2011

The Cloud Revolution

As I continue to look for new and exciting technologies to apply in my role as Director of IT, two items continue to surface. Both Cloud Computing and Virtualization are the place to be these days. Interestingly enough, they are both extensions of the concept of clustered computing from the 90's. When I was at Red Hat, we were developing some of the first clustering tools for Linux aimed at load sharing and high availability. Those same concepts and tools have evolved into what has become the infrastructure for clouds and virtulatization.

Virtualization is taking those concepts internal and creating virtual machines within a single computer to allow better resource utilization as well as to gain more robust performance from technology investments. Of course there are many other purposes for virtualization. Cloud computing builds on that concept in that it groups N machines together for a common purpose. Those machines might also contain any number of virtualized machines as well. Cloud differs from virtualization in that a "cloud" is created to provide a service without regard for the logistics of the hardware. This includes both public clouds and private clouds, the main difference being in how the environment is hosted.

So anyway, back to my investigation of practicality. The price points for these technologies range from next to zero for some open source based solutions all the way to the moon for complete managed and hosted environments. Some applications and environments lend themselves very nicely to public clouds given that the bandwidth requirements of the data passed between the cloud and the clients is relatively low. As the interaction between the cloud and the clients increases, the bandwidth requirements go up also. Services such as cloud based storage and virtual desktop environments substantially increase the need for bandwidth making self-hosted private clouds more appealing.

As with all technologies, there is always a trade off between features, costs and staff resources necessary to implement and manage the solution. What I think is truly amazing is that the breadth of options and choices available makes it so that there is an optimized solution for almost every environment and budget. Where the rub comes in is with marketing and with competition between all of these choices, it becomes increasingly difficult to sort through the noise to get to the solution that actually would work for a particular need and budget. For the smaller IT shops, this is a particularly challenging dilemma given they don't have the staff resources to become expert in enough of the options to determine the best fit for their operation nor are they likely big enough to hire an independent consulting firm to guide them. Partnering with a vendor is the likely path, however that path eliminates virtually all choice beyond what that vendor sells and offers.

The good thing is that like almost every other cutting edge technology, a few more years into its life cycle and these challenges will have been worked out and there will be well documented paths to follow, no matter what your budget or scope. This is the evolutionary part of technology that I love so much, first it is technology for the sake of doing what hasn't been done but then it becomes the business side of deploying it to increase the profitability of the firm. Participating right there in the middle is the sweet spot.