I'd like to configure an installer for Ubuntu which runs in 'unattended' mode and answers all the questions with defaults or pre-configured settings. Ideally it should run and reboot on it's own, resulting in a working system with no user input.
Redhat has this with Anaconda (I beleive it's called Kickstart?).
I know there is debian-installer, but I'm not sure how Ubuntu works or if it's very different. We definately want to use Ubuntu for this.
I've used FAI for this before, to good effect. It will do the install over a network or from a bootable CD-ROM. It's for debian, but should work fine with Ubuntu.
Ifaraone points at a good tutorial for this. If you're used to RedHat kickstart, the Ubuntu approach will probably annoy you to begin with. Don't be tempted to use the Ubuntu "port" of kickstart config - it's insufficiently mature at this stage to be flexible enough.
In particular, disc partitioning using preseed is a real pain, as the partman configuration "language" is obtuse, under-documented and insufficiently flexible. It is, however, possible using techniques similar to those documented at http://blog.loftninjas.org/2007/07/04/complex-lvm-on-an-alternative-install-of-ubuntu-debian-installer/ to rip partman out and do your own partitioning in a script. Recommended if you want to do anything quite so unusual* as running LVM on top of software RAID.
Once you've got preseeded network installs running, I'd thoroughly recommend looking at using puppet for managing configuration from installation onwards.
http://www.debuntu.org/how-to-unattended-ubuntu-network-install is a pretty fair tutorial on the subject.
Have a look at FAI the Fully Automatic Installation. It can do much more than preseeding and can install Debian and Ubuntu. It have more than 10 years experiences, and is also available as a Ubuntu package. The home page is:
http://fai-project.org
I did something similar. Check out my guide here