Virtualization Basics - Back to the Future
By Don Campbell on Friday, May 02, 2008
While ‘virtualization’ may be a new concept to many, it is actually an old practice – at least in the technology world. Virtualization has been used since the 1960s to help maximize the power and potential of mainframe computers.
So, how can a 40+ year old technology be applicable today? It’s really not the same technology rising from the ashes as much as it’s a technology architecture that has found an application in today’s IT infrastructure. And its potential for improving IT operations is tremendous.
The purpose of this white paper is to provide a primer on virtualization and how it can be used by mid-sized organizations to lower costs and improve operations (the constant goal of IT).
The Pendulum Swing
In today’s highly decentralized IT environment, we often see a one-to-one relationship between server and application (i.e. one application configured for one server). The dramatic drop in the cost of powerful servers has made this practice popular. The ever-swinging pendulum of centralization and decentralization in IT practices is now heading back to a more centralized model. This is where virtualization fits in.
So, what is virtualization? At its simplest level, virtualization allows a single computer to do the job of many computers. The term often used is “metacomputer.”
Why is this important? Virtualization technology can save money and simplify IT operations. Virtualization also represents a technology framework by which all IT infrastructures will run in the future.
One of the reasons for this pendulum swing is the opportunity to access the vast amount of surplus capacity that exists in servers today. According to industry analyst International Data Corporation (IDC), typical server deployments show an average utilization as 10%-to-15% of total capacity. That means that 85%-to-90% of the server processing power is not used. Extrapolate this unused capacity out over hundreds and thousands of servers across business and industry and you get a sense of the magnitude of the opportunity. One of the goals of virtualization is to target this unused capacity.
Learning From Other Industries
Utilities provide an excellent model for the challenges IT faces in capturing and managing the unused CPU power available.
Managing surplus capacity is a practice electrical utility companies have tackled for decades. Power grids across the country are taxed at different times of the day and year requiring the efficient management of electricity flow. To address this issue, electric utilities create power “grids” that create redundant paths and lines so that power can be routed from any power plant to any load center, through a variety of routes, based on the economics of the transmission path and the cost of power.
The IT industry coined the phrase ‘Utility Computing’ to define the computing model in which resources (CPU power, storage space, etc.) are made available to the user on an as-needed basis (like a utility grid). The goal of the utility computing model is to maximize the efficient use of computing resources and minimize user costs. Organizations are able to dial up or dial down usage in real time, to meet the varying demands of business. Utility computing uses virtualization as a technology foundation.
The business value of virtualization is significant as well. It will allow IT greater flexibility and speed in adapting to changing business requirements.
Virtualization – An Old IT Practice Revitalized
Virtualization was first implemented more than 30 years ago as a way to logically partition mainframe computers into separate virtual machines. This was called “multitasking” – the ability to run multiple applications and processes at the same time. Since mainframes were very expensive, getting the most from the computing power was critical.
In the 1990s, client/server computing became the rage. The client/server architecture created a distributed processing environment where transaction processing was split between a server and a desktop computer. So, unlike the mainframe environment where resources were shared centrally, a percentage of the processing was distributed to the desktop. Client/server architectures took advantage of the new more powerful PCs and empowered users to support their own application and business requirements. But, over the next decade, IT found these environments to be difficult-to-manage and difficult-to-control islands of computing.
The client/server architecture is a good example of the centralization/decentralization dynamics of the IT world. As soon as users became enabled with desktop spreadsheets, word processing or modules of ERP systems, the IT architecture became decentralized. Security became an overriding issue. Data storage and recovery became a concern.
As a result the technology swing is back towards centralization. In effect, we have come full circle – ‘back to the future’ so to speak. The architectural profile, though, is different than before and quite advanced.
Understanding the ubiquitous nature of the Internet helps illustrate the concept of virtualization. When you surf the Internet, you have no idea (nor do you care) where a transaction is being processed. If a purchase is made on Amazon or eBay, a user isn’t wondering whether that transaction is occurring in San Francisco, Paris or Beijing. The transaction simply happens. This modern day definition of distributed processing means the following:
- The architecture is multi-tiered
- Each tier is capable of significant processing power
- The topology is virtual (cloud)
- The user is insulated from knowing where a transaction is processed
Virtualization Today
The framework in which virtualization aligns in today’s IT world is much broader than the 1960s. In practical implementation, virtualization can be used for a variety of IT infrastructure challenges. Here are some examples:
Machine Virtualization – multiple computers acting as one (metacomputers).
Operating System Virtualization – enabling multiple isolated and secure virtualized servers to run off a physical server (the same OS kernel is used to implement the guest environments).
Application Virtualization – using a software virtualization layer to encapsulate a server or desktop application from the local operating system. The application still executes locally using local resources, but without being installed in the traditional sense.
Network Virtualization – the network is configured to navigate to virtual devices where processing is completed – cross platform.
Much of the virtualization technology is accomplished with software. Virtualization creates an abstraction layer (a way of hiding the implementation details of a particular set of functionality) that insulates the business (i.e. transactions) from the structure of the IT architecture. The hiding of this technical detail is called encapsulation.
The Benefits of Virtualization
The benefits of virtualization reach beyond the ability to take advantage of unused processor capacity. Here are some of those benefits:
- Resource utilization: virtualization provides economies of scale that allows existing platforms to be better utilized.
- Infrastructure Cost Reduction: IT can reduce the number of servers and related IT hardware.
- Application and Network Design Flexibility: Application programmers can design and build distributed applications that span systems and geography.
- Operational Flexibility: IT administrators can accomplish more with a single stroke in a virtual environment than the support and maintenance of multiple devices.
- Portability: Virtual machines combined with the encapsulation of virtual data makes it easy to move virtual machines from one environment to another:
- For maintenance
- For replication (disaster recovery)
- For resource utilization
- System Availability: significant reductions in downtime for system maintenance can be achieved with virtualization.
- Recovery: in case of disaster, virtualized systems can be recovered more quickly.
The Virtual Infrastructure
Virtualization of a server or multiple servers is one thing. Designing an entire IT infrastructure for virtualization is another. The next step in this technology and resource consolidation is to virtualize the complete IT infrastructure. This is where the economies of scale become even more favorable. In fact, the broader the implementation scale of virtualization, the benefits listed above grow dramatically.
For the virtual infrastructure, we are taking into account the servers, operating systems, applications, network, data storage, user systems (desktops, remote laptops, etc.) disaster recovery mechanisms and more.
The virtual infrastructure represents the design and layout knowledgebase of all components of the infrastructure. Applications and users are insulated from connecting to a ‘specific’ server. Instead users connect to applications and data stored throughout the network. They don’t, and should not have to, be concerned about where the actual transaction is being processed (think Internet).
Don Campbell Virtual Management Technologies
donc@vmtech.net
|