AWS AMI 跨区域复制和共享
发布: (2025年12月15日 GMT+8 09:22)
2 min read
原文: Dev.to
Source: Dev.to
概览
AWS AMI 跨区域复制和共享可以通过 AWS 管理控制台、CLI 或 SDK 完成。AMI 是区域特定的,因此必须显式复制到另一个区域后才能共享。
将 AMI 复制到另一个区域
- 打开 EC2 控制台。
- 前往 AMIs > My AMIs。
- 选中源 AMI 并选择 Actions > Copy AMI。
- 指定:
- 目标区域
- 名称和描述
- 加密选项(例如,为加密快照选择 KMS 密钥)
- AWS 会在目标区域创建一个新的 AMI ID。可在控制台或使用 CLI 监控进度。
CLI 示例
aws ec2 copy-image \
--source-region us-east-1 \
--source-image-id ami-12345678 \
--name "CopiedAMI" \
--region us-west-2
费用:快照存储和少量数据传输费用适用;没有额外的复制费用。
与其他 AWS 账户共享已复制的 AMI
- 在目标区域的 EC2 控制台中,选中新复制的 AMI。
- 选择 Actions > Modify Image Permissions。
- 在 Launch Permissions > Specific AWS accounts 下添加接收方的 12 位 AWS 账户 ID。
- 保存更改。接收方将在 AMIs > Shared with me 中看到该 AMI。
CLI 示例
aws ec2 modify-image-attribute \
--image-id ami-87654321 \
--launch-permission "Add=[{UserId=123456789012}]"
撤销共享权限
使用相同的命令,只需将 Add 改为 Remove:
aws ec2 modify-image-attribute \
--image-id ami-87654321 \
--launch-permission "Remove=[{UserId=123456789012}]"
加密 AMI
共享加密 AMI 时,还必须将关联的 KMS 密钥共享给接收账户。
接收方的使用方式
接收方可以在目标区域(例如 us-west-2)从共享的 AMI 启动实例。他们需自行承担产生的使用费用。