EC2Vmbuilder

Revision 3 as of 2009-03-08 10:42:43

Clear message

This is a draft version.

This is how to install an official EC2 image using vmbuilder.

Note: The changes in the vmbuilder-chuck bzr branch have not been integrated back in to the proper vmbuilder tree just yet so these instructions are bound to change.

  1. Create a launchpad account if you don't already have one.

    https://launchpad.net/+login

  2. Grab the EC2 changes that were made to vmbuilder.
    bzr branch lp:~zulcss/vmbuilder/vmbuilder-chuck
  3. Install the necessary tools to build and run vmbuilder
    sudo apt-get install cdbs python-all-dev python-epydoc \
      kvm debootstrap parted kpartx ubuntu-keyring         \
      dpkg-dev python-boto python-cheetah ec2-ami-tools
  4. Grab the ec2-scripts that are needed to configure the image when it first starts and when the user logs in for the first time.
    bzr branch lp:~zulcss/ec2-scripts/trunk zulcss-ec2-scripts
  5. Build the package:
    (cd vmbuilder-chuck; debuild -uc -us)
  6. Install the debs.
    sudo dpkg -i                \
      python-vm-builder_*.deb   \
      python-vm-builderec2*.deb
  7. Run the following command. It will build, bundle, and upload the image for you.
    sudo vmbuilder xen ubuntu --suite=intrepid --ec2     \
      --ec2-cert=<place where your ec2 cert is>          \
      --ec2-key=<place where your ec2 key is>            \
      --ec2-access-key=<your aws access key>             \
      --ec2-secret-key=<your aws secret key>             \
      --ec2-user=<your aws # number>                     \
      --ec2-bucket=<your ec2 bucket name>                \
      --ec2-prefix=<image prefix>                        \
      --firstlog=zulcss-ec2-scripts/ec2-firstlogin.sh    \
      --firstboot=zulcss-ec2-scripts/ec2-firstboot.sh    \
      --part=zulcss-ec2-scripts/ec2-<arch>-part-file.txt \
      --debug