Technical Guides

The Power of Virtualization: A Management Series for Small Businesses: Virtualization Fundamentals

Posted In:
Share |

Virtualization is one of the hottest topics in enterprise computing today, with advocates promoting benefits including improved business efficiency, cost savings, and mission-critical data and application protection. This series examines some of the implications of virtualization on small and medium-sized businesses.

Virtualization is a critical discussion topic for IT managers and business executives today. It is a technology solution that addresses a number of business drivers – including cost, speed and quality of service – that affect almost all industries.

Although the terms virtual and virtualization have been applied to a number of technologies, the central principal is simple: virtual, in IT, refers to something that appears to be real and can be treated as real by a person or program, but in fact exists only in software, or in software supported by special-purpose hardware whose presence is transparent to the user.

Each virtual machine contains a complete system, eliminating potential conflicts. VMware virtualization works by inserting a thin layer of software directly on the computer hardware or on a host operating system. This contains a virtual machine monitor or “hypervisor” that allocates hardware resources dynamically and transparently.

Multiple operating systems run concurrently on a single physical computer and share hardware resources with each other. By encapsulating an entire machine, including CPU, memory, operating system, and network devices, a virtual machine is

…the cost of hardware vs. the costs of energy, staff, and real estate now make it an economic imperative to virtualize.

In general, virtualization lets you run multiple virtual machines on a single physical machine, sharing the resources of that single computer across multiple environments. Different virtual machines can run different operating systems and multiple applications on the same physical computer.

Software such as VMware vSphere and VMware ESXi (a free download) transform or “virtualize” the hardware resources of an x86-based computer – including the CPU, RAM, hard disk and network controller – to create a fully functional virtual machine that can run its own operating system and applications just like a “real” computer completely compatible with all standard x86 operating systems, applications, and device drivers. You can safely run several operating systems and applications at the same time on a single computer, with each having access to the resources it needs, when it needs them.

This is similar in nature to the use of higher level programming languages, which hide the underlying architecture from the programmer, or database query languages that hide implementation details from users.

The goal of virtualization is to trade some machine efficiencies for human and application efficiencies, as machines tend to get faster and cheaper with time, and people and applications generally do not.

The concept of a virtual machine isn’t new; in fact it is decades old. Virtual models were first employed as a technique for allowing programmers to treat a limited amount of expensive memory as if it were infinite by swapping code and data in and out of a fixed area of real memory under the control of an operating system.

Later uses of virtualization appeared in the form of emulators, or software that allowed applications to run on machines other than those for which they were originally written. This type of virtual machine preserved investments in software when new hardware became available, and is still useful for application developers as it permits crossdevelopment, that is development on one machine for deployment on another.

So, why is virtualization, after decades of use, suddenly a key technology in the datacenter? The simple answer is that the cost of hardware vs. the costs of energy, staff, and real estate now make it an economic imperative to virtualize. When core memory was very expensive, it made sense to swap data and instructions in and out of memory and sacrifice CPU cycles rather than add more memory. Today, after benefiting from years of cheaper and faster processors, and declining real memory costs, a new generation of virtualization technologies are emerging to address some very real business drivers.

As noted, virtualization is a technique to increase the level of abstraction and make available the power of resources beyond what is physically present. Let’s see how it can be used in practice.

Top Business Drivers for Virtualization

  • Reduce costs – Reduce on-going server costs, reduce upfront server costs, reduce power consumption and heat, reduce (or redeploy) IT Staff
  • Add business continuity – Improve software lifecycle management and backup/disaster recovery processes
  • Better software support – Reduce software licensing costs, improve legacy applications support
  • Become more responsive to business – Improve server utilization, provide more proactive support, adapt to workload change, improve availability
  • IT consolidation – Reduce the number of servers, reduce server sprawl, simplify IT management, consolidate applications

IDC identifies five key business drivers for virtualization, as shown in the table above. In each case, the goals of faster, cheaper or better are reinforced by an investment in virtualization.

