从腾讯云 CVM(云服务器)迁移到阿里云 ECS 是一项常见的云基础设施迁移任务。为了确保数据完整性和业务连续性,建议采用官方工具迁移 + 手动验证的方式。
以下是详细的迁移步骤指南:
一、 迁移前准备
-
评估迁移范围
- 确定需要迁移的实例数量、操作系统类型(Linux/Windows)、磁盘大小、网络配置等。
- 检查应用依赖关系(如数据库、中间件、域名解析等)。
-
创建目标环境
- 在阿里云控制台创建一个与源腾讯云服务器配置相近的 ECS 实例(或作为临时接收服务器)。
- 确保目标 ECS 已安装必要的运行环境(如 Nginx、PHP、Java、MySQL 等),或准备使用“镜像迁移”方式直接克隆系统盘。
-
网络连通性测试
- 确保腾讯云服务器与阿里云 ECS 之间网络互通(可通过公网 IP 或内网 IP,若跨云则需走公网)。
- 建议在迁移期间开放必要端口(如 SSH 22, RDP 3389, rsync 873 等)。
-
备份数据
- 重要:在迁移前对腾讯云 CVM 进行快照备份,以防万一。
二、 推荐迁移方法
方法 1:使用阿里云 Server Migration Center (SMC) —— 最推荐
适用于大规模迁移、系统级迁移,支持增量同步和断点续传。
步骤:
-
注册 SMC 服务
- 登录阿里云控制台 → 搜索 “Server Migration Center” → 开通服务。
-
下载并安装迁移客户端
- 在 SMC 控制台创建迁移任务。
- 根据提示下载迁移客户端(Agent),安装到腾讯云 CVM 上。
- Linux: 执行一键安装脚本。
- Windows: 运行
.exe安装包。
-
配置迁移任务
- 在 SMC 控制台填写迁移参数:
- 源服务器:自动识别本地安装的 Agent。
- 目标:选择阿里云区域、VPC、安全组、镜像格式(qcow2/raw/vmdk 等)。
- 设置同步策略:首次全量同步,后续可设置增量同步以减少停机时间。
- 在 SMC 控制台填写迁移参数:
-
启动迁移
- 开始迁移后,SMC 会自动将数据上传至阿里云 OSS,并转换为 ECS 可用镜像。
- 监控迁移进度,确保无报错。
-
创建自定义镜像 & 启动 ECS
- 迁移完成后,在 SMC 控制台点击“创建镜像”。
- 进入阿里云 ECS 控制台 → “镜像” → 使用创建的自定义镜像启动新的 ECS 实例。
-
验证与切换
- 测试新 ECS 是否正常运行。
- 修改 DNS 解析指向新 ECS 公网 IP。
- 观察业务运行状态,确认无误后下线旧腾讯云 CVM。
方法 2:使用 rsync / scp 手动迁移 —— 适用于小文件或非系统盘数据
适用于仅迁移网站代码、配置文件、数据库等非系统核心数据。
Linux 示例(使用 rsync):
# 在阿里云 ECS 上执行(假设目标目录为 /data/www)
rsync -avz -e "ssh -p 22" root@<腾讯云CVM_IP>:/path/to/source /data/www
注意事项:
- 保持权限一致:添加
-a参数保留符号链接、权限、时间戳等。 - 排除大文件:如
/proc,/sys,/dev,/run等虚拟文件系统。 - 数据库迁移需先停写或使用
mysqldump导出再导入。
方法 3:制作镜像并导入 —— 高级用户
适用于希望完全复制系统环境且不想使用 SMC 的场景。
- 在腾讯云 CVM 上打包系统盘(或使用第三方工具如 Clonezilla)。
- 将镜像文件下载到本地。
- 通过阿里云“导入自定义镜像”功能,将镜像上传至阿里云。
- 使用该镜像创建 ECS 实例。
⚠️ 此方法操作复杂,易出错,不推荐普通用户使用。
三、 迁移后关键配置调整
-
更换网卡驱动
- 腾讯云使用 VirtIO 或 Xen 驱动,阿里云也支持 VirtIO,但有时需重新初始化网络。
- Linux: 检查
/etc/network/interfaces或 NetworkManager 配置,确保 eth0 能正常获取 IP。 - Windows: 通常自动识别,若无法上网,可在设备管理器中更新网络适配器驱动。
-
安全组与防火墙
- 阿里云 ECS 默认启用安全组,需在阿里云控制台放行所需端口(HTTP 80, HTTPS 443, SSH 22 等)。
- 同时检查腾讯云 CVM 上的 iptables/firewalld 规则,必要时清空。
-
时区与 NTP 同步
- 确保阿里云 ECS 时区设置为
Asia/Shanghai。 - 配置 NTP 同步阿里云时间服务。
- 确保阿里云 ECS 时区设置为
-
DNS 解析切换
- 将域名的 A 记录指向阿里云 ECS 的新公网 IP。
- 注意 TTL 值,提前降低 TTL 以提速生效。
-
SSL 证书与密钥
- 若使用 HTTPS,确保证书文件路径正确,或在阿里云部署 SSL 证书。
- 检查 SSH 私钥是否匹配。
-
监控与告警
- 安装阿里云云监控插件(CloudMonitor Agent)。
- 配置日志服务(SLS)收集应用日志。
四、 常见问题与解决方案
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| 无法连接 ECS | 安全组未放行 | 检查阿里云安全组入方向规则,放行 22/3389 端口 |
| 系统启动失败 | 驱动不兼容 | 尝试使用 SMC 迁移,其会自动处理驱动;或手动替换内核模块 |
| 数据库连接失败 | 密码/授权变更 | 重置 MySQL root 密码,或检查远程访问权限 |
| 网站打开慢 | DNS 未生效 | 等待 DNS 缓存刷新,或使用 nslookup 测试解析 |
| 权限错误 | rsync 未保留权限 | 使用 rsync -avz 并确保以 root 身份执行 |
五、 最佳实践建议
- 分阶段迁移:先迁移非核心业务,验证无误后再迁移核心业务。
- 灰度发布:部分流量切到新 ECS,观察性能与稳定性。
- 保留旧实例:在新 ECS 稳定运行至少 1~2 周后再释放腾讯云 CVM。
- 使用 SMC 的优势:支持增量同步,可实现分钟级停机迁移,适合生产环境。
✅ 总结:
对于大多数用户,推荐使用阿里云 SMC(Server Migration Center) 进行系统级迁移,操作简单、安全可靠。对于纯数据迁移,可使用 rsync 或数据库导出导入方式。务必在迁移前后做好备份和测试!
轻量云Cloud