潇湘夜雨移动版

主页 > 系统 > 虚拟化 >

kvm部署qemu完全虚拟化

一、kvm安装
1. 检查你的系统是否支持虚拟化
grep -Ei 'vmx|svm' /proc/cpuinfo
如果有输出内容,则支持,其中intel cpu支持会有vmx,amd cpu支持会有svm

2. 通过yum安装虚拟化的软件包
[root@node1 ~]# yum -y install kvm python-virtinst libvirt  bridge-utils virt-manager qemu-kvm-tools  virt-viewer  virt-v2v
[root@node1 ~]#/etc/init.d/libvirtd restart
[root@node1 ~]#reboot
说明:
kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序
libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。
bridge-utils:设置网络网卡桥接。
virt-*:创建、克隆虚拟机命令,以及图形化管理工具virt-manager
qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。

3. 检查kvm模块是否加载
lsmod |grep kvm
正常应该是:
kvm_intel              55496  3
kvm                   337772  1 kvm_intel

如果没有,需要执行
modprobe kvm-intel
还没有就重启一下试试

二、安装虚拟机
1.创建一个桥接网卡
[root@node1 ~]# virsh iface-bridge eth0 br0
Created bridge br0 with attached device eth0
Bridge interface br0 started
[root@node1 ~]# ifconfig
br0       Link encap:Ethernet  HWaddr 00:0C:29:4A:DC:9F 
          inet addr:172.18.109.233  Bcast:172.18.109.255  Mask:255.255.255.192
          inet6 addr: fe80::20c:29ff:fe4a:dc9f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:55 errors:0 dropped:0 overruns:0 frame:0
          TX packets:27 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:9120 (8.9 KiB)  TX bytes:2274 (2.2 KiB)
2.创建虚拟机
virsh uri  #查看kvm当前支持的连接方式
创建guest的相关参数:
virt-install \
--connect qemu:///system \
--virt-type qemu \ #指定虚拟类型,一般用kvm,如果在虚拟机中测试,只能用qemu,因为虚拟机中的cpu不支持虚拟化
--name rhel6.8 \  #guest名称
--vcpus 1,maxvcpus=2 \ #cpu参数
--ram 512 \   #内存参数
--disk path=/VMs/images/rhel6.8.img,size=120,format=qcow2,bus=virtio,sparse \ #磁盘参数 120G
--network bridge=br0,model=virtio \ #网卡
--graphics vnc \ #vnc方式登录
--location http://172.18.109.239/iso/ \ #系统镜像源
--extra-args "ks=http://172.18.109.239/class.cfg  console=ttyS0  serial" \ #给内核传递的参数文件,可以省略
--os-variant rhel6 \ # 针对特定操作系统变体
--force  \ #强制执行忽略警告,由于我们这里是前行用qemu方式
--video=cirrus
示例:
virt-install --connect qemu:///system --virt-type kvm --name rhel6.8 --vcpus 1,maxvcpus=2 --ram 512 --disk path=/var/lib/libvirt/images/rhel6.image,size=8,sparse --network bridge=br0,model=virtio --graphics vnc --location http://172.18.109.239/iso/ --extra-args "ks=http://172.18.109.239/class.cfg  console=ttyS0  serial" --os-variant rhel6 --force --video=cirrus
运行上面的参数可能会出现qemu的错误
解决方法:ln -sv /usr/libexec/qemu-kvm /usr/sbin/qemu
 virsh list #查看创建的实例
virsh console rhel6.8 #连接示例
3.开始安装系统
后面的系统安装和普通装系统差不多,只是通过qemu方式的实例安装比较缓慢,实际生产环境中不用次方式。
安装完成后会创建一个guest实例配置文件:
[root@node1 ~]# ls /etc/libvirt/qemu
networks  rhel6.8.xml
[root@node1 ~]# virsh edit rhel6.8  #编辑域的配置文件


 [root@node1 ~]# virsh list
 Id    名称                         状态
----------------------------------------------------
 2     rhel6.8                        running (责任编辑:liangzh)