Hypervisor is Containership

There are a few metaphors that help explain what virtualization is. Some suggested virtualization is like people (virtual machines) sharing a bus (physical machine) for efficiency and consolidation.

While the bus sample well explains the benefit of consolidation. It does not explain well isolation. Here I make up a new one: a hypervisor is like a containership, and a virtual machine is like a container that is stacked on the ship.

Lost VMs or Containers? Too Many Consoles? Too Slow GUI? Time to learn how to "Google" and manage your VMware and clouds in a fast and secure HTML5 App.

According to this wiki page, container ships “are cargo ships that carry all of their loads in truck-size intermodal containers in a technique called containerization.”  Containership was invented into operation in 1950s’ and has become popular type of dry cargo. BTW, if you are interested in how containership is operated, here is a video from Extreme Engineering series.

The benefit of containership is that many companies can share a ship but also maintain the flexibility and isolation as if they each own a smaller yet dedicated ship. Whatever benefits provided by containership are also seen in virtualization: many users can share a physical server but still own an independent machine.

With this metaphor in mind, it’s easy to explain why virtualization won’t be the only way to carry workload. In the shipping industry, there are many other forms of ships, like oil tanks, which specialize in transporting crude oil or gas. The volume and special requirements there justifies a special type of ships.

In IT world, we can easily find “crude oil” type of workload, for example search engine, multi-tenant CRM, online storage, etc. as I described in my last post. For these, virtualization doesn’t help much.

BTW, this containership metaphor does have its own limitations, for example, all containers are of same size and cannot change while virtual machines can easily change its “size” (CPU, memory, etc.) on the fly.

This entry was posted in Virtualization and tagged , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.


  1. Posted March 27, 2012 at 12:13 am | Permalink

    Despite the containers all being the same size, you could just compare it to renting multiple containers… Which, for some IaaS-type services, is exactly what you’re doing.

  2. Posted March 27, 2012 at 1:18 am | Permalink

    Very good point Bob!

  3. Posted March 27, 2012 at 2:32 am | Permalink

    I’d actually argue that the container is exactly like a VM – the contents may vary (workload, CPU, memory etc) but the VM construct (.VMX, .VMDK etc) is always the same and the .OVF format is the equivalent of an international container standard (as containers do actually vary in size).

    Interestingly the analogy can be applied to many aspects of virtualisation. I wrote a blogpost exploring exactly that last year;

    Keep up the good work – I find myself coming back to your blog on a regular basis for some different thinking!

  4. Posted March 28, 2012 at 4:18 pm | Permalink

    Thanks for sharing your thoughts on it. You made a good case there on contain=VM. I should have read your posts earlier. I will add your RSS to my reader so that I won’t miss much in the future. :-)


Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


    My company has created products like vSearch ("Super vCenter"), vijavaNG APIs, EAM APIs, ICE tool. We also help clients with virtualization and cloud computing on customized development, training. Should you, or someone you know, need these products and services, please feel free to contact me: steve __AT__ doublecloud.org.

    Me: Steve Jin, VMware vExpert who authored the VMware VI and vSphere SDK by Prentice Hall, and created the de factor open source vSphere Java API while working at VMware engineering. Companies like Cisco, EMC, NetApp, HP, Dell, VMware, are among the users of the API and other tools I developed for their products, internal IT orchestration, and test automation.