使用VMware Converter 工具实现XenServer上的虚拟机转换迁移到Vmware ESXi。
环境:Citrix XenServer6.0上的一台Linux虚拟机迁移到Vmware ESXi5.0上。我有6台ESXi服务器,所以是使用VMWare vCenter集中管理的。
1、将需要转换的虚拟机是开机状态,并网络状态是通的。如图:
<ignore_js_op>
2、打开VMware Converter,一般都是直接连接本地,也可以输入IP/用户名/密码来连接。
<ignore_js_op>
<ignore_js_op>
3、如图,选择“转换计算机”,然后选择类型为“已打开电源的计算机”,在下面输入远程计算机即XenServer上Linux虚拟机的IP及用户密码。
其实这种方式跟P2V一样,它把远程的虚拟机当做是一台物理服务器了,区别就在于虚拟机的文件格式会不同,后面有需要修改说明。
<ignore_js_op>
4、如图,默认选择yes,下一步。
<ignore_js_op>
5、检索远程计算机信息。
<ignore_js_op>
6、成功检索到源计算机后,现在输入目标服务器IP及用户密码。ESXi服务器有使用vCenter就输入vCenter的信息,单个ESXi服务器就输入ESXi的信息。
<ignore_js_op>
7、忽略证书。
<ignore_js_op>
8、输入新的虚拟机名,名称可以和原来的一样。
<ignore_js_op>
9、有多台ESXi服务器选择将虚拟机放在哪台ESXi服务器上,选择存储位置,如图。
<ignore_js_op>
10、在这里可以对目标虚拟机进行一些修改编辑。如:硬盘、CPU、内存、网络等。
<ignore_js_op>
11、这里可以编辑CPU和内存。
<ignore_js_op>
12、这里可以编辑网络。
<ignore_js_op>
13、其它编辑选项,根据自个的需求选择吧。
<ignore_js_op>
14、这一步很重要,“助手虚拟机网络”只有在转换Linux系统下才有这一不,Windows下就没有。这里要临时使用一个Ip,转换迁移完成后,这个地址会自动消失,注意,如果没有这个助手虚拟机网络IP是不能进行迁移的。
<ignore_js_op>
15、确认信息。没问题就点击“完成”。
<ignore_js_op>
16、然后就会看到转换迁移的进度。
<ignore_js_op>
17、转换迁移的信息能在下面看到,在状态处能看到已完成迁移。
<ignore_js_op>
18、到ESXi vCenter上可以看到成功迁移过来的虚拟机。
<ignore_js_op>
19、但是Linux系统的虚拟机迁移过来后会有点小问题,开机启动后不能进入到系统里,能看到报错信息。如图,原因:经过xenserver修改过的 xen内核不能在vmkernel上运行!所以要更改虚拟机内核。
<ignore_js_op>
20、设置虚拟机强行进入BIOS,让其从光盘启动。添加 iso 镜像文件,是该Linux系统的安装光盘。(我这里的截图可能前后系统不一致,但过程和原理都是一样的,所以不要执着于图片中的错误哈,O(∩_∩)O~)
<ignore_js_op>
<ignore_js_op>
<ignore_js_op>
<ignore_js_op>
21、设置光盘启动,保存退出。
<ignore_js_op>
22、进入Linux系统光盘中,输入 linux rescue 进入救援模式。
<ignore_js_op>
<ignore_js_op>
23、选择语言,默认。
<ignore_js_op>
24、默认
<ignore_js_op>
25、不用设置网络。
<ignore_js_op>
26、继续。
<ignore_js_op>
27、进入救援模式。
<ignore_js_op>
28、按照提示 输入 chroot /mnt/sysimage/,注意前后的差异是一个没有有boot目录,一个有。
<ignore_js_op>
29、挂在 cdrom ,注意光盘所在的路径,系统版本不一样有可能路径也回不一样,强制更新非 xen 内核。
<ignore_js_op>
30、卸载 xen server 工具
<ignore_js_op>
31、编辑 /boot/grub/grub.conf 配置文件,default=0 非xen 内核
<ignore_js_op>
32、编辑 /etc/inittab 文件,注意下面这几行前后的差异,注释掉“co……”,去掉“#1 #2 #3……”前面的#号。
<ignore_js_op>
<ignore_js_op>
如果未注释 #co 这行,启动将提示如下错误,无法进入系统!
<ignore_js_op>
33、退出并重启。
34、grub 界面。
<ignore_js_op>
35、成功启动后,可以登录了。迁移完成。~\(≧▽≦)/~啦啦啦
<ignore_js_op>
扩展
1. debian testing控制台出现提示"INIT: Id "co" respawning too fast: disabled for 5 minutes."
2. 这应该是内核的一个bug,有很多人提出来了,这个提示是由/etc/inittab中的这行
3. co:2345:respawn:/sbin/getty hvc0 9600 linux
4. 引起的。这行的意思是在运行级2345上运行一个终端类型为linux,波特率baud rate为9600的虚拟控制台hvc0
5. hvc0是一个hvc控制台实例,hvc是hypeyvisor console的缩写,其实际就是一个虚拟机监视控制台,因为现在linux内核集成了KVM,所以才有这么个控制台,一般我们都不会用到,所以将其关闭是安全的。
转换迁移XenServer上Windows虚拟机的时候没有这么麻烦,没有“助手虚拟机网络”这一步,而且也不用修复,直接能开机启动系统。
我在后来继续迁移Linux系统的虚拟机时候,遇到一个新问题,就是Linux版本是6或6以上版本的迁移后是黑屏状态,无法通过救援模式来修复。现在还没找到解决方法,或许是软件版本不支持的原因,各位如果有遇到或有解决方法请留言联系我。ThanksO(∩_∩)O~