Now i want to install some services (Apache Web Server, Rails, maybe even Tomcat, but maybe the memory will be insufficient).

As i want to be able to later migrate the services to a bigger server, i wonder if it would make sense to install those services into a Virtual Machine, which i can easily copy, so i don't have to reconfigure everything on a new server.

Will this make sense for a small CPU and little Ram of 512MB?
And if yes, which virtualization solution would you suggest, it should take as few memory as possible (only a really thin layer)? Which linux distribution would make sense for the host and which for the guest?

3 Answers
3

The fact that the ARM has no virtualization technology is not an argument at all. Xen and OpenVZ do not need processor virtualization extensions.

If it makes sense is not so much a question of hardware but of software. In your setup, I would recommend OpenVZ which will create specific environments for each of your services. I'm 99.9% sure Xen will run on it as well but it will be much slower.

So, I think it can make sense if you use efficient virtualization software (of which VMWare and Hyper-V are obviously excluded).

Will it be blazing fast ? No definently not but it will work.

In a more-or-less similar context, I once setup a Sempron LE 1.8Ghz system with 2GB of RAM. With Xen, we had 7 Debian Lenny VM running and it ran fine. Obviously, you can't do that with VMWare but that doesn't mean you can't do it at all.

EDIT : Puppet is just automation software. OpenVZ/Xen provide isolation of your services and ressource allocation algorithms to make sure each "box" has a fair share of ressources. With puppet, ressource allocation would be taken care of by regular kernel. OpenVZ/Xen would keep any software conflict from happening (because of the isolation) but with Puppet you're on your own. So we are looking at two very different things.

Thanks for your explanation! But hmmm there is no official port of Openvz to ARM :( So ill surely have to deal with some bugs and issues here. So ill think about giving up separation of the services, and just have a "portable configuration" through Puppet
– Ingo FischerNov 18 '10 at 16:30

Xen will work on ARM if you want to try it out.
– Antoine BenkemounNov 18 '10 at 16:31

Nope. No sense whatsoever. The ARM almost certainly lacks any kind of Virtualisation technology, so it'll be dog slow.
If you're honestly concerned about migrating the servers off the device, then I suggest you build your configuration with Puppet. That'll make building another one trivially simple.