How should I use the new AWS EC2 classes (r3, i2) with my existing AMI without recreating the whole system setup?
The new EC2 classes support only HVM based virtualization but I have only PVM AMI images.
Start an Ubuntu HVM linux, any version, new
Start an Ubuntu / with my existing AMI / PVM linux, and install grub packages on them: apt-get install grub-pc grub-pc-bin grub-legacy-ec2 grub-gfxpayload-lists
Stop PVM linux
Detach root (/dev/sda1) partition at PVM linux
Attach PVM linux root partition to running HVM linux somewhere, e.g.: /dev/sdf
On HVM linux: mkdir -p /mnt/xvdf && mount /dev/xvdf /mnt/xvdf
rsync -avzXA /boot/ /mnt/xvdf/boot/
mount -o bind /dev /mnt/xvdf/dev && mount -o bind /dev/pts /mnt/xvdf/dev/pts && mount -o bind /proc /mnt/xvdf/proc && mount -o bind /sys /mnt/xvdf/sys
chroot /mnt/xvdf
grub-install --no-floppy --recheck --force /dev/xvdf
update-grub2
exit chroot: CTRL+D
stop HVM Linux
detach /dev/sda1 original root AND detach /dev/sdf PVM root
attach PVM root to HVM linux as /dev/sda1
Start HVM linux, voilà !
Create a new AMI image from the running HVM linux, it will be HVM virtualized.