如何启动从其他区域复制的 AMI 实例?

How to launch an AMI instance copied from another region?

我使用 Packer 在北弗吉尼亚州 (us-east-1) 创建了 AMI。下面是它的构建器代码段。

"builders": [{
"type": "amazon-ebs",
"access_key": "XXXXXXXXXXXXXXXXXXXXXXX",
"secret_key": "XXXXXXXXXXXXXXXXXXXXXXX",
"region": "us-east-1",
"source_ami": "XXXXXXXXXXXXXXXXXXXXXXX",
"instance_type": "m4.2xlarge",
"ssh_username": "ubuntu",
"ami_users": [
"XXXXXXXXXXXX",
"YYYYYYYYYYYY"
],
"ami_name": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"launch_block_device_mappings": [{
    "device_name": "/dev/sda1",
    "volume_type": "gp2",
    "delete_on_termination": true,
    "volume_size": 30
    }]
}]

我在 us-east-1 中启动这个 AMI 没有问题。但是当我将它复制到孟买 (ap-south-1) 并尝试启动它时

The instance configuration for this AWS Marketplace product is not supported. Please see the AWS Marketplace site for more information about supported instance types, regions, and operating systems.

大部分设置保留为默认设置,因此不确定是什么导致了此问题。任何指点都会有很大帮助。

由于许可限制,Marketplace AMI 无法在帐户之间移动

来源:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/CopyingAMIs.html

You can't copy an AMI with an associated billingProduct code that was shared with you from another account. This includes Windows AMIs and AMIs from the AWS Marketplace. To copy a shared AMI with a billingProduct code, launch an EC2 instance in your account using the shared AMI and then create an AMI from the instance. For more information, see Creating an Amazon EBS-Backed Linux AMI.