AWS问题:无法从快照创建的AMI启动实例,无可用实例类型
Let's walk through the most likely reasons you're hitting this issue, especially since you mentioned creating an AMI directly from an EC2 instance works perfectly.
Common Causes & Fixes
1. Mismatched Architecture or Virtualization Type
When you create an AMI directly from an EC2 instance, AWS automatically inherits the instance's architecture (e.g., x86_64 or arm64) and virtualization type (almost always HVM for modern instances). But when creating an AMI from a snapshot manually, you have to specify these details yourself—and a mismatch here will cause AWS to hide incompatible instance types.
How to check & fix:
- Go to the AMIs page, select the problematic AMI, and look at the Architecture and Virtualization type fields in the details pane.
- Compare these values to the AMI you created successfully from an EC2 instance.
- If they don't match, delete the faulty AMI, then re-create it from your snapshot: when you get to the
Create Imagedialog, make sure you select the same architecture and virtualization type as the working AMI.
2. Incorrect Root Device Configuration
When creating an AMI from a snapshot, you need to explicitly set which snapshot corresponds to the root volume (usually /dev/sda1 or /dev/xvda). If this isn't configured properly, AWS won't recognize the AMI as bootable, leading to limited or no available instance types.
How to check & fix:
- In the AMI details, verify the Root device field points to the correct snapshot (your GP2 volume's snapshot).
- If it's wrong, re-create the AMI: in the
Create Imagestep, under Add Storage, ensure you select your GP2 snapshot as the root volume (set the Device to the appropriate root path, like/dev/sda1), and confirm the Root device type is set toEBS.
3. Non-Bootable Snapshot
Make sure the GP2 snapshot you used is from the root volume of a previously running instance. If you took a snapshot of a data volume instead of the boot volume, the resulting AMI won't be bootable, which would explain the lack of available instance types.
4. Regional Consistency Check
Double-check that you're launching the AMI in the same region where you created the snapshot and AMI. While less likely (since your instance-created AMI works), some instance types have limited regional availability, and cross-region mismatches can cause this issue.
Quick Recap
The most probable fix is verifying that your manually created AMI matches the architecture, virtualization type, and root device configuration of the working AMI you made from an EC2 instance. AWS enforces strict compatibility between these AMI parameters and the instance types you can launch.
内容的提问来源于stack exchange,提问作者jprism

