--------------------------
一、前言
二、环境
三、安装与配置
四、创建kvm虚拟机
一、前言
KVM,即Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,
新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己的进程调度器,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列也是基于软件模拟的Para-Virtualization。
二、环境
系统:rhel6.5 64位
软件包组:
virtualization 提供虚拟机的环境,主要包含qemu-kvm
virtualization-client 管理和安装虚拟机实例的客户端,主要有python-virtinst,virt-manager,virt-viewer
virtualization-platform 提供访问和控制虚拟客户端的接口,主要有libvirt,libvirt-client
virtualization-tools 管理离线虚拟机镜像的工具,主要有libguestfs
根据需求选择软件包,一般都安装前三个,也可以只安装个别主要的包。
为了减少不必要的麻烦,请关闭防火墙和SELinux
# cat /proc/cpuinfo |grep flags 需要全虚拟化支持为vmx(Inter)或svm(AMD)
如果确定物理机支持cpu虚拟化技术,而使用上述命令查找不到相应指令,请参考以下解决办法:
http://www.linuxidc.com/Linux/2014-10/107895.htm
三、安装与配置
# yum groupinstall "Virtualization" "Virtualization Client""Virtualization Platform"
# yum install qemu-kvm virt-manager libvirt //也可只安装个别主要的包
# lsmod |grep kvm //kvm模块一定要加载
kvm_intel 53484 0
kvm 316506 1 kvm_intel
# service libvirtd start //启动libvirt服务
Starting libvirtd daemon: [ OK ]
--------------------------------------分割线 --------------------------------------
# brctl show
bridge name bridge id STP enabled interfaces
# cp /etc/sysconfig/network-scripts/ifcfg-etho0 /etc/sysconfig/network-scripts/ifcfg-br0
# cat ifcfg-br0
DEVICE="br0" //设备名字,必须和BRIDGE=“”里的相同,还要和这个网桥配置文件的名称ifcg-“”这而的相同
TYPE="Bridge" //指定类型为网桥
//删掉MAC UID之类的东西,ip地址跟eth0一样# ifup br0
然后修改相应网卡的配置文件,我的是eth1:
# Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
DEVICE=eth1
#BOOTPROTO=none
#BROADCAST=10.1.255.255
HWADDR=D8:5D:4C:74:EE:E8
#IPADDR=10.1.29.3
#NETMASK=255.255.0.0
#NETWORK=10.1.0.0
ONBOOT=yes
#TYPE=Ethernet
#USERCTL=no
#IPV6INIT=no
#PEERDNS=yes
BRIDGE=br0原来网卡的配置只保留device名称,硬件地址,onboot选项,以及新添加的BRIDGE=br0
注意,br0里边的ip、netmask、gateway应当与 eth0 中的完全相同,
这是因为马上 br0 将会替代 eth0 作为对外的网络接口,
而eth0仅仅会被当做桥接,失去对外网络接口的作用。[root@zabbixsrv network-scripts]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default gateway 0.0.0.0 UG 425 0 0 br0
10.10.0.0 0.0.0.0 255.255.252.0 U 425 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0[root@zabbixsrv network-scripts]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.fc4dd4f1dd45 no eno1
virbr0 8000.525400312ae0 yes virbr0-nic# service network restart
# systemctl restart network-scripts
# service libvirtd start
# systemctl start libvirtd
# systemctl enable libvirtd
--------------------------------------分割线 --------------------------------------
四、创建kvm虚拟机(图形界面)
1.在kvm宿主机创建虚拟机存储位置
# mkdir -p /opt/kvmdata
2.可以利用vnc远程连接kvm宿主机,进行管理。Application→System Tools→Box