Elastic / Cloud Computing
As previously mentioned, I'm trying to sort out our server performance/reliability somewhat. This needs to be done with pretty much no money whatsoever - we can't afford to go off and buy a fancy rack-mount high-availability server (or even a rack to put it in, for that matter) with multiple SAS drives and such.
As discussed, my first thought was to try and make a DIY disk controller from a normal motherboard. Nice idea, but a lot of work involved for not that much - especially as it then struck me that by the time I'd shoved a motherboard, RAM and disks into a case I (obviously) had a perfectly decent server. This got me thinking - what I'm basically after is a system that lets me quickly set up random computers as servers and do stuff on them with as little messing around as possible. Virtualisation is the obvious answer to being able to move applications between physical servers as quickly as possible... and then I came accross the Amazon Computing Cloud, EC2, which sounds like a fabulous idea.
So, how do I make my own Amazon-like computing cloud? I'm guessing what I'm after is a basic Linux system that boots from LiveCD / USB drive into a Xen environment, then contacts a central server to say it's alive, has X, Y and Z processors, RAM and disk space and can be given VMs to run. Has anyone come accross anything like this?
Also, has anyone got any idea exactly what an Amazon Machine Image is? Is it simply a Xen virtual machine image with an attached XML manifest of some kind, or something fancier? It would be handy to have a system capable of swapping VMs to/from the Amazon computing cloud.