1.
1) 明确迁移对象:静态文件、用户上传、数据库、缓存与任务队列等分别列出。
2) 风险点识别:带宽瓶颈、IP 变更、证书与域名解析、跨境合规(ICP备案)、DDoS 攻击面等。
3) 突发应对:制定回滚点、保留香港环境 7 天的并行运行窗口、准备快照与备份。
4) 监控要求:部署端到端监控(Ping、TCP、应用探针、日志告警)并设定 SLI/SLO。
5) 低风险目标:优先实现“零丢包、最小停机、可回滚、数据一致”四项目标。
2.
1) 数据量统计:示例项目 500GB 静态数据 + 200GB 数据库,合计约 700GB(约 716800MB)。
2) 带宽与吞吐:如果海外出口实际可用带宽为 200Mbps(约 25MB/s),理论传输速率约 25MB/s。
3) 传输时间估算:716800MB / 25MB/s ≈ 28672s ≈ 8 小时(理想情况)。
4) 网络抖动与加密开销:考虑 TLS、SSH 加密与丢包,实际时间建议乘以 1.4 → 约 11.2 小时。
5) 并行与分片:对大文件使用并发分片(如 rclone chunk、aria2 或并行 rsync 多线程)可降低耗时与单连接失败风险。
3.
1) 传输工具推荐:rsync(增量、带 --checksum)、rclone(对象存储)、scp/sftp(小量文件)、bbcp(高性能)、lftp(断点续传)。
2) rsync 示例指令:rsync -avz --progress --delete -e "ssh -p22" /data/ user@cn-server:/data/ (先在测试目录验证) 。
3) 数据完整性校验:迁移后运行 md5sum 或 sha256sum 批量对比,示例:find /data -type f -exec md5sum {} \; > md5_src.txt 与目标对比。
4) 并行分片策略:将 /data 按目录或按日期分片,多线程并发 rsync,避免单连接超时。
5) 传输安全:建议使用专用 VPN 或 IPsec 隧道降低中间人风险,并在传输窗口使用流量包或临时增大带宽额度。
4.
1) 全量导出:对 MySQL 可使用 mysqldump 或 Percona XtraBackup(在线热备份),示例:mysqldump -uroot -p --single-transaction --master-data=2 --databases appdb > appdb.sql。
2) 增量同步:使用 MySQL 复制(主从/基于 binlog)或使用 Tungsten/Canal 进行增量订阅,确保在切换时仅需短时间倒换。
3) 大库迁移策略:先进行全量导入至国内,从库继续接收 binlog,待与主库延迟 <=1s 时执行切换。
4) 缓存与会话:采用分布式缓存同步或迁移会话至 Redis 集群,确保用户会话不中断,或使用 sticky session + 短 TTL。
5) 任务队列与异步:暂停或转发后台任务,使用消息中间件(Kafka/RabbitMQ)做桥接,防止重复消费与消息丢失。
5.
1) DNS 切换流程:提前降低 TTL(如 3600→300),在流量切换窗口内更新 A 记录或负载均衡器配置。
2) CDN 层策略:在国内机房启用国内 CDN 节点做缓存回源,过渡期可使用双回源策略(HK 与 CN 同时回源)。
3) DDoS 风险管控:提前在国内机房接入云厂商的 Anti-DDoS 或 Web 应用防火墙,准备清洗策略与黑白名单。
4) 流量切换顺序:先切换静态资源(CDN),再切换 API 域名,最后切换主域,以降低用户感知。
5) 测试与回滚:切换后 30-60 分钟重点监控错误率与延迟,若异常迅速回滚 DNS 至香港 IP。
6.
1) 案例简介:电商平台 A,由香港机房迁移到上海联通 IDC,日 PV 约 100k,活跃用户 50k,数据量 700GB。
2) 迁移动作:使用 Percona XtraBackup 做全备,rsync 传输静态文件并用 MySQL 主从复制缩短切换窗口。
3) 切换结果:总停机窗 12 分钟,数据回滚未发生,用户投诉率下降,页面加载延迟从 320ms 降至 120ms。
4) 部署配置对比(见下表):香港机房与国内机房配置与带宽对比。
| 位置 | CPU | 内存 | 磁盘 | 带宽 |
|---|---|---|---|---|
| 香港(迁出) | 4 vCPU | 8 GB | 200 GB NVMe | 200 Mbps |
| 国内(迁入) | 8 vCPU | 16 GB | 500 GB NVMe | 500 Mbps(包年) |
7.
1) 验证清单:文件完整性、数据库行数与关键订单 ID 校验、性能基准(QPS/RT)、登录和支付链路测试。
2) 监控指标:错误率、响应时间、数据库延迟、带宽利用率、CPU/IO 使用率、应用日志异常。
3) 回滚策略:DNS 回滚、数据库从主切回香港主库、快速恢复 CDN 回源指向原地址。
4) 事后审计:迁移日志与命令保留、时间点快照、变更审批记录与用户影响统计。
5) 长期同步:迁移完成后 7 天内维持双向数据校验,必要时使用定期全量校验脚本自动比对 MD5。