使用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>

xenserver虚拟基础架构有哪些 xenserver和vmware_xenserver虚拟基础架构有哪些


<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>

xenserver虚拟基础架构有哪些 xenserver和vmware_x系统_02


8、输入新的虚拟机名,名称可以和原来的一样。


<ignore_js_op>


9、有多台ESXi服务器选择将虚拟机放在哪台ESXi服务器上,选择存储位置,如图。

<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_IP_03




10、在这里可以对目标虚拟机进行一些修改编辑。如:硬盘、CPU、内存、网络等。


<ignore_js_op>



11、这里可以编辑CPU和内存。

<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_IP_04




12、这里可以编辑网络。

<ignore_js_op>




13、其它编辑选项,根据自个的需求选择吧。

<ignore_js_op>



14、这一步很重要,“助手虚拟机网络”只有在转换Linux系统下才有这一不,Windows下就没有。这里要临时使用一个Ip,转换迁移完成后,这个地址会自动消失,注意,如果没有这个助手虚拟机网络IP是不能进行迁移的。


<ignore_js_op>


15、确认信息。没问题就点击“完成”。

<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_IP_05



16、然后就会看到转换迁移的进度。

<ignore_js_op>



17、转换迁移的信息能在下面看到,在状态处能看到已完成迁移。

<ignore_js_op>



18、到ESXi  vCenter上可以看到成功迁移过来的虚拟机。

<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_06



19、但是Linux系统的虚拟机迁移过来后会有点小问题,开机启动后不能进入到系统里,能看到报错信息。如图,原因:经过xenserver修改过的 xen内核不能在vmkernel上运行!所以要更改虚拟机内核。

<ignore_js_op>



20、设置虚拟机强行进入BIOS,让其从光盘启动。添加 iso 镜像文件,是该Linux系统的安装光盘。(我这里的截图可能前后系统不一致,但过程和原理都是一样的,所以不要执着于图片中的错误哈,O(∩_∩)O~)

<ignore_js_op>


<ignore_js_op>





<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_x系统_07


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_x系统_08




21、设置光盘启动,保存退出。


<ignore_js_op>



22、进入Linux系统光盘中,输入 linux rescue 进入救援模式。


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_IP_09



<ignore_js_op>


23、选择语言,默认。


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_10


24、默认


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_11


25、不用设置网络。


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_12


26、继续。


<ignore_js_op>


27、进入救援模式。


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_13


28、按照提示 输入 chroot /mnt/sysimage/,注意前后的差异是一个没有有boot目录,一个有。


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_xenserver虚拟基础架构有哪些_14


29、挂在 cdrom ,注意光盘所在的路径,系统版本不一样有可能路径也回不一样,强制更新非 xen 内核。


<ignore_js_op>


30、卸载 xen server 工具


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_x系统_15


31、编辑 /boot/grub/grub.conf 配置文件,default=0 非xen 内核


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_16


32、编辑 /etc/inittab 文件,注意下面这几行前后的差异,注释掉“co……”,去掉“#1  #2  #3……”前面的#号。

<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_x系统_17



<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_xenserver虚拟基础架构有哪些_18



如果未注释 #co 这行,启动将提示如下错误,无法进入系统!


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_IP_19


33、退出并重启。


34、grub 界面。


<ignore_js_op>


35、成功启动后,可以登录了。迁移完成。~\(≧▽≦)/~啦啦啦


<ignore_js_op>

xenserver虚拟基础架构有哪些 xenserver和vmware_服务器_20



扩展

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~