Welcome to Devicewire Community Sign in | Join | Help
in Search

Devicewire Weblog

Virtualisation – what’s it all about?

 
Virtualisation is very much the buzz word of today and, whether you like it or not, is going to affect the way you work (although you may not even know that you have been “virtualised”), and for that reason I thought it would be worth a blog post.
This post is not strictly within the bounds of typical devicewire fayre, but it is an interesting subject (to me at any rate!), and I know that devicewire blog readers are more discerning than most and therefore willing to tolerate a little indulgence in the author – especially as they may learn something!
It is worth noting that this post is written very much for the layman – not least because the author is a layman himself, although I have dabbled and we do run some virtualised machines here at devicewire.
 
It is beyond the scope of this blog to go in-depth into the technology behind virtualisation. Simply put, virtualisation is the “hiding” of the physical characteristics of hardware elements from the user.
Many elements of hardware can be virtualised – networking, storage, or even an entire server.
A lot of you may have used virtualisation technology already: if you have remote access to the office network. In this scenario, using encryption technology to send data securely over the insecure public Internet, your PC effectively becomes part of the corporate LAN, despite not being physically connected to it. A “Virtual Private Network” (VPN) is established. The user is not aware of the technology operating in the background – they simply fire up the VPN client software, enter in their login details and before long are able to access LAN-based resources at the company premises. This is the goal of virtualisation.
 
Storage can also be virtualised: using Storage Area Network (SAN) technology, multiple physical disks and storage devices can be presented to the user as a single space. Management tools can be used to intelligently increase the size of the storage space, adding additional disks and devices as required, without the user being aware.
 
Companies like VMWare and Parallels have long been developing tools to enable entire machines to be virtualised. This practice involves running “virtual” machines on top of an existing operating system, within a virtualisation application. This way, the physical machine’s hardware elements (memory, storage, interfaces) are divided between the virtual machines and the “host” operating system. Therefore, a machine with, say, 4GB of RAM and 100GB of storage which might otherwise have used only a fraction of that capacity, can be used more efficiently to host a number of machines, each using a fraction of the whole. This also has an impact on theall-important “green” factor: running what would have been 4 or 5 boxes on a single machine will reduce power and temperature regulation requirements.
But virtualisation technology is not used solely for efficiency, the benefits are multiple. When a machine is virtualised, the machine needs to be installed in the same way as a physical one would, by that I mean that the operating system needs to be installed, patched and any applications then installed and configured. This would take probably the same length of time as it would to install a physical machine. However, once virtualised, the machine essentially runs from a single machine image file. This file can be backed up and copied to any number of virtualisation hosts. This way, should anything go wrong with the machine, a replacement can be up and running in a matter of minutes. This clearly has positive implications for downtime, loss of productivity and maintenance schedules.
There are positive implications for testing too: at any stage during the testing of a new product, an image of a virtual machine can be backed up. Therefore, if installing a certain patch “breaks” a test system, that image can be discarded and the most current backup image can be restored, in a matter of minutes, without having to spend the time reinstalling the operating system and other required software. This clearly has huge implications for the testing lifecycle and reduced time to production.
Virtualisation is particularly useful to network admins for those “legacy” systems that really scare them! All companies have one system that has been used for donkeys’ years, runs on an old Pentium II machine that has had more spare parts than the Starship Enterpise and no one knows how it was installed in the first place…but it is mission critical that it work 24/7. Provided that the expertise can be requested to reinstall the legacy application on a virtual machine, once virtualised all of your fears can be forgotten. Having said that, today VMWare offers a tool whereby an agent can be installed on a physical machine, and that agent will “upload” that machine’s files and configuration to a waiting virtual image.
The more physical machines that are virtualised, the more important it is that you have the right tools to manage your virtualised ‘farm’. VMWare and Citrix are doing exciting things combining the virtualisation of servers and storage, allowing for virtual machines to be moved between storage areas as they increase in size, while they are still running!
 
