对象存储跨云迁移执行手册
迁移对象内容,也要迁移访问行为
对象存储跨云迁移通常可以不停读,但源端持续写入、覆盖和删除会制造一致性窗口。版本、删除标记、归档状态、ACL、生命周期和事件通知也不会因为对象复制自动等价。
执行前先使用对象存储跨云迁移设计器生成方法草稿与阻断项,并完成对象版本、删除与属性语义评审;正式验收按对象存储校验与入口切换保存三层证据。
- 阿里云 OSS、华为云 OBS、腾讯云 COS 之间的同区域或跨区域迁移
- 以当前版本对象为主的全量复制、增量追赶和最终切换
- 厂商在线迁移服务,或使用 rclone/厂商开源工具的可控迁移
需要完整保留历史版本、合规保留锁、超大规模归档对象或跨境传输时,应单独验证产品支持与法规要求。
- 盘点 Bucket 地域、对象数量、总容量、前缀分布、平均/最大对象大小和每日变化量
- 盘点标准、低频、归档等存储类型,确认解冻流程、时间和费用
- 记录版本控制、删除标记、生命周期、跨区域复制、保留策略和对象锁
- 记录 ACL、Bucket Policy、CORS、防盗链、临时签名、加密与密钥管理
- 记录
Content-Type、Content-Encoding、Cache-Control和自定义元数据 - 记录 CDN 回源、图片处理、事件通知、静态网站、日志和应用上传凭据
- 明确覆盖、删除、同名冲突、失败重试和源端停写规则
| 目标云 | 厂商迁入服务 | 已核验的常见第三方源 |
|---|---|---|
阿里云 OSS | 在线迁移服务 | 华为云 OBS、腾讯云 COS 等 |
华为云 OBS | OMS 对象存储迁移服务 | 阿里云 OSS、腾讯云 COS 等 |
腾讯云 COS | 云迁移对象存储任务 | 阿里云 OSS、华为云 OBS、S3 兼容源等 |
开源路径可使用 rclone;迁往 OSS 的大规模自管场景还可评估 ossimport。选择前比较版本迁移、元数据、校验、失败清单、限速和增量能力,不只比较传输速度。
- 源端使用限定 Bucket/前缀的只读身份;只有确需读取版本、标签或元数据时才增加权限。
- 目标端使用限定 Bucket/前缀的写入身份,不授予删除权限,直到删除策略经过试迁批准。
- 优先使用短期凭据或受控角色;长期密钥不写入命令、脚本、日志和文档。
- 使用客户管理密钥加密时,分别确认源端解密和目标端加密授权,记录密钥责任人。
- 迁移完成后撤销临时身份、关闭临时公网策略,并审查对象访问日志。
选择包含小对象、大对象、中文键名、特殊字符、分片对象、不同存储类型和自定义元数据的代表性前缀:
- 在目标端创建隔离 Bucket 或前缀,不直接覆盖生产路径。
- 先执行只复制不删除的试迁,记录源目标请求与出流量。
- 比较对象数量、总字节、关键哈希、元数据、Content-Type 和缓存头。
- 验证 SDK 上传下载、预签名 URL、跨域、CDN 回源、图片处理和事件通知。
- 模拟任务中断、限流、403、404、归档未解冻和同名对象冲突。
- 记录实际吞吐、小对象瓶颈、失败重试与校验耗时,修正正式计划。
- 归档对象按计划分批解冻,避免任务反复读取失败或产生意外取回费用。
- 厂商服务按清单和前缀拆分任务;开源工具初期使用
copy,不使用会删除目标对象的sync。 - 依据源端出口、API 限额和目标端写入能力控制并发与带宽。
- 保存任务配置、对象范围、开始位点、失败列表和重试记录。
- 全量期间持续观察源端新增、覆盖和删除量,确保增量窗口可追赶。
- 执行至少一次预演增量,确认新增和覆盖对象能够追平。
- 明确源端删除是否同步;默认不传播删除,避免误删目标端。
- 对持续写入应用选择停写、双写或最终短窗口,不依赖修改时间的模糊比较。
- 最终窗口停止上传、覆盖、删除和生命周期任务,运行最后一次增量。
- 记录最终清单生成时间、任务完成时间和校验时间,避免校验期间源端继续变化。
使用 rclone 时参见先 copy、再 check 的安全流程。sync 会修改或删除目标端内容,只能在 --dry-run 审核后使用。
- 源目标当前版本对象数量与总字节数
- 关键前缀、最大对象、随机抽样和业务关键对象的内容校验
Content-Type、Content-Encoding、Cache-Control与自定义元数据- 公开/私有访问、临时签名、CORS、防盗链、加密与密钥解密
- CDN 回源、静态网站、图片处理、事件通知和应用上传下载
- 失败对象、跳过对象、归档对象、历史版本和删除标记的处置结果
不同平台的 ETag 不一定是同一种内容哈希,分片上传对象尤其不能只比较 ETag。必要时下载抽样或使用双方共同支持的校验字段。
- 停止源端写入和会删除对象的生命周期或后台任务。
- 运行最终增量并完成数量、容量、失败清单和关键对象校验。
- 先切应用上传凭据,再验证新对象确实写入目标端且可读取。
- 切换下载域名、CDN 回源、图片处理和事件通知。
- 保持源 Bucket 只读,持续监控目标端 4xx/5xx、回源失败和请求成本。
若目标端只读验证失败,可直接把读取入口切回源端。目标端已经接收新上传后,回滚必须先停止目标写入,再把新增对象反向复制到源端并校验;对覆盖和删除冲突按预先批准的“源优先、目标优先或人工仲裁”规则处理。
不要在回滚窗口内删除源 Bucket、历史版本或迁移清单。源端保持只读的时长应覆盖业务观察和反向补偿所需时间。
- 源云公网出流量和归档对象取回费用
- 源目标 API 请求、清单、校验下载和临时存储费用
- 在线迁移服务、迁移 Agent、ECS/CVM/ECS 中转和专线费用
- 双份对象、版本、日志、CDN 回源与双云并行费用
对象数量多时,请求费用和迁移时间可能比容量更敏感;用迁移时间与带宽计算器时应额外记录小对象比例。
核验日期:2026-07-14。正式任务前重新核对地域、源类型、版本/元数据范围、归档、加密、流量与请求计费。本手册未声称已对所有链路组合做实际迁移测试。
Built with