KVM-虚拟化技术之Hypervisor-架构

article/2025/10/14 13:58:41

Hypervisor 是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础物理硬件,因此也可以看作是虚拟环境中 的“元”操作系统,它可以协调访问服务器上的所有物理设备和虚拟机,也叫 虚拟机监视器(Virtual Machine Monitor)。

 

Hypervisor 是所有虚拟化技术的核心。非中断地支持多工作负载迁移的能力是Hypervisor 的基本功能。当服务器启动并执行 Hypervisor 时,它会给每 一台虚拟机分配适量的内存、CPU、网络和磁盘,并加载所有虚拟机的客户操作系统。

 

虚拟化技术架构

 

Hypervisor,常见的 Hypervisor 分两类:

Type-I(裸金属型)

指 VMM 直接运作在裸机上,使用和管理底层的硬件资源,GuestOS 对真 实硬件资源的访问都要 通过 VMM 来完成,作为底层硬件 的直接操作者, VMM 拥有硬件的驱动程序。裸金属虚拟化中Hypervisor 直接管理调用硬件资源,不需要底层操作系统,也可以理解为 Hypervisor 被做成了一个很薄的操作系统。 这种方案的性能处于主机虚拟化与操作系统虚 拟化之间 。代表是VMware ESX Server、Citrix XenServer 和 Microsoft Hyper-V,Linux KVM。

Type-II 型(宿主型)

指 VMM 之下还有一层宿主操作系统,由于 Guest OS 对硬件的访问必须 经过宿主操作系统,因而带来了额外的性能开销,但可充分利用宿主操作系统 提供的设备驱动和底层服务来进行内存管理、进程调度和资源管理等。主机虚 拟化中 VM 的应用程序调用硬件资源时需要经过:VM 内核->Hypervisor->主机内核 ,导致性能是三种虚拟化技术中最差的 。主 机虚拟化技术代表是VMware Server(GSX)、Workstation 和 Microsoft Virtual PC 、 Virtual Server 等。

由于主机型 Hypervisor的效率问题 ,多数厂商采用了裸机型 Hypervisor 中的 Linux KVM 虚拟化,即为 Type-I(裸金属型)。

KVM(Kenerl-based Virtual Machine)是基于 linux 内核虚拟化技术,自 linux2.6.20 之后就集成在linux 的各个主要发行版本中。它使用 linux 自身的 调度器进行管理,所以相对于 xen,其核心源码很少。

KVM 是基于硬件虚拟化扩展(Intel VT- X )和 QEMU 的修改版,KVM 属于 Linux kernel 的一个模块,可以用命令 modprobe 去加载 KVM 模块。加 载了该模块后,才能进一步通过工具创建虚拟机。但是仅有 KVM 模块是不够 的。因为用户无法直接控制内核去做事情,还必须有一个运行在用户空间的工具才行。这个用户空间的工具,我们选择了已经成型的开源虚拟化软件 QEMU,QEMU 也是一个虚拟化软件,它的特点是可虚拟不同的 CPU,比如说在x86的CPU 上可虚拟一个 power 的 CPU,并可利用它编译出可运行在 power 上的 CPU,并可利用它编译出可运行在 power 上的程序。KVM 使用了 QEMU的一部分,并稍加改造,就成了可控制 KVM 的用户空间工具了。这就是 KVM 和 QEMU 的关系。如下图:

 

一个普通的 linux 进程有两种运行模式:内核和用户。而 KVM 增加了第三 种模式:客户模式(有自己的内核和用户模式)。在 kvm 模型中,每一个虚拟 机都是由 linux 调度程序管理的标准进程。

总体来说,kvm 由两个部分组成:一个是管理虚拟硬件的设备驱动,该驱 动使用字符设备/dev/kvm作为管理接口;另一个是模拟 PC 硬件的用户空间组 件,这是一个稍作修改的 qemu 进程。

参考博客:

1、 https://www.oschina.net/question/2548918_2149938  KVM 虚拟化技术之Hypervisor 架构

2、https://zhuanlan.zhihu.com/p/69629212  虚拟化技术

3、https://zhuanlan.zhihu.com/p/69625751  虚拟化技术 - CPU虚拟化

 


http://chatgpt.dhexx.cn/article/SIJDl6WM.shtml

