云迁移工具常见问题以及解决方法
各个模块的日志文件:
a. conductor(控制服务):
/var/log/cmigrate/conductor.log
/var/log/cmigrate/stdout.log
/var/log/cmigrate/stderr.log
b. transport(中转服务):
/var/log/cmigrate/transport.log
/var/log/cmigrate/transport_stdout.log
/var/log/cmigrate/transport_stderr.log
/var/log/cmigrate/v2v/${taskId}.log # 如果需要执行v2v的话,每个任务都有一个
c. vmware(vmware 无代理日志, 和transport部署在同一台虚机中):
/var/log/cmigrate/vmware.log
/var/log/cmigrate/vmware_stdout.log
/var/log/cmigrate/vmware_stderr.log
/var/log/cmigrate/vixDiskLib-*.log (vmware接口调用相关的一些日志)
d. packer(linux源端代理):
/var/log/cmigrate/packer.log
/var/log/cmigrate/stdout.log
e. packer(windows源端代理):
C:\cmigrate\log\packer.log
C:\cmigrate\log\packer_stdout.log
C:\cmigrate\log\packer_stderr.log
离线迁移,日志在 X: 盘。
windows离线迁移时,系统内有安装PuTTY、WinSCP、AnyDesk等工具,可以通过windows开始菜单进入。
1、无代理迁移计算数据大小失败,“Error caused by file /vmfs/volumes/e24134fd-e433sdw2/samplevm/samplevm.vmdk”
原因:querychangeddiskareas接口失败,一般出现这种故障是因为vadp开启cbt时要求虚机之前没有任何快照
解决方法:
1. Disable CBT using tools in http://220.231.216.27/cmigrate/tools/cbt
2. Take a snapshot
3. Delete all snapshot
示例:
```
1、在云迁移部署的虚机内执行wget http://117.48.207.245/cmigrate/tools/cbt
2、chmod 777 cbt
3、./cbt 出现使用方式
4、./cbt -vcenter=172.16.9.200 -user=administrator@vsphere.local -passwd=Huayun@123 -uuid=4221d200-fc6a-5ac2-9f4f-55ed194811e9 -op=disable
5、然后到vcenter上为该虚机创建快照,然后删除所有快照。
按照如下操作,查找上述第4步中的虚机uuid:
A、 在云迁移平台,点击源主机的更新按钮
B、 到transport日志查找对应的虚机uuid
```
2、windows迁移后目标端dhcp不到ip
原因:源端配置了静态ip,所以没打开dhcp client服务
解决方法:目标机器的服务里面打开dhcp client服务
3、Windows迁移后目标端磁盘offline
原因:源端san策略没有配置成onlineall
解决方法:手动对目标端进行磁盘上线
4、windows 2003 迁移后目标端分区不自动分配盘符
原因: 注册表子项HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Mountmgr\NoAutoMount没有关闭
解决方法: 手动分配盘符
5、迁移到云平台的windows 2008/7 及更高版本的windows系统,启动时报错,错误代码是 0xc0000428,并且错误内容是windows无法验证\windows\system32\winload.exe的数字签名
原因:这种场景由于windows操作系统一直在更新,无法做到持续更新迁移工具的windows boot分区数据以及mbr信息
解决方法:
1. 下载packer-offline-windows-2.0.0.iso 镜像,该镜像核心是win10 pe,下载地址http://10.192.13.183/cmigrate/v2.0.0/packer-offline-windows-2.0.0.iso
2. 上传到云平台,并且制作成 iso 镜像
3. 对迁移云平台上的目标云主机挂载该iso镜像,开机进入win10pe
4. 打开cmd命令行,执行 bcdboot.exe C:\windows /s D:\ 进行boot的修复。(备注,该命令中C:\是指云主机的windows系统分区,D:\是指云主机的windows启动分区,两个盘符都可能会发生变化
5. 关闭云主机,卸载iso镜像,然后开机,此时系统如果没有其他问题可以正常启动
6、windows离线迁移时,v2v报错 "The disk contains an unclean file system (0, 0)." 或者 "read-only file system."
若报错是 "read-only file system.",请在确定系统盘的分区(该示例中为/dev/vdc2)后,然后按照如下方法判断具体的错误是否为 "The disk contains an unclean file system (0, 0)."。
1、mount -t /dev/vdc2 /mnt
2、umount /mnt
若是该错误,请按下列解决方法进行处理。
原因:
1、强制关机导致文件系统中的数据没有完全刷新到硬盘中。
2、win10等具有fastboot功能的系统,正常关机时并不会把所有数据都刷新的文件系统中。
解决办法:
1、强制关机的情况下,重新启动到源系统,正常关机。
2、对于win10等具有fastboot功能的系统,启动到源系统,使用命令行 `powercfg /h off` 关闭fastboot,然后关机。
备注:
迁移完成后,使用命令行 `powercfg /h on` 开启fastboot。
7、windows无代理迁移时,v2v报错 "The disk contains an unclean file system (0, 0)." 或者 "read-only file system."
若报错是 "read-only file system.",请在确定系统盘的分区(该示例中为/dev/vdc2)后,然后按照如下方法判断具体的错误是否为 "The disk contains an unclean file system (0, 0)."。
1、mount -t /dev/vdc2 /mnt
2、umount /mnt
若是该错误,请按下列解决方法进行处理。
原因:
1、有可能是未安装vm-tools导致内存中的数据没有完全刷新到硬盘中。
解决办法:
1、虚机安装vm-tools。
8、windows 系统分区不是C分区迁移时,目标虚机启动报 "在系统启动时至少有一个服务或驱动程序产生错误"
原因:
虚拟化引入的virt tools first boot service 固定从c:/Program Files目录启动,系统分区不是C分区的时候会找不到相应的目录导致服务启动失败。
解决方法:
1、dos命令行,进入系统分区下的Program Files\Guestfs\Firstboot目录,手动执行“rhsrvany.exe -s firstboot”
2、服务管理中将这个服务禁用
9、无代理静创建默快照失败
导致这个问题的原因可能有多种,下列仅仅是已知的可能原因:
1、vmware虚拟机没有虚拟机光驱设备,添加后即可创建静默快照。
10、windows 系统分区不是C分区迁移时,目标虚机启动报 "在系统启动时至少有一个服务或驱动程序产生错误"
原因:虚拟化引入的virt tools first boot service 固定从c:/Program Files目录启动,系统分区不是C分区的时候会找不到相应的目录导致服务启动失败。
解决方法:
1、dos命令行,进入系统分区下的Program Files\Guestfs\Firstboot目录,手动执行“rhsrvany.exe -s firstboot”
2、服务管理中将这个服务禁用