As we have already seen, virtualising servers can provide many benefits, both in terms of power consumption and ease of management. The same principle can be applied to the desktop infrastructure.
Most IT departments spend a large proportion of their time managing 100s of desktop PCs, each with an individual operating system, office suite and other applications installed, all behaving differently and all constantly requiring patching. Sure, there are tools available to ease the roll-out procedure of new patches, but not all installs always go according to plan.
The virtualisation model would remove the need to patch and troubleshoot individual machines – as there is simply one virtual machine image to maintain. Users are assigned low-grade PCs which are effectively used as “thin-clients”, and which remote control a virtual machine which is created automatically for the user when they log in, and is run on the server within the virtualisation application. That virtual machine has all the applications they need to do their job, and all applications are fully patched and configured correctly.
This approach to modern computing is effectively completing a circular path back to the way computers were first used back in the 1960s. Originally, computing power would be consigned to a large central mainframe and users would be allocated time to use the machine. With the processor revolution, users were allocated “thin client” terminals with the ability to forward keypress and mouse movements to the central mainframe and display an output. This revolution progressed until essentially each user had a mainframe of their own on their desk, giving rise to the “distributed” computing model we mainly use today. This development moves power away from the desktop and restores it all centrally.
The argument for desktop virtualisation, from an IT admin perspective, is compelling. Users would not have the ability to install applications on the machine, or even save files to the local machine – forcing them to use networked drives instead. As soon as they log off, the virtual machine “session” that they have been using effectively ceases to exist. Contractors can arrive on site, work all day on a virtual machine that is created for them in a matter of minutes, and then leave without the IT staff having to then “clean up” the machine that they have been using.
This approach clearly requires some seriously “grunty” hardware at the back-end, and time needs to be spent to properly determine what physical resources will be needed: a “blade” approach would be sensible in this scenario, with one blade potentially representing one virtual desktop.
 
This approach may seem overkill to some companies, and will prefer users to have their own PCs over which they have varying degrees of control. If virtualising the whole PC is not suitable for your requirements, then there is another area of virtualisation that may be of interest.
The virtualisation of networking, storage, servers and even workstations is relatively accepted technology these days. The cutting edge development which will change the face of modern computing is being conducted on virtualising individual applications. This technology is known as “software streaming”.
The powers that be in the software industry are quickly seeing that the future lies not in selling boxed products (the traditional Microsoft market), but in providing applications as “services” which can be used online as and when – see the rise of online office-killer services by Google, Adobe and ThinkFree: effectively using the web browser as a thin client.
A similar model can be applied to the workplace.
The software-streaming model retains the processing power at the client-side, rather than centralising it, but the client device has few applications installed on it other than the base operating system. Applications are then accessed via a web portal, and are downloaded to the client as and when required – large applications not being fully downloaded, but only those modules that are used (with other modules being downloaded as needed, to preserve bandwidth). There are no licensing worries: you pay (or are licensed for, if hosting internally) on a per-user or per-month basis, and the web site automatically limits the number of concurrent connections. Typically in this scenario, for security reasons the application is prevented from being able to write to the local disk, so server-based storage needs to be used, which can be inconvenient if not hosting the service yourself.
This approach, then, allows the user to have a powerful, fully-functional client PC, with the ability to access non-standard applications via a network connection.
 
Both desktop virtualisation and application streaming models are at the cutting edge, and even the terminology surrounding the subject has yet to settle down. Both have pros and cons and it is likely that neither will “win out”, as different companies will have different requirements, and it is probable that a combination of both technologies will be adopted.
This author, for one, is looking forward to see how it all pans out!
 
Further reading:

http://en.wikipedia.org/wiki/Virtualization

www.vmware.com

http://www.hqfastapps.com/ctx_landing/xenserver/index.html

www.parallels.com

http://www.microsoft.com/virtualization/default.mspx

Published 12 June 2008 18:57 by jamesl

Comments

No Comments
Anonymous comments are disabled

About jamesl

James Liddiard is the Network Manager for Brightpoint GB Ltd. His responsibilities include overseeing the IT and telecoms infrastructure of the company, as well as product testing and reviewing and providing second and third-line technical support for customers. His interests include cycling, cinema and his many Apple computers.