Are you sure you really want to do this? Installing Ubuntu isn't that much of a chore, and backing up a disk image would give you a snapshot at the time you made the disk image - you'd still want to back up your data (backing up the whole disk every time would use stupid amounts of DVDs).
Your best bet is to just back up the data and configuration and reinstall Ubuntu if you change your HDD. Also, cloning the disk to a backup medium would clone the partition layout as well, and if you replaced your HDD with a bigger one then restored the clone you'd only have the same amount of space as your old HDD unless you manually add an extra partition to your directory tree.
So just back up the important areas - /etc /home etc. You could tar them, zip them, burn the individual files to DVD, or whatever you want. For the /etc area tar may be your best bet as it will preserve file ownership and permissions.
You can make a package auto-install script file with the following:
$ echo '#!/bin/sh' >install-all
$ sudo dpkg --get-selections | awk '{print "apt-get -y install " $1}' >>install-all
Then running this script will auto-install all your current packages on a clean Ubuntu install.
$ chmod 755 install-all
$ sudo ./install-all