相关文章

KVM虚拟化技术学习-基础入门

1.虚拟化技术概述 虚拟化[Virtualization]技术最早出现在 20 世纪 60 年代的 IBM ⼤型机系统,在70年代的 System 370 系列中逐渐流⾏起来,这些机器通过⼀种叫虚拟机监控器[Virtual Machine Monitor,VMM]的程序 在物理硬件之上⽣成许多可以运⾏…

KVM虚拟化技术学习-KVM管理

二&#xff0c;KVM管理 1.升级配置 1.创建一个空磁盘卷 [rootlocalhost ~]# qemu-img create -f qcow2 /kvm/images/disk2.qcow2 5G Formatting disk2.qcow2, fmtqcow2 size5368709120 encryptionoff cluster_size65536 lazy_refcountsoff 2.修改配置文件 <disk typefi…

KVM虚拟化技术原理简介

KVM KVM架构概述KVM运行时的三种模式KVM工作原理 硬件虚拟化技术1、CPU虚拟化2、内存虚拟化3、I/O虚拟化 KVM虚拟化平台部署1.虚拟机资源2.安装KVM3.设置KVM网络4.KVM部署与管理 KVM架构概述 KVM架构很简单&#xff0c;就是内核的一个模块KVM是集成到内核的hypervisorI&#x…

KVM虚拟化技术实践

