日期:2014-05-16  浏览次数:20741 次

<转>[Linux 虚拟化] Linux 中使用 KVM
听讲XEN很快就要从LINUX内核中去掉,redhat和Ubuntu也大力的在推广KVM,所以在Ubuntu下整了一下KVM,相当容易使用,基本比Vmware还要容易,但性能好上很多倍,因为他是半虚拟的,很大程序上可以直接使用真实的硬件.
RedHat 红帽CTO Brian Steven在一次记者招待会说:“我们致力于Xen,RHEL 5有10年的生命周期,因此会有一个较大的交叉过渡.我们将在Red Hat 6中全面使用KVM,但KVM目前已经准备就绪,完全可以正式投入到数据中心和云中,不用再等待了!”

KVM要使用2.6.20以上的内核才行.Ubuntu到是不用担心,它基本一直使用的是最新的内核.

需要关心一点就是,你的硬件,CPU是不是支持半虚拟(VT/AMD-V),使用下面的命令可以查看是否支持

1
grep -E '(vmx|svm)'   /proc/cpuinfo

  在ubuntu中安装KVM

我原来以为KVM很难装,没想到现在容易成这样了.太方便了

1
sudo apt-get install kvm libvirt-bin ubuntu-vm-builder  bridge-utils kvm-pxe uml-utilities
安装KVM在ubuntu中的GUI管理软件,象我,拿ubuntu当桌面,就不使用命令…呵呵

1
sudo apt-get install virt-manager virt-viewer
需要设置一下网桥

1
sudo /etc/init.d/networking stop
我们来修改一下配置

1
sudo vim /etc/network/interfaces
静态IP和使用DHCP是不一样的,DHCP修改成下面这样

1
2
3
4
5
6
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_stp off
bridge_fd 5
bridge_maxwait 5

static:

01
02
03
04
05
06
07
08
09
10
11
auto br0
iface br0 inet static
address 192.168.0.xxx
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
bridge_ports eth0
bridge_stp off
bridge_fd 5
bridge_maxwait 5

完事后
进入ubuntu的“应用程序”-> “系统工具” -> “虚拟系统管理”就可以全GUI来玩kvm啦



RedHat Centos 安装 KVM
在 Centos 中安装 kvm 也一样很容易,

1. 安装 KVM 和 virtinst (一个创建 virtual machines 的工具 )

1
yum install kvm kmod-kvm qemu libvirt python-virtinst


2. 装完后记的重起,重起后检查模块是否有加载

1
2
3
$ lsmod | grep kvm
kvm_amd                50452  0
kvm                   109264  1 kvm_amd
也可以使用 virsh 来测试

1
virsh -c qemu:///system list


3. 安装桥接管理的工具

1
yum install bridge-utils


4. 安装 GUI 的管理软件

1
yum install virt-manager


KVM 的高级管理
KVM 现在相当成熟,在三个比较常用管理程序(我所知道的),大家平时玩玩的话,就用 GUI 来管理就好了,GUI 都会我就不详细写了:
virt-manager: 这个我最常用,是 GUI 的,需要 x windows 的支持.这个是 RedHat 开发,大家想了解可以到  http://virt- manager.et.redhat.com/ 上看看
virt-install:python 写的文字介面的管理 kvm 的程序,这个也是Red Hat 开发的哦.
ubuntu-vm-builder:这个是 Canonical (Ubuntu)开发的文字的管理程序.



virt-install 的基本使用
(1. 安装 virt-install 和 图形化的连接软件 virt-viewer



1
sudo apt-get install python-virtinst virt-viewer

详细使用可以 man virt-install



(2. virt-install 安装虚拟系统

例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ virt-install \
--connect qemu:///system \
--name= 虚拟机器的名字 \
--ram=设置内存的大小 [MB] \
--os-type=操作系统的类型 [linux ] \
--os-variant=操作系统的版本 [centos 5.4] \
--hvm [全虚拟化( hvm )与半虚拟化( paravirt  )选择其一] \
--paravirt  [全虚拟化( hvm )与半虚拟化( paravirt  )选择其一] \
--accelerate  [KVM 加速器] \
--cdrom=系统安装的CD路径 [*.iso] \
--file=虚拟硬盘的路径 [*.qcow2] \
--file-size=虚拟硬盘的大小 [GB] \
--bridge=br0 \
--vnc \
--noautoconsole  \
--debug
注意 Windows 只能用有全虚拟化( hvm )与半虚拟化( paravirt  )中选择 hvm.hvm 的意思是指硬件辅助的虚拟化,就是需要所谓的 VT 支持的.

建出来的虚拟机会在 /etc/libvirt/qemu/虚拟机器名称.xml 有个配置文件

(3. 使用 virt-install  启动虚拟的机器

进入 virsh 中,所有 virsh 的操作都要先进入这个

1
virsh
管理启动

1
2
3
virsh# start 虚拟机器名字
virsh# list  --all
virsh# quit


(4. 安装管理查看 vi