IT managers have, since the dawn of IT time, struggled to deliver functionality to end-users while controlling these sometimes competing forces.

IT Cost

In today’s IT environment, costs include hardware, software, real estate/energy, and personnel for development and operations. Virtualization has a role to play in managing each of those costs, for businesses large and small.

A common issue for decades has been that IT managers over specified server capacity to handle peak loads, which resulted in excess capacity for most of their operational life. This has led to additional costs as the servers require real estate, energy, and staff to manage them.

Server and storage virtualization allow consolidation of servers and storage devices, so that one real machine with virtualization software can effectively do the work of many, reducing each of those costs for most organizations. Fewer servers require fewer administrators, each of whom have energy and compensation costs.

Reducing the hardware requirements directly and indirectly lessen energy requirements, as fewer servers use less energy themselves, and require a smaller dedicated space, which has energy requirements of its own. In addition, with modern Dell servers, for example, each one uses less energy. This is good business, good policy, and the carbon footprint is further reduced contributing to a greener IT environment. In an age of increasing regulatory and shareholder scrutiny, this impact alone may be significant.

Speed/Efficiency

Even in a good economy, perennial pressures exist for IT to deliver more functionality and to deliver it faster. When markets change overnight and capital and customers are scarce, the need for rapid deployment of effective systems is increased. Virtualization helps here, too.

Instead of having to acquire and integrate new application and operating systems releases in an ad hoc fashion, a virtualized environment generally allows more centralized control with simpler updates, reducing the time to deliver new and improved applications.

Quality of Service

Businesses of all sizes spend a high percentage of their IT budgets on administrative tasks, application maintenance, and backup and recovery activities. Consolidation and simplification have a positive impact on all these activities, freeing resources to focus on new levels of service or simple cost reductions.

SMB Results So Far

In a recent survey of more than 300 senior business and IT managers at small and medium-sized businesses in the U.S. and Canada, VMware found that most of the firms that have adopted virtualization have already improved costs, speed and quality of IT service, including:

  • 73% reported significant improvement on time spent on routine IT administrative tasks
  • 71% reported increased application availability, and
  • 65% reported reduced hardware, power, space and cooling cost

Tech Notes:Types of Virtualization

For the server, or processor part of the equation, IT managers have several technology choices. In the traditional computing model (as seen in the simplified diagrams above), an end-user interacts with an application, which leverages services from an operating system, which in turn deals with the underlying hardware in low level commands. The operating system has to be aware of the specifications and requirements of the hardware platform, but at each successive level going up, more details are hidden.

The most common type of server virtualization is virtualization of an operating system. In this virtualized server model, a single physical server can be managed by a program called a hypervisor, which in turn manages a virtual machine manager (VMM) for each virtual machine, which in turn “runs” an operating system. In fact, one hypervisor may run different versions, releases, or even different core operating systems. Each such guest OS can run multiple applications, which may be unaware of the actual server being used, and which should be unaware of the presence of additional operating systems in use. This partitioning allows each application to act as if it had complete control of the machine.

Full virtualization, with binary translation, is the most mature approach and has been adopted by hundreds of thousands of users since it was commercially introduced on the X86 platform by VMware in 1998. In this model, the OS doesn’t need to know that it is virtualized (so applications, at a higher level, are also unaware).

Hardware assisted virtualization requires an exit from the operating system for privileged instructions, which was initially a performance issue but increasingly faster hardware makes this less of an issue. However, hardware assisted virtualization is less flexible than full (software) virtualization because it reduces the level of abstraction for the hardware-optimized components.

Paravirtualization uses hypercalls that require modifications to the guest OS tailored to a specific hypervisor, which reduces compatibility. At the end of the day, the choice between types of virtualization is a technical one, while the decision to go virtual is generally a business one – and a no-brainer at that.

>>Download The Power of Virtualization, Small Business Case Study (pdf)