= Creating your own image = There are a few different ways one can create his own image. == Eucalyptus procedure == The Eucalyptus project is proposing an [[http://open.eucalyptus.com/wiki/EucalyptusUserImageCreatorGuide_v1.5|alternate guide to create images]] == Using vmbuilder == If you would want to author your own image, you can use the vmbuilder utility utility to create an image that will run in Eucalyptus. First, create a partition description file called 'part'. The contents describe the size, types, and mount points of your VM disk partitions: {{{ $ cat > part <firstboot < /etc/initramfs-tools/modules' sudo mkinitramfs -o ./ramdisk/initrd.img-$(uname -r) euca-bundle-image --image ./ramdisk/initrd.img-$(uname -r) \ --destination ./ramdisk --ramdisk true euca-upload-bundle --bucket ramdisk \ --manifest ramdisk/initrd.img-$(uname -r).manifest.xml ERI=`euca-register ramdisk/initrd.img-$(uname -r).manifest.xml | awk '{print $2}'` echo $ERI mkdir image euca-bundle-image --image ubuntu-xen/root.img \ --destination ./image --kernel $EKI --ramdisk $ERI euca-upload-bundle --bucket image --manifest ./image/root.img.manifest.xml EMI=`euca-register image/root.img.manifest.xml | awk '{print $2}'` echo $EMI }}} Note the shell variables that have been set in the above code snippets. They will be used to test the installation in the steps below. Now, your kernel, ramdisk and image will have been uploaded into Eucalyptus and should be ready to run. To confirm, run the following command: {{{ euca-describe-images }}} You should see a registered kernel, ramdisk and image and they should be marked as 'available'. Please note: if you are preparing the bundle on a machine that uses encrypted filesystems be aware that you cannot bundle the machine ramdisk for your AMI. This is because your local ramdisk includes routines to decrypt your local encrypted filesystem and these will make the instance crash at boot (as the encrypted filesystem does not exist).