KVM 虚拟化Word文档格式.docx

上传人:b****5 文档编号:21348177 上传时间:2023-01-29 格式:DOCX 页数:11 大小:22.46KB
下载 相关 举报
KVM 虚拟化Word文档格式.docx_第1页
第1页 / 共11页
KVM 虚拟化Word文档格式.docx_第2页
第2页 / 共11页
KVM 虚拟化Word文档格式.docx_第3页
第3页 / 共11页
KVM 虚拟化Word文档格式.docx_第4页
第4页 / 共11页
KVM 虚拟化Word文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

KVM 虚拟化Word文档格式.docx

《KVM 虚拟化Word文档格式.docx》由会员分享,可在线阅读,更多相关《KVM 虚拟化Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

KVM 虚拟化Word文档格式.docx

UML很久以前就将Linux内核转换成一个系统管理程序了。

使用内核作为一个系统管理程序,您就可以启动其他操作系统,例如另一个Linux内核或Windows系统。

安装KVM之后,您可以在用户空间启动客户操作系统。

每个客户操作系统都是主机操作系统(或系统管理程序)的一个单个进程。

图2提供了一个使用KVM进行虚拟化的视图。

底部是能够进行虚拟化的硬件平台(目前指的是IntelVT或AMD-SVM处理器)。

在裸硬件上运行的是系统管理程序(带有KVM模块的Linux内核)。

这个系统管理程序与可以运行其他应用程序的普通Linux内核类似。

但是这个内核也可以支持通过kvm工具加载的客户操作系统。

最后,客户操作系统可以支持主机操作系统所支持的相同应用程序。

图1.使用KVM的虚拟化组件【见附件】

记住KVM只是虚拟化解决方案的一部分。

处理器直接提供了虚拟化支持(可以为多个操作系统虚拟化处理器)。

内存可以通过kvm进行虚拟化(这在下一节中将会讨论)。

最后,I/O通过一个稍加修改的QEMU进程(执行每个客户操作系统进程的一个拷贝)进行虚拟化。

KVM向Linux中引入了一种除现有的内核和用户模式之外的新进程模式。

这种新模式就称为客户模式,顾名思义,它用来执行客户操作系统代码(至少是一部分代码)。

回想一下内核模式表示代码执行的特权模式,而用户模式则表示非特权模式(用于那些运行在内核之外的程序)。

根据运行内容和目的,执行模式可以针对不同的目的进行定义。

客户模式的存在就是为了执行客户操作系统代码,但是只针对那些非I/O的代码。

在客户模式中有两种标准模式,因此客户操作系统在客户模式中运行可以支持标准的内核,而在用户模式下运行则支持自己的内核和用户空间应用程序。

客户操作系统的用户模式可以用来执行I/O操作,这是单独进行管理的。

在客户操作系统上执行I/O的功能是由QEMU提供的。

QEMU是一个平台虚拟化解决方案,允许对一个完整的PC环境进行虚拟化(包括磁盘、图形适配器和网络设备)。

客户操作系统所生成的任何I/O请求都会被中途截获,并重新发送到QEMU进程模拟的用户模式中。

KVM通过/dev/kvm设备提供了内存虚拟化。

每个客户操作系统都有自己的地址空间,并且是在实例化客户操作系统时映射的。

映射给客户操作系统的物理内存实际上是映射给这个进程的虚拟内存。

为了支持客户物理地址到主机物理地址的转换,系统维护了一组影子页表(shadowpagetable)。

处理器也可以通过在访问未经映射的内存位置时使用系统管理程序(主机内核)来支持内存转换进程。

以上信息摘自:

5宿主机环境

5.1宿主机硬件配置

硬件名称规格型号

CPUIntel(R)Core(TM)2QuadCPUQ9300@2.50GHz

内存KingstonDDR310664G

主板华硕P5G41T-MLX3

硬盘西部数据1T

网卡AtherosAR8151PCI-EGigabitEthernetController(单)

5.2宿主机软件环境

操作系统:

CentOSLinuxrelease6.0(Final)x86_64

内核版本:

Kernel-3.0.0

5.3CPU支持KVM

