As a somewhat abstract definition, it is crucial to understand the context in which we are using the word ‘virtual’ before moving onto the definition of virtualization. The term virtual, in this scenario is defined as “computing not physically existing as such but made by software to appear to do so”.
Virtualization as a concept represents the ‘virtual’ partitioning or division of a single computing entity and it’s resources, whether that entity be a server, application, network, storage or operating system. Alternatively, you can interpret the concept from an almost opposing stand point and view it as multiple computing entities being combined to appear as one logical entity through a virtualisation layer. Consequently, there are many different forms of virtualization; in this instance the focus is server virtualization.
Originally devised by IBM in the 1960’s to partition large mainframe hardware – in recent years virtualization technology has been adopted and developed to apply to the now predominant x86 platform. Server virtualization software enables users to virtualise a piece of hardware, including its components i.e. Hard Disk, RAM and CPU. The functionality from each component can then be assigned as desired to run multiple applications, operating systems or appliances on a single piece of hardware in virtual partitions.
There are multiple advantages associated with virtualization. The segregation of expensive computer resources increases efficiency by consolidation – reducing the number of physical servers necessary to support a businesses IT solutions. This can save companies large amounts of money on hardware acquisition as well as rack-space, which comes at a premium. Additional advantages include quick deployment, increased security, centralised management, business continuity and disaster recovery, reduced administration and reduction in energy consumption minimising carbon footprint – just to name a few.
Of course as with any IT solution there are also disadvantages accompanying this technology. For example cost of licencing, user complexity, support compatibility, security management issues and deployment dilemmas (e.g. choosing the right solutions to host in a virtual environment as not all are suitable), but with an experienced IT team leader most of these issues become insignificant.