更新时间:2025-08-27 GMT+08:00
链接复制成功!
源端在云上,不能访问公网,需要全程无公网迁移
本指导针对源端和目的端均位于华为云,且源端无法访问公网并希望实现全程无公网迁移的场景,提供相应的解决方案和操作指南。
源端和目的端同区域的全程无公网迁移
该场景需要满足的条件和具体的操作步骤如下:
前提条件
源端和目的端位于同一Region并且所属的VPC网络互通,同时所处Region属于SMS内网支持的Region。具体支持的Region请参见下表。
区域名称 | 区域代号 | 内网域名 |
|---|---|---|
华南-广州 | cn-south-1 | sms.cn-south-1.myhuaweicloud.com |
华北-北京四 | cn-north-4 | sms.cn-north-4.myhuaweicloud.com |
华东-上海一 | cn-east-3 | sms.cn-east-3.myhuaweicloud.com |
华东-上海二 | cn-east-2 | sms.cn-east-2.myhuaweicloud.com |
操作步骤
- 在源端服务器下载并安装SMS-Agent。
- 用管理员账号登录源端服务器并启动SMS-Agent,输入AK、SK 和sms_domain信息。
本次启动是为了拉取SMS的配置文件,启动会报错失败,属于正常现象,因为此时云服务域名还没有替换成内网域名。
- 根据源端服务器的操作系统,执行以下命令替换云服务域名:
- Linux系统,执行以下命令。
cd SMS-Agent/agent/config # 进入配置文件目录 sed -i 's/sms.ap-southeast-1.myhuaweicloud.com/sms.区域代号.myhuaweicloud.com/g' ./cloud-region.json # 替换SMS内网域名 sed -i 's/iam.myhuaweicloud.com/iam.区域代号.myhuaweicloud.com/g' ./cloud-region.json # 替换IAM内网域名 sed -i 's/mainRegion.*/mainRegion": "区域代号",/g' ./cloud-region.json # 替换mainRegion代号
- Windows系统(Python 2版本),运行PowerShell,执行以下命令。
(Get-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json" -Raw) -replace "iam.myhuaweicloud.com", "iam.区域代号.myhuaweicloud.com" | Set-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json" (Get-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json" -Raw) -replace "sms.ap-southeast-1.myhuaweicloud.com", "sms.区域代号.myhuaweicloud.com" | Set-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json" (Get-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json" -Raw) -replace '"mainRegion":.*', '"mainRegion": "区域代号",' | Set-Content -Path "C:\SMS-Agent-Py2\config\cloud-region.json"
- Windows系统(Python 3版本),运行PowerShell,执行以下命令。
(Get-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json" -Raw) -replace "iam.myhuaweicloud.com", "iam.区域代号.myhuaweicloud.com" | Set-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json" (Get-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json" -Raw) -replace "sms.ap-southeast-1.myhuaweicloud.com", "sms.区域代号.myhuaweicloud.com" | Set-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json" (Get-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json" -Raw) -replace '"mainRegion":.*', '"mainRegion": "区域代号",' | Set-Content -Path "C:\SMS-Agent-Py3\config\cloud-region.json"
- Linux系统,执行以下命令。
- 重启SMS-Agent,输入AK、SK,域名处输入y,确认使用上次输入的域名。等待出现成功标识后,前往SMS控制台设置迁移目的端并启动迁移。需要特别注意,在配置目的端时“网络类型”选择“私网”。
源端和目的端不在同一区域的全程无公网迁移
该场景需要满足的条件和具体的操作步骤如下:
前提条件
目的端Region属于SMS管理面内网支持的Region。具体支持的Region请参见下表。
区域名称 | 区域代号 | 内网域名 |
|---|---|---|
华南-广州 | cn-south-1 | sms.cn-south-1.myhuaweicloud.com |
华北-北京四 | cn-north-4 | sms.cn-north-4.myhuaweicloud.com |
华东-上海一 | cn-east-3 | sms.cn-east-3.myhuaweicloud.com |
华东-上海二 | cn-east-2 | sms.cn-east-2.myhuaweicloud.com |
操作步骤
本场景需要在目的端Region创建一台代理服务器,以下是具体步骤和要求:
- 准备代理服务器。
- 代理服务器要求:与目的端服务器处于同一Region,无需配置EIP,仅需通过内网访问云服务。
- 代理软件选择:推荐使用squid代理软件。
- 代理服务器安全组配置:代理服务器的安全组需要对源端服务器的内网IP开放代理端口。
- 安装和配置代理软件,方法请参见:配置代理服务器。
- 在源端服务器安装和配置SMS-Agent,方法请参见:在源端服务器下载并安装迁移Agent。
- SMS-Agent启动成功后,前往SMS控制台设置迁移目的端并启动迁移。需要特别注意,在配置目的端时“网络类型”选择“私网”。

