爱是王道 发表于 2015-10-10 09:50:41

虚拟化之KVM--RedHat最新虚拟化技术

虚拟化之KVM--RedHat最新虚拟化技术本节将详细介绍下KVM的安装和配置,KVM是红帽5.4发行版中推出的最新虚拟化技术,严格上说它是完全虚拟化的产品,VMware和vpc,virtualbox等也都是完全虚拟化的产品,而xen则是半虚拟化的产品,半虚拟化从性能上说要比完全虚拟化快很多,但xen有个缺点,它是重量级的虚拟机,修改了大量的内核源代码,它的guest机器必须理解xen化的硬件,也就是说xen上面只能运行红帽5以后的系统,后来红帽修改了发行版4中的一个版本,使其也能支持xen,而且Xen的完全虚拟化需要借助硬件CPU的VT技术,这个在intercpu上叫vmx,在AMD cpu中叫svm, xen的完全虚拟化可以说是个失败品,运行效率甚至赶不上VMware,而且操作界面相当不友好,但这不能否认xen在半虚拟化世界的霸主地位,kvm是kernel virtual module的简写,其实kvm借鉴了xen在半虚拟化上的很多成就,虽然kvm是完全虚拟化的产品,但在关键的硬盘和网卡上支持半虚拟化virtio,在很大程度上提高了性能,kvm是轻量级虚拟化的代表,也需要硬件vt技术的支持,另外从操作界面上看,xen和kvm都是用virt-manager工具,差别不是很大,但不可以在同一台机器上同时安装且运行Xen和KVM;另外kvm在只能运行在红帽企业版5.464位系统上,同时需要关闭selinux …
1:使用yum库来安装kvm所需的软件,如果在安装系统的时候输入了安装序列号,可以勾选kvm,虚拟化来安装这些软件
# yum -y install kvm kvm-* etherboot-roms-kvm.x86_64 virt-*

2:启动libvirtd服务,并保证下次自动启动
# service libvirtd start   
Starting libvirtd daemon:                                  [ 确定 ]
# chkconfig libvirtd on
3:桥接器的生成,这个在安装xen后,会自动创建桥接网络xenbr0,kvm在这点上似乎不够友好
# cd /etc/sysconfig/network-scripts/   
# cp ifcfg-eth0 ifcfg-br0
# cat ifcfg-eth0
# nVidia Corporation MCP77 Ethernet
DEVICE=eth0
BOOTPROTO=static
HWADDR=90:E6:BA:70:B2:28
IPADDR=192.168.50.24
NETMASK=255.255.255.0
ONBOOT=yes
BRIDGE=br0   //将eth0桥接到br0
# cat ifcfg-br0
# nVidia Corporation MCP77 Ethernet
DEVICE=br0
BOOTPROTO=static
HWADDR=90:E6:BA:70:B2:28
IPADDR=192.168.50.24
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Bridge //br0为桥接
4:重启网络,测试网络连通性
# service network restart
# ifconfig
br0       Link encap:Ethernet HWaddr 90:E6:BA:70:B2:28
inet addr:192.168.50.24 Bcast:192.168.50.255 Mask:255.255.255.0
eth0      Link encap:Ethernet HWaddr 90:E6:BA:70:B2:28
inet6 addr: fe80::92e6:baff:fe70:b228/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
virbr0    Link encap:Ethernet HWaddr 00:00:00:00:00:00
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
………………………………………………输出省略…………………………………………
# pingwww.g.cn-c 2
PINGwww.g.cn(203.208.39.99) 56(84) bytes of data.
64 bytes from bi-in-f99.1e100.net (203.208.39.99): icmp_seq=1 ttl=243 time=42.4 ms
64 bytes from bi-in-f99.1e100.net (203.208.39.99): icmp_seq=2 ttl=243 time=42.8 ms
5:划lvm,将虚拟机的硬盘存储设定为lvm,可以提高I/O提高性能, 装windows7需要15G左右的硬盘空间,可以使用lvextend命令扩展分区大小
# fdisk -l /dev/sda |grep LVM
/dev/sda14          31385       32601   9775521   8e Linux LVM
# pvcreate /dev/sda14
Physical volume "/dev/sda14" successfully created
# vgcreate vol0 /dev/sda14
Volume group "vol0" successfully created   
# lvcreate -L 9.32G -n win7 vol0
Rounding up size to full physical extent 9.32 GB
Logical volume "win7" created
6:开始安装,ID下面标注为qemu,表示kvm
http://hiphotos.baidu.com/naruto6006/pic/item/5b2b0cfb57c51a2ba8d311c0.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/59c0a3831c0c708a6c8119ce.jpg

http://hiphotos.baidu.com/naruto6006/pic/item/de853c3a203e75df15cecb85.jpg

如果下图中的完全虚拟化按钮是灰色的,那就说明你的硬件不支持VT技术,也有可能硬件支持,而BIOS却禁用了它,我的AMD cpu就是这种情况,通过命令:cat /proc/cpuinfo |grep -E 'vmx|svm' 可以查看硬件是否支持VT

http://hiphotos.baidu.com/naruto6006/pic/item/30aa75ec1bff37e1b31cb186.jpg

http://hiphotos.baidu.com/naruto6006/pic/item/dfe4d9cc720422640fb34586.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/790d8f7f460ed90d0cd7da80.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/f0526e0eaa766b1f6059f381.jpg
前面如果没有做桥接器,下图中就不会出现桥接br0
http://hiphotos.baidu.com/naruto6006/pic/item/2c422f39d4d347c7b211c782.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/6d5ad4f96bdded3ad9f9fd83.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/c46db4d5848e3b34a18bb78c.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/d03712f45d6c2510bc31098c.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/521044edf1748ae42f2e218d.jpg

安装完成后需要将默认的IDE硬盘和网卡换成virtio,并打上驱动程序,这样性能就可以提升很多了,驱动文件已上传至csdn,地址为:http://ylw6006.download.iyunv.com/详细的安装步骤这里就不赘述了…
下面附上我在winxp下的virtio截图,可以看到硬盘和网卡已经驱动正常了……
http://hiphotos.baidu.com/naruto6006/pic/item/45dd463016860c2ceac4af4d.jpg
4月9日,今天心血来潮,测试了下kvm的性能,下步准备在kvm上部署下ndb实验环境……
cpu: AMD Phenom(tm) 8750 Triple-Core Processor 3核
内存:4G
经测试,可以同时运行7台rhel5.4和一台WinXP,linux每台内存分配300M,WinXP为1G
http://hiphotos.baidu.com/naruto6006/pic/item/4c0097d2b0800603970a1692.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/17e49050d87ef3b88c543093.jpg
http://hiphotos.baidu.com/naruto6006/pic/item/e6c9ae22927ce673ad34de9c.jpg
页: [1]
查看完整版本: 虚拟化之KVM--RedHat最新虚拟化技术