1.系统环境:

系统:CentOS6.4x86_64

内存:24G

磁盘:3T

2.服务器装机前准备

a.磁盘阵列模式:raid5

b.CPU模式:

KVM需要有 CPU 的支持(Intel vmx AMD svm),在安装 KVM 之前检查一下CPU 是否提供了虚拟技术的支持

#egrep'flags.*(vmx|svm)' /proc/cpuinfo


注意:主板BIOS中开启VirtualTechnolege(VT技术)

3.安装KVM

3.1安装kvm及其需要的软件包

yum install kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-managerlibvirt libvirt-python python-virtinstyum groupinstall KVM

3.2检查kvm模块是否安装,使用以下命令显示两个模块则表示安装完成

kvm_intel525700

kvm3147391 kvm_intel

3.3启动virt-manager管理界面

3.3.1 客户端

VNC到服务器端,因为需要用服务器的图形界面

这里需要在服务器上安装VNC服务

yum install vnc vnc-server

3.3.2 服务器端

启动libvirtd服务,并保证下次自动启动

service libvirtd start

chkconfig libvirtd on

3.3.3远程创建和管理KVM虚拟机

a. 打开Application=> System Tools => Virtual Machine Manager就可以装虚拟机了,功能跟VMware类似

b.Details”中可查看或修改Guest OS的配置信息

4.KVM系统迁移

迁移 VMware 虚拟机到 KVM(使用virt-v2v 工具)

4.1迁移前的环境设置

查看是否已支持 KVM 虚拟机的软件包

rpm -qa qemu-kvm

rpm -qa libvirt

rpm -qa virt-manager

rpm -qa virt-v2v

4.2.安装 Windows虚拟机迁移的支持包

yum install libguestfs-winsupport

yum install virt-v2v

4.3.创建 KVM 本地存储域

使用virt-manager 来创建新的存储池

4.4.使用virt-manager 创建网桥

在文件/etc/virt-v2v.conf中配置多网络

如果要转换的虚拟机有多个虚拟网卡,则转换前需要编辑/etc/virt-v2v.conf文件,确定网络配置。可以用-f参数指定virt-v2v.conf文件,如果要转换的虚拟机只有1个虚拟网卡,可以不要去指定配置文件,只需要增加--network or --bridge 参数即可(这里基于公司的环境,就不需要配置这一步了)

4.5.转换VMwareESX/ESXi虚拟机

4.5.1.迁移前准备

卸载掉源虚拟机的vmware tools,在运行v2v前,要将虚拟机关机。

4.5.2 配置ESX / ESX(i) 服务器认证

machine esx.exanple.com login root password password

注意:.netric($HOME/.netrc)文件必须配置600(chmod600 /root/.netrc)权限才能被virt-v2v正确读到,如果未配置权限,则会提示鉴权错误。

在非生产环境中ESX /ESX(i)主机可能会有无效的认证,比如自签名的认证,在这种情况下,认证检可以通过增加

'?no_verify=1'至链接url来禁用。

如:... -icesx://esx.example.com/?no_verify=1 ...

4.5.3 使用Virt-v2v工具(这里前面我们已经安装过)

迁移命令:

virt-v2v -ic esx://esx.example.com/?no_verify=1 -os pool --bridge brnamevm-name

esx.example.com—是 ESX 服务器主机名或IP地址;pool—本地主机存储池,用来保存镜像;brname—本地主机网桥名字,用来连接迁移后的虚拟机网络;vm-name—虚拟机的名字)

4.6 迁移完成

迁移成功后,虚拟机出现在virt-manager管理的虚拟机列表中,通过virt-manager工具启动虚拟机。

5.结束语

文档经过本人测试,确实可行,如果有什么好的方案,后续我会对本方案就行修改,以便适合我们产线的实际需要,如果有什么疑问,可以随时找我讨论。