KVM 介绍及安装

KVM 安装

KVM

KVM 简介

KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。

使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。

虚拟化是云计算的基础。简单的说,虚拟化使得在一台物理的服务器上可以跑多台虚拟机,虚拟机共享物理机的 CPU、内存、IO 硬件资源,但逻辑上虚拟机之间是相互隔离的。
物理机我们一般称为宿主机(Host),宿主机上面的虚拟机称为客户机(Guest)

KVM工作原理:用户模式的QEMU通过ioctl进入内核模式,kvm模块为虚拟机创建虚拟内存,虚拟CPU后执行VMLAUCH指令进入客户模式。加载Guest OS并执行。如果Guest OS发生外部中断或者影子页表却也之类的情况,会暂停Guest OS的执行,退出客户模式进行异常处理,执行客户代码。如果发生I/O事件或者信号队列有信号到达,就会进入用户模式处理。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KV4PAzfj-1671523673426)(https://img2018.cnblogs.com/blog/1630703/201910/1630703-20191007235241385-873683991.png “kvm原理”)]

KVM 由处于内核态的 KVM 模块和用户态的 QEMU 两部分构成。内核模块实现了 CPU 和内存虚拟化等决定关键性能和核心安全的功能并向用户空间提供了使用这些功能的接口,QEMU 利用 KVM 模块提供的接口来实现设备模拟、 IO 虚拟化和网络虚拟化等。单个虚拟机是宿主机上的一个普通 QEMU 进程,虚拟机中的 CPU 核(vCPU)是 QEMU 的一个线程,VM 的物理地址空间是 QEMU 的虚拟地址空间

因此在虚拟机运行时,有三种模式:

客户模式:执行非I/O的客户代码,虚拟机运行在这个模式下。

用户模式:代表用户执行I/O指令,QEMU运行在这个模式下。

内核模式:实现客户模式的切换,处理因为I/O或者其他指令引起的从客户模式退出(VM_EXIT)。kvm模块运行在这个模式下。

kvm模型中,每一个Guest OS都是作为一个标准的Linux进程,都可以使用Linux进程管理命令管理。

kvm 环境配置与安装

  1. 首先检查主机是否支持虚拟化:
egrep -o 'vmx|svm' /proc/cpuinfo
  1. 为了方便起见,关闭防火墙和SElinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -ri 's/^(SELINUX=).*/\1disabled/g' /etc/selinux/config
  1. 安装必要工具:
yum -y install epel-release vim wget net-tools unzip zip gcc gcc-c++ bridge-utils
  1. 安装 kvm:
yum -y install kvm qemu-kvm qemu-kvm-tools qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer bridge-utils libguestfs-tools python-virtinst
  1. 设置libvirtd为开机自启项:
systemctl enable libvirtd
# 重启主机
reboot

重启之后检查是否加载kvm模块:

[root@kvm ~]\# lsmod | grep kvm
kvm_intel             188688  0 
kvm                   636965  1 kvm_intel
irqbypass              13503  1 kvm
  1. 配置 kvm 服务器网络
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-br0

# 编辑 ifcfg-ens33 文件,在原先基础上添加以下内容
NM_CONTROLLED=no
BRIDGE=br0

# 编辑 ifcfg-br0 文件,修改并添加以下内容
TYPE=Bridge
NAME=br0
DEVICE=br0

重启网络服务,查看网卡信息࿱

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值