Thursday, February 26, 2009

The Microsoft Operations Framework and Virtualization

Due to some of the stuff that I’ll be working on for my day/night/weekend job at Configuresoft I’m going to be spending a bit more time in the world of Virtualization. This is interesting to me on a number of fronts, but especially since Virtualization seems to be the latest “mega trend” that IT is embracing. Given that my work-life these days revolves around building software to help optimize IT operations, it’s only natural that I get to play in the world of Virtualization.

The good folks at Microsoft® have seen fit to create a “Solution Accelerator”  companion guide centered around Virtualization. (The guide is currently in Beta, but take a look at the “Virtualization Suite” located here: http://technet.microsoft.com/en-us/solutionaccelerators/cc197910.aspx )

The interesting thing to me about this guide is that it’s actually a companion document to the Microsoft Operations Framework (MOF) IT process guidance, and of course if you’ve heard me speak over the last year or read any of my blog entries (Yes Matthew, I really do have a blog) then you know I’m all about IT Process in general and MOF in particular.

MOF and Virtualization

Following the logic laid out in the document mentioned above, there are basically 5 steps to implementing virtualization. the steps provide very high-level guidance that makes for a decent roadmap to aid in creating a virtualization plan for an organization.

Step One: Understand the Virtualization Technologies

When most people think of “Virtualization” they think of running one or more virtual machines on a physical host system. Virtualization is much more than that. There are various virtualization technologies that are useful to organizations including application, network, desktop and storage virtualization. Having a good understanding of these technologies will help IT managers choose the right ones for their specific virtualization projects.

Step Two: Review the existing infrastructure

Just like any other improvement process, you need to first have a baseline of your environment. Having a good understanding of what is installed, where it’s located and how it’s used is critical to the success of any virtualization project. Developing a good understanding of your current environment is essential to creating the plan for virtualization.

Step Three: Prepare to support Virtualization

Many times, when organizations set out on projects that are designed to save money in the long run, they neglect to understand that there will be short term costs involved. Virtualization tends to exacerbate this issue because much of the “legacy” hardware in organizations today is generally not optimized for virtualization. In very general terms, the most important part of any machine (server or workstation) virtualization project is the IO subsystem. Having good “back end” storage connected to your virtual platform will be essential for a successful virtualization project. There are many other factors as well, so planning this step is critical to the overall success of the project.

Step Four: Update the IT Architecture

Once the existing environment is understood and the overall “big picture” is developed for the virtualization project, it’s important to build a specific systems architecture to support it. This step builds a conceptual understanding of what exactly will change in the environment to support virtualization, and will serve as the overall model for how the project is implemented. This step is critical to the success of any virtualization project, and is often the one most overlooked by organizations.

Step Five: Update IT Management Processes

Once the conceptual architecture is complete and the new environment is understood, it’s important to develop management processes that will fit into the new environment. This step is all-too-often overlooked until after the project is underway, leaving managers feeling as if they are working hard to catch up. It’s very important to get “ahead of the game” by having plans in place to support the environment before the project is deployed.

Putting it all Together

The five steps above are over-simplifications of what exactly is necessary to embark upon a successful virtualization project. There are of course many more things to consider within each of the steps, and there’s also a step 6 which involves actually deploying the virtualized environment. Following these guidelines though will help organizations understand exactly how virtualization can be employed in their environment and will help them to develop clear and concise business requirements for deploying virtualization.

No comments: