Add Comment

You are not currently logged in. If you do not have a user account then please consider creating one and logging in before you post your comment. This will allow you to track replies to your comment, and take part in the site much more freely.

To add your comment, fill in all the boxes below and then preview it to make sure you're happy with the way that it looks.

This is the comment you were replying to, attached to the article Choice for Virtual Private Servers?:


Re: Choice for Virtual Private Servers?
Posted by jooray (85.216.xx.xx) on Sun 8 Jan 2006 at 16:10
Personally, I use linux-vserver, but I've researched on the others and tried them all. Here's my take:
  1. UML is the easiest to install. At this time, it requires no kernel-space changes, it is a user space application. It is as easy as installing some UML linux kernel binary (apt-get install user-mode-linux). You create a new installation using rootstrap, which does not even require root access. So user-mode-linux is entirely a user-space solution. If you want to setup advanced networking or want to have part of your existing filesystem mounted under uml as root, you need root access, but it should require absolutely no kernel modifications or reboots at all. Best for playing with virtual machines. The downside: it's slower than anything else, it's a kernel in userpace running under your kernel, all system calls are emulated. Anyways, I know of several hosting companies using this approach for providing virtual machines, so it's at all not that bad. We also used this at school for linux lessons. Users who do not have root access can boot, reboot, etc. their machines. It's probably best as a learning tool.
  2. Linux-vserver is simply advanced chroot. Very advanced, that is, but essentially you are running one kernel, which is knows, that it hosts several virtual machines. So essentially you can not have different kernel under your virtual machine, but you have different user space, so you can essentially boot different operating systems.

    Linux-vserver needs kernel patch. All utilities are in Debian, nice howto for sarge is here.

    You can limit the usage of ip addresses inside of vserver, you can boot your virtual machines, have different root user, etc. All is safe and sexy. Only downside is, that you are not running different kernel for each virtual machine, which is also the biggest advantage: it's the fastest and most efficient approach.

  3. Xen allows you to run different operating systems. It's a hypervisor, can be farly compared to vmware or qemu, but it essentially does only virtualization, it does not emulate anything. You can either use latest Intel chips, which support virtualization, or you need a patch into both host and "guest" kernels. But you can do things like migrating the machine live from one physical machine to the other, work with hardware resources.

    Since Xen guests run their own kernel, it's not as efficient as Linux-vserver, but it's faster than user mode linux, because there's no emulation.

    Currently, the biggest downside is patching (or installing binary kernels, which I would like to avoid), but it's going to mainstream kernel, so I hope that Xen will be standard under Etch.

  4. Qemu. To be complete, there's also a free processor emulator, called Qemu. It's very useful for testing. I used it for example to build openbsd userland for embedded machine, etc. It runs from userspace. There's also accelerator module, which makes it a lot faster, if running x86 guest on x86 machine. Actually, there are two. One free and one from the original author of qemu, which is proprietary. I have not tried the open-source module, I have not known about the Free one when I needed it, but building proprietary module is as easy as apt-get build-dep qemu && apt-get source qemu, untarring the module in the qemu source directory, enabling it in debian/rules (adding --with-kqemu) and doing fakeroot ./debian/rules binary for creating debian package.

    The main advantage of qemu is, that it allows you to emulate any architecture on any other. So you can run i386 debian userland on PowerPC, etc. I know, that there's a Debian port of it, but in cases you are developing specially targeted userland for one processor, it's quite useful. Networking is also not so easy to setup (different than user-space networking, which does not grant the userland it's own ip address, but for outgoing connections, it works).

    If you don't need advanced networking or accelerator module, you can run qemu entirely from userland, which is very useful - you don't need root access.

I hope this was helpful.

Juraj.


Username:Anonymous
Title:
Your Comment:

Posting Format:

 

Inappropriate comments will be removed.

Some help on entry formatting is available

User Login

Username:

Password:

[ Advanced Login ]

Register Account

Quick Site Search