LWN.net Logo

Virtualization

Virtualization

Posted Aug 9, 2007 7:59 UTC (Thu) by nicolas@jungers (✭ supporter ✭, #7579)
Parent article: Quotes of the week

I don't question the 'very practical arrangement' assertion, but I really doubt that 'virtualization is the "message-passing microkernel" of this decade'.

The main difference I see is the power of today's hardware. On the server side, if you don't crave for performance - which is the reality of most server deployment - pack 20 virtual servers on a (HA) cluster of 2 real server is very very convenient and way cheaper. On the desktop, if you're not encoding video or running huge model, it's also very practical to run one or several virtual boxes just to run some legacy application.

So for my point of view, virtualization is a practical tool and not the result of design tinkering. I suspect that's the same for many peoples.

Nicolas Jungers


(Log in to post comments)

Virtualization

Posted Aug 9, 2007 10:27 UTC (Thu) by farnz (guest, #17727) [Link]

Think about why you need 20 virtual servers, and not two virtual servers running on top of a HA virtualization system (or even a generic HA system that can migrate process groups between servers). I suspect you'll find that there's two causes:
  1. The psychological effect of having one application per server.
  2. Buggy applications that don't cope well with sharing one OS instance.

There's other (lighter-weight) ways to handle buggy applications (e.g. namespaces, such that the application cannot see other apps running, and resource limits, to prevent the application taking over the server). As time goes on, I predict that we'll see the same process as has happened with microkernels; cool features will be implemented in virtualization systems, then the mainstream systems will work out how to implement the functionality people use in a more efficient way.

For example, it's nice to be able to migrate a single application (inside its own virtual server) from one machine to another; someone will look at how we do that, and find a way to encapsulate the state of an application to migrate it around.

Virtualization

Posted Aug 9, 2007 11:05 UTC (Thu) by nicolas@jungers (✭ supporter ✭, #7579) [Link]

For the why, I'd at least add: some (better) guarantee of orthogonality, the comfort of containment in something easier to grasp (server vs namespace) and finally the ability to run 'any' OS.

Granted, for most of my needs, real virtualization is overblown, and namespace separation would be enough while conserving resources. Now, because I've an enormous amount of unused resources, I prefer to just use the more comfortable solution that better covers my needs.

Virtualization

Posted Aug 9, 2007 16:55 UTC (Thu) by vmole (guest, #111) [Link]

1. The psychological effect of having one application per server.

Don't underestimate or ignore the power of this effect. The ability to ability to deploy a new application and guarantee that it won't disturb the existing ones is extremely important in a production system. And it's not just buggy apps. Library and subsystem version issues are a huge deal in a lot of environments.

And when tracking down problems, having each app in a separate "machine" can make life a lot easier.

Virtualization

Posted Aug 16, 2007 18:54 UTC (Thu) by robert_s (subscriber, #42402) [Link]

You've got to stop and think about what you're trying to do.

The whole point of an operating system (at least one of them) is to safely multiplex between multiple processes.

If you're finding you're having to multiplex between different entire OSs to perform that task, your operating system isn't doing its job. You've got it set up entirely wrong.

I'm waiting for people to come up with hyper-hypervisors five years down the line when they find the need for their applications to intercommunicate has left them not trusting their hypervisors enough.

Stop building the turtles.

Re: Virtualization

Posted Aug 16, 2007 19:22 UTC (Thu) by larryr (guest, #4030) [Link]

Operating Systems are turtles; processes are turtles; MMUs are turtles.

Partitioning the problem space and solution space are features of system design, not bugs.

Larry

Virtualization

Posted Aug 18, 2007 5:59 UTC (Sat) by NedLudd (guest, #37615) [Link]

--------And when tracking down problems, having each app in a separate "machine" can make life a lot easier.

I agree completely.......it is also how things are done in a lot of shops
that use i386 hardware (small - medium).....one sql box here...one webserver here.....source control over there.....etc.....

i really fell in love with virtualization when i worked for a company that wrote mail filters and i had to set up environments that mimicked customer setups.....pdc/exchange/app/client.....i could use base images, install software, test things out, and then revert it all....i could do a modest qa cycle in a short time....all without having to get up and turn boxes on and off or potentially hose my box.....

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds