1: Why virtualization?

Virtualization means to convert physical hosts to logical/virtual ones. Sounds good? Eh - this is not really something new. IBM did this from the 60ies on with their "VM" operating system ( /370).

Imagine a nameserver host for your domain which has normally the following statistic:


  PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP       
 27674 pascal   4616K 3168K cpu2    59    0   0:00:00 0.0% prstat/1
 27663 pascal   7148K 4104K sleep   59    0   0:00:00 0.0% sshd/1
   141 daemon   4220K 2092K sleep   59    0   0:00:00 0.0% kcfd/3
 27669 pascal   3024K 1928K sleep   59    0   0:00:00 0.0% bash/1
 27662 root     5780K 3028K sleep   59    0   0:00:00 0.0% sshd/1
   265 root     1440K  740K sleep   59    0   0:00:03 0.0% utmpd/1
 NPROC USERNAME  SWAP   RSS MEMORY      TIME  CPU                             
     3 pascal   4524K 9536K   0.0%   0:00:00 0.1%
     2 daemon   1600K 5012K   0.0%   0:00:00 0.0%
    18 root       34M   38M   0.1%   0:43:01 0.0%

Total: 23 processes, 93 lwps, load averages: 0.00, 0.00, 0.00

The load is somewhat nonexistent but your machine blows constantly hot air out of its back - I presume an electric heater would be much cheaper, quieter and more effective than your machine to heat up your room.

Or just take the fact that everyone wants to be "root" on "his server" to be able to deploy software updates, change settings etc. You won't achieve this by running multiple software for different users on a physical host - not talking about the security nightmare of having many local users on public reachable servers (the next rootshell-exploit is just a short hack away...).

A virtual machine is a machine which lets the user (and often its operating system) believe that it exists as a real hardware box. It just (or nearly) behaves like one - but it is not. It is just running among many other programs on a computer. These virtual machines are named hardware virtualized machines. Other virtual machines require special designed operating systems to work with (named paravirtualized machines) -  IBM's mainframe systems are acting like that - as do Xen based installations (more on this later).

There are many different scenario examples for using virtualization technologies:

  • The desktop user who wants to run a copy of Windows on his Linux computer running simulteanously with his Linux programs
  • A cost controller who wants to substitute 17 idling real machines with a multiprocessor machine and 17 virtual machines running on it
  • A system architect wanting to run 3 different server operating systems on one machine or a cluster
  • A programmer who wants to test his programs on a platform the customer is using
  • The construction of a "Cloud", offering services accounted by CPU seconds worldwide

As a motivating example Iook at this screenshot (click on it to enlarge):

virtualboxexample.png

The subsequent articles focus on the different virtualization techniques and their usage scenarios.


  1. Why virtualization?
  2. Userspace-based virtualization (the easy way)
  3. Xen: Hypervisor-based virtualization
  4. ESX: Hypervisor-based virtualization
  5. Solaris Zones: A sharing approach
  6. Hybrid methods: KVM


0 TrackBacks

Listed below are links to blogs that reference this entry: 1: Why virtualization?.

TrackBack URL for this entry: http://southbrain.com/mt/mt-tb.cgi/95

December 2015

Sun Mon Tue Wed Thu Fri Sat
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

About

This blog is owned by:

Pascal Gienger
J├Ągerstrasse 77
8406 Winterthur
Switzerland


Google+: Profile
YouTube Channel: pascalgienger