先说结论:快照是“某个时间点的整机备份”,用来回滚;自定义镜像是“可启动的模板”,用来批量开新机器或迁移。两者都按存储收费,快照适合日常保护,镜像适合标准化交付。别把快照当镜像用,也别把镜像当备份。
先分清用途:
- 快照:系统盘/数据盘在某一刻的副本,回滚快
- 自定义镜像:把一台机器的系统盘做成模板,可重复创建实例
- 备份:可读的数据副本,能恢复文件或数据库,不等同于快照
快照怎么用
升级前打快照、改配置前打快照、大促前打快照。出问题直接回滚,比排查快。快照按实际占用和保留数量收费,保留太多会持续产生费用。
# 控制台或 CLI 打快照
# 回滚前先给当前状态再打一个,避免回滚后丢新数据

自定义镜像怎么用
把装好系统、运行环境、监控 agent 的机器做成镜像,新机器直接用,省去重复安装。适合标准化交付、扩容、跨区部署。镜像越大,创建和启动越慢,制作前先清理。

制作镜像前要清理什么
- 日志、缓存、临时文件、下载包
- SSH 密钥、密码、API Key、数据库密码
- 机器专属配置:主机名、静态 IP、网卡绑定
- cloud-init 状态,避免新机器沿用旧配置
- 监控 agent 的注册信息
镜像里带密钥是常见事故。制作前把敏感信息清掉,首次启动再用 cloud-init 注入。
迁移怎么做
- 旧机器打快照或制作镜像
- 新机器用镜像启动,确认系统能起来
- 同步数据(数据库 dump、上传目录、配置)
- 改 DNS 或切负载均衡
- 观察一天,再释放旧机器

回滚怎么做
回滚前先给当前状态打快照,避免回滚丢掉新写入的数据。系统盘回滚会覆盖整盘,数据盘按需单独回滚。回滚后检查服务、证书、定时任务和监控。
成本怎么算
快照按增量存储计费,保留越多越贵;镜像按实际占用计费。建议快照保留 7 到 30 天,镜像只留最近几个版本,过期清理。跨区复制会额外产生流量和存储费用。
常见坑
- 把快照当备份,结果文件损坏一起回滚
- 镜像里残留密码和密钥
- 镜像太大,启动慢、占用高
- 跨实例规格使用镜像,驱动不兼容
- 回滚前没打新快照,丢了当天数据
快照策略
系统盘每天一次、保留 7 天;数据盘按业务变更频率,重要操作前手动打一次。快照是增量的,但保留太多仍会累积费用,设置生命周期自动清理。
镜像和 cloud-init
制作镜像前清理 cloud-init 状态,让新机器首次启动重新注入主机名、密钥和网络配置。否则新机器可能沿用旧 IP、旧主机名,起不来或冲突。
跨区复制
镜像复制到其他区域会产生流量和存储费用,复制前确认目标区支持该规格和驱动。跨云迁移更复杂,通常用导出镜像或重新部署。
权限和加密
镜像和快照属于敏感资产,限制谁能创建、复制、删除;包含数据的镜像开启加密。离职或项目结束时及时清理。
演练
每季度做一次“用镜像开新机 + 恢复数据 + 切流量”的演练,确认镜像真的能启动、数据真的能恢复。没演练过的镜像,关键时刻可能用不了。
镜像版本管理
给镜像打版本号和日期,例如 web-base-202610,记录包含的系统、运行时和 agent 版本。保留最近两三个版本,旧版本定期删除,避免越积越多。
快照和备份的区别
快照依赖云平台,恢复快但不可读;备份是文件级副本,能单独恢复某个库或目录。重要业务两者都要有,别用快照替代备份。
成本优化
定期清理过期快照和镜像,跨区复制按需做,数据盘快照和系统盘分开保留。把保留策略写进运维规范,别靠人记。
常见场景
新机器标准化、批量扩容、跨区部署、故障回滚、环境复制,都是镜像和快照的典型场景。先明确目的,再选快照还是镜像。
镜像和实例规格
镜像包含驱动和内核,跨实例规格使用可能不兼容。换规格前确认驱动支持,必要时用通用镜像重新部署。
安全合规
镜像和快照可能包含业务数据,按数据分级管理权限和加密;跨境复制要确认数据合规要求。
迁移到其他云
跨云通常不能直接用镜像,需要在目标云重新部署,或用导出/导入工具迁移数据。先在新云跑通,再切流量。
快照恢复演练
每季度用快照恢复一台测试机,确认系统能启动、数据完整、服务能跑。恢复时间也要记录,作为 RTO 参考。
镜像制作时间
镜像制作要停机或保证一致性,数据库类机器先停写或打快照,避免做出“半写”的镜像。
另外,镜像和快照都要纳入变更管理,谁创建、为什么创建、什么时候删除,最好有记录。
用完的临时快照及时清理,积少成多也是一笔成本。
最后,镜像和快照不是越多越安全,关键是能在需要时快速恢复,且恢复出来的系统是干净的、可用的。
把镜像版本、快照保留和恢复演练写成规范,团队换人也能照着做。
规范里至少写清:谁可以创建、保留多久、多久演练一次、过期怎么清理。这样既安全,也不会让存储费用失控;团队照着规范执行,比靠个人经验可靠得多;规范也要定期更新,别让它过期,并检查执行情况,发现问题及时修正,才能真正长期有效,负责人每季度复盘一次,确保规范跟得上业务变化,而不是写完就锁进抽屉里,这一点真的很重要啊。
常见问题 FAQ
Q1:快照和镜像有什么区别?
快照是时点副本,用于回滚;镜像是可启动模板,用于创建新实例。快照不能直接开机器,镜像可以。
Q2:快照能当备份吗?
不能完全替代。快照依赖云平台,误删或平台故障时可能拿不回来;重要数据还要做可读备份。
Q3:镜像能跨区用吗?
多数云支持复制镜像到其他区域,但会产生流量和存储费用,复制前确认目标区规格兼容。
Q4:回滚会丢数据吗?
会。回滚到某个时间点,之后写入的数据就没了。回滚前先给当前状态打快照。
Q5:镜像要多久做一次?
系统或环境有大变更时做一次,保留最近 2 到 3 个版本即可,不必每天做。
总结
快照负责回滚,镜像负责复制,备份负责可读恢复。制作镜像前清理敏感信息,回滚前先打新快照,定期清理过期版本控制成本。
需要一台干净机器做镜像验证或迁移演练,可以按小时开一台萤光云香港 CN2 VPS,跑通再切生产。







