I have customised (EBS-backed) AMI for running a demo version of an application of ours. (The AMI contains Ubuntu 11.04 with a Tomcat & MySQL setup for the app itself, and Jenkins for easy one-click update of the demo).
This is a 32-bit AMI, which means I have the following instance type options:
- Micro (t1.micro)
- Small (m1.small)
- High-CPU medium (c1.medium)
We've noticed that we'd like some more performance for the demo server than what c1.medium can offer. (Specifically, I suspect "I/O Performance: Moderate" might be a bottleneck, although I'm not sure if improving that would help given that we use EBS for everything.)
Anyway, in order to use the more powerful instance types (e.g. "m1.large" or "c1.xlarge"), I would need a 64-bit AMI.
One way to do this is to create a new instance from clean 64-bit Ubuntu AMI, then re-setup my system there, and finally save that as a new AMI. I could mount a volume with the current setup, and then cp -a
some stuff over to the new instance's root disk, which would help somewhat. But even so, this approach can be somewhat tedious and time-consuming.
So, my question is, is there any easier, automated way of converting a 32-bit AMI to a 64-bit one?
Best Answer
No, there is no automated way. You will have to create a new AMI starting with the Ubuntu-plain one.
It's possible to convert an Unbuntu installation but it's really messy. It's best you make a fresh AMI.