用途:辅助华为云 SMS(Server Migration Service)主机迁移,覆盖迁移前检查、Agent 安装、SMS API 迁移、迁移后启动修复与校验、清理等环节。核心原则是源端只读、数据完整复制、严格按 migration_hosts JSON 创建目的端,新目的端 ECS 按 {hostname}_{MMDD} 命名。
主要能力:迁移前检查网络连通性、源端资源水位与磁盘/OS 兼容性;通过 hcloud CLI 创建模板(CreateTemplate)与任务(CreateTask),启动并轮询至 MIGRATE_SUCCESS;迁移后修复(含 BIOS GRUB、替换 AWS 内核、netplan DHCP、99-net-ifnames.cfg、禁用 cloud-init 网络、设 root 密码、启用 SSH 密码登录);源端与目的端一致性比对;提供常见错误码修复(SMS.0515/SMS.0007/SMS.6102/SMS.6562 等)。
使用方式:源端已安装 SMS Agent 时跳过安装,否则执行 cd /root/SMS-Agent && bash ./startup.sh,交互输入 y / y / <AK> / <SK> / sms_domain / 0。迁移前检查运行 python3 scripts/pre_migration_check.py --input migration_hosts.json;迁移后校验使用 scripts/post_migration_check.py。CreateTask 需带 --syncing=false、--use_public_ip=false、--target_server.disks.1.disk_id=<src_disk_id>。VPN/专线场景禁止传 publicip 参数,若发现目的端浮动 IP 需执行 hcloud EIP DisassociatePublicips 与 hcloud EIP DeletePublicip 释放。
限制:高危禁止项包括源端任何增删改、磁盘调整、关闭 SMS-Agent 或 IO 监控、割接后源端新增数据、目的端切换/重装系统、未完成时删除任务、新建 EIP(helper ECS 临时 EIP 除外)。不迁移共享文件系统、未挂载磁盘、临时磁盘;不支持 BitLocker、AD 域控、多节点数据库、RAID、LVM 嵌套与精简卷。Agent 不得执行割接或删除源端主机。任务与模板迁移后不删除。前置条件为 Python 3.6+、hcloud CLI 已配置 AK/SK 与 region。具体收费价格、性能数据暂未提供。