Category Archives: Virtualization

Server Virtualization

Published by:

Server Virtualization

Server virtualization takes advantage of idle resources to reduce the number of servers required to provide services to users.

A special program called the hypervisor is used to manage the computer resources and various VMs. It provides VMs access to all of the hardware of the physical machine such as CPUs, memory, disk controllers, and NICs. Each of these VMs runs a complete and separate operating system.

With virtualization, enterprises can now consolidate the number of servers. For example, it is not uncommon for 100 physical servers to be consolidated as virtual machines on top of 10 physical servers using hypervisors. In the figure, the previous eight dedicated servers have been consolidated into two servers using hypervisors to support multiple virtual instances of the operating systems.

Server Virtualization

The figure displays the hypervisor structure on two servers. The hardware component is at the lowest level with the hypervisor on top of the hardware. Connected to the hypervisor are four instances of the operating system. For server 1 there are four instances of the Windows OS. On server 1, above the four instances of the Windows OS are services for Web Server, Email Server, SQL server and File server. For server 2 there are two instances of the Windows OS and two instances of a Linux OS. On server 2, above the two instances of the Windows OS are services for DHCP server and AD server. On server 2, above the two instances of the Linux OS are services Radius server and NMS server.

Client-Side Virtualization

Many organizations use server virtualization to optimize network resources and reduce equipment and maintenance costs. Organizations are also using client-side virtualization to enable users with specific needs to run VMs on their local computer.

Client-side virtualization is beneficial for IT staff, IT support people, software developers and testers, and for educational reasons. It provides users with resources to test new operating systems, software, or to run older software. It can also be used to sandbox and create a secure isolated environment to open or run a suspicious file.

Some terms that are used when discussing client-side virtualization include:

  • Host computer – This is the physical computer controlled by a user. VMs use the system resources of the host machine to boot and run an OS.
  • Host operating system (host OS) – This is the operating system of the host computer. Users can use a virtualization emulator such as VirtualBox on the host OS to create and manage VMs.
  • Guest operating system (guest OS) – This is the operating system that is running in the VM. Drivers are required to run the different OS version.

The guest OS is independent of the host OS. For example, the host OS could be Windows 10 and the VM could have Windows 7 installed. This guest of the VM would be Windows 7. In this example, the guest OS (Windows 7) does not interfere with the host OS (Windows 10) on the host computer.

Host and guest operating systems do not need to be of the same family. For example, the host OS could be Windows 10, while the guest OS is Linux. This is of benefit for users that need to increase the functionality of their host computer by running multiple operating systems at the same time.

The figure displays a logical virtual machine diagram. The bottom gray box represents the physical computer with its host OS (e.g., Windows 10). Hyper-V, Virtual PC, and VirtualBox are examples of virtualization software or emulator that could be used to create and manage the three VMs shown in the top of the figure.

The figure on this page is a diagram that represents a logical virtual machine. Three boxes aligned horizontally are each labeled as, ‘Virtual Machine’. Each of the virtual machines contains two smaller boxes stacked vertically and labeled as, ‘Applications on Guest OS’ and ‘Guest OS’. Below the three virtual machines is a larger box the width of the three virtual machines. This box is labeled as, ‘Physical Machine’. The physical machine contains two smaller boxes, also the width of the three virtual machines, stacked vertically and labeled as, ‘Virtualization Software (Hyper-V, Virtual PC, VirtualBox, etc.)’ and ‘Host OS’. Below this is a label of physical machine.

Cloud Computing and Virtualization

Published by:

Cloud Computing and Virtualization

The terms “virtualization” and “cloud computing” are often used interchangeably although they mean different things.

Virtualization enables a single computer to host multiple independent virtual computers that share the host computer hardware. Virtualization software separates the actual physical hardware from the virtual machine (VM) instances. VMs have their own operating systems and connect to hardware resources through software running on the host computer. An image of a VM can be saved as a file and then be re-started when required.

It is important to remember that all the VMs share the resources of the host computer. Therefore, the limiting factor on the number of VMs that can run at the same time is directly related to the amount of processing power, memory, and storage.

Cloud computing separates the applications from the hardware. It provides organizations with on-demand delivery of computing services over the network. Service providers such as Amazon Web Services (AWS) own and manage the cloud infrastructure that includes the networking devices, servers, and storage devices and is usually housed in a data center.

Virtualization is the foundation which supports cloud computing. Providers such as AWS offer cloud services using powerful servers that can dynamically provision virtual servers as required.

Without virtualization, cloud computing, as it is most-widely implemented, would not be possible.

Figure of a businessperson holding a tablet with cloud computing icons floating above it.

Traditional Server Deployment

To fully appreciate virtualization, it is first necessary to understand how servers are used in an organization.

Traditionally, organizations delivered applications and services to their users using powerful dedicated servers as shown in the figure. These Windows and Linux servers are high-end computers with large amounts of RAM, powerful processors, and multiple large storage devices. New servers are added if more users or new services are required.

Traditional Server Deployment

Problems with the traditional server deployment approach include:

  • Wasted resources – This occurs when dedicated servers sit idle for long periods waiting until they are needed to deliver their specific service. Meanwhile, these servers waste energy.
  • Single-point of failure – This occurs when a dedicated server fails or goes offline. There are no backup servers to handle the failure.
  • Server sprawl – This occurs when an organization does not have adequate space to physically house underutilized servers. The servers take up more space than is warranted by the services that they provide.

Virtualizing servers to use resources more efficiently addresses these problems.

The figure displays historical operating installation with eight servers: a web server, Email server, SQL server, LAN server, DHCP server, Active Directory server, AAA RADIUS server, and a Network Management server. The first six servers are Windows servers and the last two are Linux servers.