KVM需要有CPU的支持(IntelVT或AMDSVM)

[root@CentOS6~]#egrep'

(vmx|svm)'

/proc/cpuinfo

flags:

fpuvmedepsetscmsrpaemcecx8apicsepmtrrpgemcacmovpatpse36clflushdtsacpimmxfxsrssesse2sshttmpbesyscallnxlmconstant_tscarch_perfmonpebsbtsrep_goodnoplaperfmperfpnidtes64monitords_cplvmxsmxesttm2ssse3cx16xtprpdcmsse4_1lahf_lmdtstpr_shadowvnmiflexpriority

6安装KVM

6.1yum安装

[root@CentOS6~]#yum-ygroupinstallVirtualization

[root@CentOS6~]#yum-ygroupinstall“VirtualizationClient”

[root@CentOS6~]#yum-ygroupinstall“VirtualizationPlatform”

[root@CentOS6~]#yum-ygroupinstall“VirtualizationTools”

6.2安装软件列表

Group:

Virtualization

Description:

Providesanenvironmentforhostingvirtualizedguests.

MandatoryPackages:

qemu-kvm

OptionalPackages:

qemu-kvm-tools

vios-proxy

VirtualizationClient

Clientsforinstallingandmanagingvirtualizationinstances.

python-virtinst

virt-manager

virt-viewer

DefaultPackages:

virt-top

VirtualizationPlatform

Providesaninterfaceforaccessingandcontrollingvirtualizedguestsandcontainers.

libvirt

libvirt-client

virt-who

fence-virtd-libvirt

fence-virtd-multicast

fence-virtd-serial

libvirt-cim

libvirt-java

libvirt-qmf

libvirt-snmp

perl-Sys-Virt

VirtualizationTools

Toolsforofflinevirtualimagemanagement.

libguestfs

libguestfs-java

libguestfs-mount

libguestfs-tools

virt-v2v

6.3检查KVM

安装完成后,重启机器,确认一下是否安装成功、模块是否正常加载:

[root@CentOS6~]#lsmod|grepkvm

kvm_intel543670

kvm3652441kvm_intel

[root@CentOS6~]#

[root@CentOS6~]#ll/dev/kvm

crw-rw-rw-1rootkvm10,232Mar2313:

34/dev/kvm

7安装虚拟机

这里以WAF-500AG(瑞传5532,6电口)为例。

7.1创建桥

/etc/rc.local中添加:

#UsedforWAF’sadmin_portandIN_port;

/usr/sbin/brctladdbrbr0

/usr/sbin/brctladdifbr0eth0

/sbin/ifconfigbr0192.168.25.60

/sbin/iprouteadddefaultvia192.168.25.1devbr0

#UsedforWAF’sProtect1andwebserver;

/usr/sbin/brctladdbrbr1

/sbin/ifconfigbr10.0.0.0

#UsedforWAF’sProtect2andwebserver;

/usr/sbin/brctladdbrbr2

/sbin/ifconfigbr20.0.0.0

7.2安装Windows2003

WindowsServer2003SP2x86_64

安装脚本:

#!

/bin/bash

/usr/bin/virt-install\

--connectqemu:

///system\

--networkbridge=br1,model=e1000\

--nameWindows2003_ASP\

--ram=1024\

--vcpus=4\

--diskpath=/home/VM/Windows2003_ASP.img,bus=ide,size=5\

--cdrom/home/iso/cn_win_srv_2003_r2_enterprise_x64_with_sp2_vl_cd1_X13-47314.iso\

--vnc--vncport=9409\

--vnclisten=192.168.25.60\

--os-variant=win2k3

7.3安装某专业设备系统

--networkmac=01:

01:

01,bridge=br2,model=e1000\

--networkmac=02:

02:

02,bridge=br0,model=e1000\

--networkmac=03:

03:

03,bridge=br1,model=e1000\

--networkmac=04:

04:

04,bridge=br0,model=e1000\

--networkmac=05:

05:

05,bridge=br0,model=e1000\

--networkmac=06:

06:

06,bridge=br0,model=e1000\

--nameAAF_OSbak\

