vSphere Standard(标准版)的授权我们需要 512/32=16
个授权,每个授权1293.5美元(又涨价了),1台服务器就需要约2万美元(16个授权),这个授权只是版权价格(LICENSE
PRICE),还不包括每年的 1 YEAR SUPPORT &
SUBSCRIPTION(419.9美元),这是在抢钱不~,今年初我们买了3个授权来评估和测试,但是按照这个授权方案只能用在2台服务器上(1台
24GB 内存,1台 64GB 内存),VMware 的产品实在不适合我们,我们打算把 VMware ESXi 上现有的一些虚拟机迁移到
OpenNebula/KVM 上。
最先迁移的是一台 Windows Server 2008 R2 虚拟机,这台虚拟机跑在 VMware ESXi 上专门用来运行
VMware vCenter Server(vCenter Server 只能安装在64位的 Windows 系统上),有些现成迁移工具比如
virt-v2v 等,不过个人还是喜欢自己动手,那些工具有时候不太好用。下面的步骤应该对其他的 Windows 版本也有效。
首先用 vShpere Client 登陆到 VMware ESXi 5.0 上打开防火墙设置,允许 ESXi 上的 ssh server
和 ssh client 可用,否则不能 ssh 登陆到 ESXi 也不能从 ESXi 上 scp 镜像到 KVM 服务器,设置具体在
Configuration >Software >Security Profile >Firewall >
Properties … >SSH Client 里:
然后 ssh 登陆 VMware ESXi 5.0 服务器(172.16.39.100)后,scp 所需要的镜像文件(后缀名为 .vmdk)到 KVM 服务器(172.16.39.101)上
$ ssh [email protected]
Password:
The time and date of this login have been sent to the system logs.
VMware offers supported, powerful system administration tools. Please
see www.vmware.com/go/sysadmintools for details.
The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.
~ # scp /vmfs/volumes/localstore/vcenter/vcenter-flat.vmdk [email protected]:/root
把 VMware 的 vmdk 格式转化成 KVM 的格式,因为从 v0.12 开始 qemu-kvm 已经支持 VMware 的硬盘格式 v6 和 v7,所以这一步其实是可以省略的,换句话说 kvm 可以直接启动 vmdk 格式的虚拟机。
$ ssh [email protected]
# qemu-img convert vcenter-flat.vmdk vcenter.img
最后用 virsh create vcenter.xml 的时候记得 vcenter.xml 文件里面关于硬盘的部分是如下设置,还有记得打开 vnc 设置(别忘了 Windows 是图形界面的):
# vi vcenter.xml
...
<disk type='file' device='disk'/>
<driver name='qemu' type='raw'/>
<source file='/root/vcenter.img'/>
<target dev='hda' bus='ide'/>
<address type='drive' controller='0' bus='0' unit='0'/>
</disk>
<controller type='ide' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
...
&ltgraphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0'>
&ltlisten type='address' address='0.0.0.0'/>
&lt/graphics>
...
# virsh create vcenter.xml
Troubleshooting
如果启动 Windows 后用 vnc 客户端连接 KVM 服务器,Windows 启动过程中可能出现蓝屏 Stop 0x0000007B 错误,这是因为硬盘控制器驱动变了:
1.将kvm下虚拟机关机;2.将kvm下img文件格式的虚拟机转换成vmdk格式,命令如下:
# qemu-img convert testvm1.img –O vmdk /tmp/testvm1.vmdk
3.在VMware vSphere环境里创建一个虚拟机和kvm环境虚拟机配置相同,不用创建磁盘使用刚刚转换的vmdk文件,开启虚拟机即可
一、kvm虚拟机静态迁移
1.静态迁移就是虚拟机在关机状态下,拷贝虚拟机虚拟磁盘文件与配置文件到目标虚拟主机中,实现的迁移。
(1)虚拟主机各自使用本地存储存放虚拟机磁盘文件
本文实现基于本地磁盘存储虚拟机磁盘文件的迁移方式,
(2)虚拟主机之间使用共享存储存放虚拟机磁盘文件
该方式只是在目标虚拟主机上重新定义虚拟机就可以了。
2.静态迁移过程如下
(1)确定虚拟机关闭状态
(2)准备迁移oeltest02虚拟机,查看该虚拟机配置的磁盘文件
(3)导入虚拟机配置文件
[root@node1~]# virsh dumpxml oeltest02 >/root/oeltest02.xml
(4)拷贝配置文件到目标虚拟主机上。
(5)查看虚拟机磁盘文件并拷贝到目标虚拟主机。
拷贝虚拟磁盘文件
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)