虚拟化技术之基于硬件虚拟化的技术KVM

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟化技术之基于硬件虚拟化的技术KVM相关的知识,希望对你有一定的参考价值。

前言
上一篇说到了虚拟化的原理,有一个是基于CPU硬件的虚拟化。原理是厂商更改指令集模式的特权级别,使得VMM(虚拟机监控器)直接运行在硬件上面。关于CPU指令特权级别可以参考https://blog.csdn.net/autumn20080101/article/details/8046121
技术分享图片
这篇就是关于基于硬件完全虚拟化的技术:KVM虚拟化
KVM虚拟化就是kernel-based virtual 就是内核虚拟化,kvm是一个虚拟化模块,自Linux内核2.6.20后整入到内核中,使得Linux成为VMM。KVM只是内核中的一个模块,真正完整的KVM虚拟化还得有连个模块
1:kvm.ko /dev/kvm(管理,删除,添加,停止虚拟机的功能)
2:QEMU-KVM(I/O设备的模拟)
这三个联合起来才是完整的KVM虚拟化

技术分享图片
安装KVM
首先机器要开启vt虚拟化,而且内核版本要高于 2.6.20
1.查看内核版本,须大于2.6.20

uname -r

技术分享图片
2.查看CPU是否开启虚拟化,用以下命令,有输出信息就代表开启CPU虚拟化,没有则去Bios里开启。

cat /porc/cpuinfo | egrep ‘(vmx|svm)‘

技术分享图片
3.更改eth0网卡设备,再创建一个名为br0的桥接网卡,并且桥接到eth0,然后重启网络服务

vim /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=none
DEVICE=eth0
NM_CONTROLLED=no
ONBOOT=yes
BRIDGE=br0

touch /etc/sysconfig/network-scritps/ifcfg-br0

BOOTPROTO=static
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
IPADDR=192.168.123.129
NETMASK=255.255.255.0
GATEWAY=192.168.123.254
DNS1=114.114.114.114
DNS2=8.8.8.8

service network restart

技术分享图片

3.安装KVM相关软件
qemu-kvm I/O设备的链接
qemu-img 磁盘设备的管理
virt-manager 界面管理的软件
virt-viewer vnc界面链接软件
virt-install 安装虚拟机的软件

yum install -y qemu-kvm qemu-img virt-manager virt-viewer virt-install libvirt* libguest*

4.创建虚拟机硬盘

qemu-img create -f qcow2 /temp/kvm1/centos6.img 10G

技术分享图片
5.创建虚拟机,并引导操作系统

virt-install -n centos -r 1024 --disk /temp/kvm1/centos6.img,format=qcow2,size=10 --network bridge=br0 --os-type=windows--os-variant=win2k --cdrom /root/win7.iso --vnc --vncport=5910 --vnclisten=0.0.0.0

具体参数信息请使用 virsh-install --help查看
6.如果在桌面模式下键入会直接打开并连接到vnc
技术分享图片

7.之后也可以使用vnc viewer链接
技术分享图片
技术分享图片
然后我们熟悉的win7安装选项就出来了。是不是很激动,因为笔者的电脑经不起烧,无法完成安装,所以就演示这么多,下面的大家肯定都懂。就不操作了。

8.使用virsh命令进入kvm操作模式
技术分享图片

9.查看刚刚安装的虚拟机

virsh list --all

技术分享图片

然后就完成虚拟机安装了,KVM绝对不是这么多就可以说清楚的,笔者暂时也就会这么多,希望大家继续努力学习,多分享学习资料和经验。

以上是关于虚拟化技术之基于硬件虚拟化的技术KVM的主要内容,如果未能解决你的问题,请参考以下文章

kvm虚拟化技术实现原理

KVM原理简介

KVM虚拟化之安装KVM虚拟机

KVM

KVM虚拟化使用详解--技术流ken

KVM 虚拟化 初体验