--ram=2048\

--diskpath=/home/VM/AAF_OSbak.img,bus=ide,size=20\

--cdrom/home/iso/CentOS-5.6-x86_64-bin-DVD-1of2.iso\

--vnc--vncport=9401\

--os-variant=rhel5.4

7.4virt-install用法说明

7.4.1--connect=

xen

IfrunningonahostwiththeXenkernel(checksagainst/proc/xen)

qemu:

///system

Ifrunningonabaremetalkernelasroot(neededforKVMinstalls)

///session

Ifrunningonabaremetalkernelasnon-root

7.4.2--name=

虚拟机名称

7.4.3--ram=

虚拟机内存大小

7.4.4--vcpus=

虚拟机使用的虚拟CPU数

7.4.5--network

虚拟机网络接口类型

附带两个事例:

01,network=default,model=e1000\

7.4.6--disk

虚拟机镜像文件

7.4.7--cdrom

系统镜像文件

7.4.8--os-variant=

虚拟机操作系统

7.4.9VNC相关

--vnclisten=192.168.25.60

不做太多解释,监听主机、监听端口。

7.4.10其他

详细的请”manvirt-install”

8虚拟机操作

8.1查看虚拟机列表

virshlist--all

8.2启动虚拟机

virshstartAAF_OSbak

附录1.VNC加密

加密前:

<

graphicstype='

vnc'

port='

9409'

autoport='

no'

listen='

192.168.25.60'

>

listentype='

address'

address='

/>

/graphics>

加密后:

passwd='

aaftest.123'

附录2.镜像克隆

virt-clone--connect=qemu:

///system-oAAF_OSbak-nWAF_3_0-f/data/VM/AAF_1_0.img

///system-oAAF_OSbak-nWAF_3_1-f/data/VM/AAF_1_1.img

附录3.删除虚拟机

删除虚拟机:

virshundefineAAF_1

然后删除镜像文件:

rm-f/data/VM/AAF_1.img

附录4.虚拟机配置文件

虚拟机配置文件:

/etc/libvirt/qemu/

network配置文件:

/etc/libvirt/qemu/networks/

network自启动文件:

/etc/libvirt/qemu/networks/autostart/

附录5.Nomodulevirtio_pcifound问题解决

没有initrd-2.6.27.img

执行:

mkinitrd--builtin=ahci/boot/initrd-2.6.27.img2.6.37

mkinitrd/boot/initrd-2.6.27.img2.6.27

均报错:

Nomodulevirtio_pcifoundforkernel2.6.27,aborting.

RedHat官方提供的解决方案(mkinitrd--withvirtio_pci--withvirtio_blk-f/boot/initrd-2.6.27.img2.6.27)也不行

解决办法:

1.安装脚本中,指定bus=ide;

--diskpath=/home/VM/AAF_OSbak.img,bus=ide,size=20

2.编辑虚拟机配置文件

修改前:

memballoonmodel='

virtio'

修改后:

none'

附录6.创建network

1.创建配置文件

cp/etc/libvirt/qemu/networks/default.xml/etc/libvirt/qemu/networks/virbr1.xml

2.编辑配置文件

network>

name>

virbr1<

/name>

<

---需要修改;

uuid>

17e0185e-1111-4d17-2222-a8e2c27cffe6<

/uuid>

forwardmode='

nat'

bridgename='

virbr1'

stp='

on'

delay='

0'

/>

macaddress='

52:

54:

00:

0A:

9F:

FF'

ipaddress='

192.168.123.1'

netmask='

255.255.255.0'

dhcp>

rangestart='

192.168.123.2'

end='

192.168.123.254'

/dhcp>

/ip>

/network>

3.定义network

virshnet-define/etc/libvirt/qemu/networks/virbr1.xml

4.查看network列表

[root@CentOS6~]#virshnet-list--all

NameStateAutostart

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

defaultactiveyes

virbr1inactiveno

5.设置自定义network自启动

[root@CentOS6~]#virshnet-autostartvirbr1

Networkvirbr1markedasautostarted

6.启动自定义network

[root@CentOS6~]#virsh

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1