Amazon EC2 SAA 高频

AMI:自定义镜像、Snapshot 与 User Data

Amazon Machine Image, EBS Snapshot, and EC2 User Data

AMIEBS SnapshotUser DataEC2
最近整理

分清可启动模板、卷级时间点副本和启动初始化脚本,并组合 Golden AMI 与 User Data。

一句话理解

AMI 是可启动的 EC2 模板,Snapshot 是 EBS 卷的时间点副本,User Data 是启动初始化脚本。

概念保存什么主要用途不保存什么
AMI系统模板、Block Device Mapping、关联 Snapshot批量启动一致的 EC2原实例 ID、ENI、IP、RAM、进程
EBS Snapshot一个卷的块级时间点数据恢复卷、跨 AZ / Region 迁移完整 EC2 启动配置
User Data启动时执行的脚本环境相关的轻量动态配置可复用镜像
HibernateRAM 写入 Root EBS恢复原进程状态部署模板

设计要点

  • 创建 EBS-backed AMI 会创建相关 EBS Snapshot;默认 Reboot 有助于文件系统一致性。
  • AMI 是 Region 级资源,跨 Region 使用需要 Copy AMI。
  • Public AMI 不等于可信;要核对 Owner、补丁状态与来源。
  • 跨账户共享加密 AMI 时,还要处理 Snapshot 与 KMS Key 权限。
  • Deregister AMI 不会自动删除所有 Backing Snapshot。

推荐组合

把稳定、体积大、安装慢的依赖烘焙进 Golden AMI;用 User Data 注入环境配置、注册服务并完成最后一公里初始化。脚本应可重复执行且不在明文中保存长期密钥。

重点记忆

AMI 决定“启动成什么”,Snapshot 保存“卷在某一刻的数据”,User Data 完成“启动后如何配置”。