[版权申明&#xff1a;本文系作者原创&#xff0c;转载请注明出处] 文章出处&#xff1a;http://blog.csdn.net/sdksdk0/article/details/54809159 作者&#xff1a;朱培 ID&#xff1a;sdksdk0 今天分享的文章是关于云计算中的kvm&#xff08;虚拟化技术&#xff09;&…

详解KVM虚拟化原理

详解KVM虚拟化原理 KVM架构 KVM&#xff08;Kernel-based Virtual Machine&#xff09;包含一个为处理器提供底层虚拟化、可加载的核心 模块kvm.ko&#xff08;kvm-intel.ko或kvm-amd.ko&#xff09;&#xff0c;使用QEMU&#xff08;QEMU-KVM&#xff09;作为虚拟机上层 控制…

KVM虚拟化技术介绍以及相关操作

一、KVM架构 KVM功能&#xff0c;是以扩展虚拟化CPU为硬件基础&#xff08;如Intel-VT,AMD-V&#xff09;&#xff0c;利用CPU虚拟化技术。 KVM作为内核的一个模块&#xff0c;来提供虚拟化功能。如果系统需要虚拟化功能&#xff0c;则KVM模块可以被linux内核按需动态加载到内…

KVM(虚拟化平台)概念及部署

KVM&#xff08;虚拟化平台&#xff09;概念及部署 一、虚拟化技术二、虚拟化技术发展三、虚拟化特性优势&#xff1a;劣势&#xff1a; 四、KVM架构及原理&#xff08;一&#xff09;KVM虚拟化架构/三种模式&#xff08;二&#xff09;KVM原理总结&#xff1a;&#xff08;三&…

KVM 虚拟化

kvm虚拟化 Kvm的安装、KVM下的虚拟机安装和相互访问约束 推荐下载TightVNC 也可以使用 VNCSever 一、虚拟化产品介绍 linux类的虚拟化软件: qemu&#xff0c;软件纯模拟全虚拟化软件&#xff0c;特别慢!xen(半)&#xff0c;性能特别好&#xff0c;需要使用专门修改之后的内…

Linux KVM 虚拟化技术

一 、 KVM 介绍 &#xff1b; KVM 全称是 基于内核的虚拟机&#xff08;Kernel-based Virtual Machine&#xff09;&#xff0c;它是Linux 的一个内核模块&#xff0c;该内核模块使得 Linux 变成了一个 Hypervisor&#xff1a; ① 、它由 Quramnet 开发&#xff0c;该公司于…

KVM 虚拟化详解

服务器虚拟化是云计算最核心的技术&#xff0c;而KVM是当前最主流的开源的服务器虚拟化技术。从Linux2.6.20起&#xff0c;KVM作为内核的一个模块 集成到Linux主要发行版本中。从技术架构&#xff08;代码量、功能特性、调度管理、性能等&#xff09;、社区活跃度&#xff0c;以…

KVM 虚拟化技术(理论详解+实战)

文章目录 前言什么是虚拟化为什么要用虚拟化虚拟化技术的优势KVM简介关于KVM关于Virtual Machine Manager其他虚拟化软件 KVM虚拟化平台部署 前言 什么是虚拟化 在计算机技术中&#xff0c;虚拟化&#xff08;技术&#xff09;或虚拟技术&#xff08;英语&#xff1a;Virtual…

虚拟化技术之KVM,搭建KVM(详细)

首先说一下&#xff0c;KVM是基于硬件辅助的开源全虚拟化解决方案 一、KVM&#xff08;基于内核的虚拟机&#xff09;【刚开始是一家以色列的公司开发的&#xff0c;后来红帽觉得KVM很有前景&#xff0c;就把KVM收购了】。 二、KVM包含了一个内核加载模块&#xff0c;是一个.…

KVM虚拟化

文章目录 虚拟化介绍kvm简介Qemu-KVM虚拟化部署kvmKVM管理界面安装 虚拟化介绍 虚拟化&#xff1a;在一台计算机上虚拟出多个逻辑的计算机&#xff0c;而且每个逻辑计算机 它可以是不同操作系统 虚拟化技术&#xff1a;可以扩大硬件容量&#xff0c;单个cpu模拟出多个cpu并行…

虚拟化技术KVM入门学习

目录 一、虚拟化技术概述二、主流虚拟化介绍1、虚拟化技术主要分类2、平台虚拟化技术分类 三、KVM虚拟化技术简介1、KVM架构及解析 四、KVM软件安装1、环境准备2、查看CPU是否支持VT技术3、清理环境&#xff0c;卸载原有KVM4、安装软件5、启动服务6、查看kvm模块加载 五、Guest…

KVM虚拟化技术

KVM虚拟化技术 Qemu-kvm kvm virt-manager VNC Qemu-kvm创建和管理虚拟机 一.KVM简介 KVM&#xff08;名称来自英语&#xff1a;Kernel-basedVirtual Machine的缩写&#xff0c;即基于内核的虚拟机&#xff09;&#xff0c;是一种用于Linux内核中的虚拟化基础设施&#xff0c;可…

KVM虚拟化(一)

一、KVM虚拟化架构 1、主流虚拟机架构 图中对比了几种主流虚拟化技术架构&#xff1a;ESXi、Xen与KVM&#xff0c;其主要差别在与各组件&#xff08;CPU、内存、磁盘与网络IO&#xff09;的虚拟化与调度管理实现组件有所不同。在ESXi中&#xff0c;所有虚拟化功能都在内核实现…

虚拟化技术-KVM详解

一、 KVM概述 1.1 KVM 即 Kernel-based Virtual Machine 基于内核的虚拟机。 KVM&#xff0c;是一个开源的系统虚拟化模块&#xff0c;自 Linux 2.6.20 之后集成在 Linux 的各个主要发行版本中。它使用 Linux 自身的调度器进行管理&#xff0c;所以相对于Xen&#xff0c;其核心…

盘点腾讯后台开发各级工程师(T1-T9)需要具备哪些能力

作为一个程序员&#xff0c;不管是初入职场的菜鸟还是做开发多年的老鸟&#xff0c;都希望有机会能进大厂&#xff0c;最近有不少小伙伴问腾讯好不好进&#xff1f;需要的技术栈是怎么样的&#xff1f;本文就给大家普及一下腾讯后台开发各级工程师&#xff08;T1-T9&#xff09…

大华热成像摄像头整合web 后台开发

大华热成像摄像头整合web 后台开发 项目背景&#xff1a;需要web后台主动抓拍/自动监控上报到web后台&#xff0c;通过百度智能云人脸识别。并推送到微信公众号 涉及平台&#xff1a;web后台&#xff0c;大华ndk&#xff0c;百度人脸识别 1、大华热成像ndk 包及 demo解析说明本…

微信公众号后台开发总结

微信公众号后台开发总结 一、项目简介 当前需要做一个公众号后台&#xff0c;前期需要实现的功能有&#xff1a; &#xff08;1&#xff09; 在用户关注公众号时便获取用户的信息同时还要将用户信息存入数据库。 &#xff08;2&#xff09; 在用户给公众号发送消…