我有XenServer非半虚拟化VM,我想在ESXi基础架构中使用它们来转换它们。 Essentials Plus包可以做到吗? 我必须使用什么工具?
无论是VMware独立转换器还是vCenter转换器 – 从未亲自完成Xen到VMWare的转换,但这些是您的两个最佳select。
对于任何types的Linux客户端,我个人的“最好的”体验就是将磁盘挂载到ESX(i)上:
dd
就地可以)并确保networking连接/configuration dd if=/dev/<src_device> | ssh <destination> 'dd of=/dev/<dst_device>'
dd if=/dev/<src_device> | ssh <destination> 'dd of=/dev/<dst_device>'
为每个连接的磁盘 VMWare转换器在Linux客户端的各种场合失败 – 我只能设法可靠地转换Windows客户端。
我从来没有做过这种操纵。 但是VmWare的KB提供了解释。
编辑:Vmware移动或删除我提到的KB。
这一个仍然活跃,并在Vmware社区文件。
在那里
本教程也可以帮助某人: https : //www.arknet.com.au/migrate-xenserver-vm-to-vmware/
传统方法无法正常工作时,将XenServer vm迁移到vmware的另一种方法。
除了wabbit的 回答 :在步骤5中,这些细节可能有助于任何无法启动虚拟机的人。
如果转换vm( wabbit提到的方式)无法启动,这是由于linux需要重buildinitrd(或initramfs), 这可能会有所帮助)。 所以这可以通过两种方式来完成:
1.如果可能,从“rescue”模式启动vm,然后重新创buildinitrd或initramfs。
[root@localhost]# mkinitrd -v -f /boot/initrd-3.10.594.img 3.10.594
(对于centos7和衍生品)
[root@localhost]# dracut -f
(对于centos7和派生类,对于特定的内核,在.img之后的思维空间)
[root@localhost]# dracut -f /boot/initramfs-2.6.32-358.el6.x86_64.img 2.6.32-358.el6.x86_64
这种转换方式对我有效。 在这样做之前,vm正在“达到基本系统”(对于centos7),然后进入dracut超时。
2.用liveCd启动虚拟机(此时你正在使用vmware,但是你不能启动你的虚拟机)然后,把你的分区挂载到/ mnt(在live / system的/ mnt中),然后按照这些步骤来chroot和重buildinitrd或者initramfs然后重新启动。 下面的scnerario使用LVM( /dev/cl/root
,和/boot
作为/dev/sda1
标准分区)来移动虚拟机。
[root@localhost ~]# vgscan
[root@localhost ~]# vgchange -ay cl
[root@localhost ~]# lvs
[root@localhost ~]# mount /dev/cl/root /mnt
[root@localhost ~]# mount /dev/sda1 /mnt/boot
[root@localhost ~]# mount --rbind /dev /mnt/dev
[root@localhost ~]# mount --make-rslave /mnt/dev
[root@localhost ~]# mount -t proc /proc /mnt/proc
[root@localhost ~]# mount --rbind /sys /mnt/sys
[root@localhost ~]# mount --make-rslave /mnt/sys
[root@localhost ~]# mount --rbind /tmp /mnt/tmp
[root@localhost ~]# chroot /mnt /bin/bash
[root@localhost ~]# dracut -f
为特定的内核版本。
[root@localhost ~]# dracut -f /boot/initramfs-2.6.32-358.el6.x86_64.img 2.6.32-358.el6.x86_64
注意:对于第4步,可能会使用此行对数据进行gzip压缩。 在vm上运行(被移动)
dd if=/dev/xvda | gzip -1 - | ssh root@ANY_LINUX_IP dd of=/root/image.gz