CentOS Lnux 安装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。

安装kvm 配置:

第一、看看cpu是否支持kvm

[root@localhost ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo

flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx rdtscp lm constant_tsc nonstop_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 sse4_2 popcnt lahf_lm

[root@localhost ~]# grep -E -o 'vmx|svm' /proc/cpuinfo

vmx

第二步:安装kvm 所需要的软件包

1.yum install kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager

或者

yum groupinstall KVM

2.安装完确认一下是否安装成功

检查模块是否有加载

[root@localhost ~]# lsmod  | grep kvm

kvm_intel              85256  0

kvm                   224928  2 ksm,kvm_intel

也可以使用命令检查KVM是否成功安装

virsh -c qemu:///system list

将会显示如下结果:

[root@localhost ~]# virsh -c qemu:///system list

Id Name                 State

----------------------------------

如果在这里显示的是一个错误的信息,说明有些东西出现了问题。

3.安装桥接管理工具

yum install bridge-utils tunctl

4 安装gui管理工具yum install virt-manager virt-viewer.

5.修改网卡文件

#cd /etc/sysconfig/network-scripts/

#cp ifcfg-eth1 ifcfg-br0

#vim ifcfg-eth1 如下:

# Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet

DEVICE=eth1

#BOOTPROTO=none

HWADDR=84:2b:2b:6e:20:d5

ONBOOT=yes

#NETMASK=255.255.255.0

#IPADDR=192.168.1.187

#GATEWAY=192.168.1.1

TYPE=Ethernet

BRIDGE=br0

Vim ifcfg-br0 如下:

# Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet

DEVICE=br0

BOOTPROTO=static

HWADDR=84:2b:2b:6e:20:d5

ONBOOT=yes

NETMASK=255.255.255.0

IPADDR=192.168.1.187

TYPE=Bridge

保存网卡配置 重新启动网卡

#service network  restart

检查br0 是否成功

[root@localhost network-scripts]# ifconfig

br0       Link encap:Ethernet  HWaddr 84:2B:2B:6E:20:D5

inet addr:192.168.1.187  Bcast:192.168.1.255                                                      Mask:255.255.255.0

eth0      Link encap:Ethernet  HWaddr 84:2B:2B:6E:20:D4

inet addr:117.79.238.187  Bcast:117.79.238.191                                                    Mask:255.255.255.224

eth1      Link encap:Ethernet  HWaddr 84:2B:2B:6E:20:D5

inet6 addr: fe80::862b:2bff:fe6e:20d5/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

lo        Link encap:Local Loopback

inet addr:127.0.0.1  Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

vnet0     Link encap:Ethernet  HWaddr FE:52:00:3E:41:04

inet6 addr: fe80::fc52:ff:fe3e:4104/64 Scope:Link

中间碰到的问题:

1、[root@benjr ~]# virt-manager

在一开始会看到错误信息,跳过。系统预设值为xen的hypervisor,需要手动开启kvm的Hypervisor

Unable to open a connection to the Xen hypervisor/daemon

Verify that:

- A Xen host kernel was booted

- The Xen service has been started.

这个不用管 直接跳过 其中的原因不明