盛世宏图 发表于 2024-6-13 22:11:34

zzuli--2022级云盘算假造化技能与开发复习资料

1.假造化和云盘算的关系

假造化和云盘算是紧密相关的概念,两者常常结合使用,但它们并不完全相同。
假造化

假造化是一种技能,它答应在一台物理服务器上创建多个假造的独立运行环境(假造机或容器),每个环境都可以运行自己的操作体系和应用程序。这种技能通过软件层(如Hypervisor或容器引擎)实现,在物理硬件上创建假造的、隔离的盘算环境。
云盘算

云盘算是一种提供盘算资源和服务的模式,它通过互联网提供各种盘算服务,包括盘算本领、存储空间、数据库、应用程序等。云盘算通过假造化技能来实现资源的池化和共享,用户可以根据需求弹性地使用这些资源,按需付费。
关系



[*] 假造化是云盘算的基础: 云盘算通常使用假造化技能来实现资源的隔离、灵活性和可扩展性。假造化使得在物理硬件上运行多个假造环境成为可能,为云服务的提供和管理提供了基础办法。
[*] 云盘算利用假造化来提供服务: 云盘算服务提供商(如AWS、Azure、Google Cloud等)利用假造化技能在其底层基础办法上提供盘算资源和服务,使用户可以通过云平台访问和使用这些资源。
[*] 假造化是云盘算的关键组成部分: 假造化技能使云盘算中的多租户架构、资源池化、主动化管理等功能成为可能。云服务提供商可以通过假造化来实现资源的动态分配和灵活管理,以满足用户对可扩展性和弹性的需求。
总体而言,假造化为云盘算提供了基础架构和灵活性,使得云服务可以或许以高效、灵活和可扩展的方式提供盘算资源和服务。
1.从技术看:虚拟化是云计算的核心组成部分之一,是云计算和云存储服务得以实现的关键技术之一。
2.从软硬件角度分离来看:云计算在某种意义上剥离了软件和硬件之间的关系,虚拟化是有效分离的方法。
3.从网络服务的角度来看:云计算是一种“一切皆服务”的模式,通过该模式在网络上或云上提供服务,虚拟化层的虚拟机提供云计算服务,虚拟化层的网络提供服务。 2.全假造化和半假造化类型特点

全假造化和半假造化是两种差别的假造化技能,它们有着一些区别和特点。

[*] 全假造化(Full Virtualization):

[*] 特点:在全假造化中,假造化层(通常是称为假造机监控器或hypervisor)模仿整个硬件环境,包括处理器、内存、存储和其他外设。假造机(VM)运行在这个假造化层之上,认为自己是在一个完全独立的、未经修改的物理硬件上运行。
[*] 长处:支持几乎所有的操作体系,由于它们无需修改即可在假造化环境中运行。提供了更高的隔离性和安全性,假造机之间相互独立。
[*] 缺点:由于需要模仿整个硬件环境,因此会产生性能开销。在处理器的假造化上需要更多的盘算资源。

[*] 半假造化(Paravirtualization):

[*] 特点:与全假造化差别,半假造化要求操作体系的修改,使其可以或许意识到自己运行在假造化环境中。这种修改答应操作体系与假造化层直接通信,而不是通过硬件仿真。
[*] 长处:性能更高,由于假造机和假造化层之间的通信更为高效,不需要对硬件举行模仿。减少了性能开销,进步了整体体系性能。
[*] 缺点:需要对操作体系举行修改,这可能限制了可支持的操作体系范围。同时,安全性方面也有一些题目,由于假造机可以直接与假造化层通信。

选择全假造化还是半假造化通常取决于应用场景和需求。全假造化适合需要在假造化环境中运行各种操作体系的环境,而半假造化则更适合寻求性能和服从的场景,但需要对操作体系举行修改以实现这种服从。
全虚拟化:虚拟化层模拟整个硬件环境,认为自己在完全独立的物理硬件上运行。优点:几乎支持所有操作系统,更高的隔离性和安全性,虚拟机之间相互独立。缺点:花销大。
半虚拟化:半虚拟化要求操作系统更改,使其自己意识到自己运行在虚拟环境中,允许操作系统与虚拟化层直接通信。优点:性能更高,虚拟机和虚拟化层之间通信更有效。缺点:需要修改操作系统,限制了操作系统范围。
3.假造化从实现布局角度的分类 (Bare metal/Hosted/混淆型)

假造化从实现布局的角度可以分为三种主要类型:
1. Bare Metal 假造化(裸金属假造化)

这种假造化方式也被称为硬件级别的假造化,它在物理硬件上直接运行假造化层(Hypervisor),并在其上创建和管理多个假造机。Bare Metal 假造化的 Hypervisor 直接访问物理硬件,因此它可以提供更高的性能和服从。常见的 Bare Metal 假造化技能包括 VMware vSphere/ESXi、Microsoft Hyper-V、Xen等。
2. Hosted 假造化(托管式假造化)

Hosted 假造化需要在宿主操作体系之上安装假造化软件,这个软件称为 Hypervisor 或假造机监视器(VMM)。这个 Hypervisor 在宿主操作体系上运行,并管理假造机。相比于 Bare Metal 假造化,由于需要颠末宿主操作体系,Hosted 假造化的性能可能会轻微低沉。常见的 Hosted 假造化技能包括 VirtualBox、VMware Workstation、Parallels Desktop 等。
3. 混淆型假造化

混淆型假造化结合了 Bare Metal 和 Hosted 两种方式的特点。它可以在特定的环境下结合两种假造化方式的优势。比方,某些假造化技能可能会在宿主操作体系上运行 Hypervisor,但同时也会答应 Hypervisor 直接访问硬件资源,类似于 Bare Metal 假造化的方式。
每种假造化方式都有其自身的优势和适用场景。Bare Metal 假造化提供更高的性能和资源控制,适合于需要高性能和安全性的企业级应用。Hosted 假造化则更适用于个人用户或开发环境,由于它更易于摆设和管理。混淆型假造化则可以根据特定的需求灵活地选择合适的方式。
1.Bare mental虚拟化:原生架构,硬件资源上没有操作系统,直接由虚拟机监控器接管,负责所有资源和虚拟环境。
2.Host虚拟化:Hypevisor或VMM直接运行在宿主机的操作系统上,很多虚拟化的功能依赖于宿主机操作系统或者专门的硬件功能,性能会稍微降低。
3.混合型虚拟化:综合以上两种虚拟化的特点,VMM直接管理硬件,一部分的设备控制权会交给特权虚拟机的操作系统来管理。 4.CPU假造化面临的题目及软硬件办理方案 (部分敏感指令捕获)

CPU假造化面临的题目之一是处理敏感指令。这些指令在假造化环境中可能会引起题目,由于它们需要对硬件举行特定的访问或操作,这与假造化的隔离性和安全性相悖。
软硬件办理方案可以帮助办理这些题目:
软件办理方案:


[*] 指令拦截和仿真:假造机监控器(VMM)可以拦截敏感指令并对其举行仿真。这意味着当假造机尝试实行敏感指令时,VMM会拦截并使用软件逻辑模仿其行为,以确保安全实行。
[*] 二进制翻译:将敏感指令翻译成等效的指令序列,这些序列不会对底层硬件产生不良影响。这种方法可能会在性能上产生一些开销,但可以提供更高的安全性。
硬件办理方案:


[*] 假造化扩展:今世处理器提供了一些硬件级别的功能,如Intel的VT-x和AMD的AMD-V,这些功能为假造化提供了硬件级别的支持。这些扩展可以使VMM更高效地管理假造化,包括对敏感指令的处理。
[*] 硬件辅助假造化:一些处理器提供了特定的指令或硬件机制,如Intel的VT-d和AMD的IOMMU,这些机制答应假造机直接访问物理硬件,提供更高的安全性和性能。
[*] 安全协处理器:有些处理器包含专门的安全协处理器,如Intel的SGX(Software Guard Extensions),可以帮助保护敏感数据和指令免受假造化环境的干扰。
在处理敏感指令的环境下,软件和硬件办理方案通常会结合使用,以确保在假造化环境中提供充足的安全性和性能。这些办理方案的选择通常取决于硬件支持、性能需求以及对安全性的特定要求。
cpu虚拟化面临的问题:对一些敏感指令的捕获问题。
软件解决方案:1.指令拦截和仿真,使用VMM可以拦截指令并且对其进行仿真,以确保安全执行。
2.二进制翻译:把敏感指令翻译为等效指令序列,会增加一些开销,但安全性更高。
硬件解决方案:1.虚拟化扩展,采用现代处理器提供的一些功能,使用这些扩展使VMM高效管理虚拟化,包括对敏感指令的处理。
2.硬件辅助虚拟化:通过处理器提供的一些特定指令或硬件机制。
3.安全协助处理器:保护敏感数据和指令免受虚拟环境的干扰。 5.intelVT-x的VMX操作模型及操作流程

Intel VT-x 是 Intel 假造化技能的一部分,它提供了硬件级别的假造化支持。VMX(Virtual Machine Extensions)是 VT-x 的一部分,定义了处理器对假造化支持的操作模型。
VMX操作模型包括以下主要部分:


[*] Root Operation Mode(根操作模式):

[*] 处于体系的最高特权级别(Ring 0),控制整个假造化体系的运行。根操作模式下的软件通常是假造机监控器(VMM)。

[*] Non-Root Operation Mode(非根操作模式):

[*] 指的是客户操作体系或应用程序运行的环境。非根操作模式下的软件称为客户操作体系或应用程序。

VMX的操作流程涉及以下步骤:


[*] 初始化VMX:

[*] 处理器通过一系列的初始化步骤来启用VMX,并设置VMCS(VM Control Structure)。
[*] VMCS是一种数据布局,用于描述假造机的状态信息,包括假造机控制信息、VM-exit和VM-entry信息等。

[*] 切换至Root Operation Mode:

[*] 当体系启动时,VMM以根操作模式运行。VMM负责创建、管理和监控假造机的实行。
[*] 当VMM决定将控制权转移到假造机时,它会实行VM-entry指令,将处理器状态切换至非根操作模式。

[*] 假造机实行:

[*] 在假造机中实行指令,处理器运行在非根操作模式下。假造机实行期间,处理器可能会由于各种原因(如访问设备、特别指令等)而触发VM-exit,即从假造机切换回VMM。

[*] VM-exit处理:

[*] 当处理器从假造机中退出时,控制权返回给VMM,实行VM-exit的相关处理例程。
[*] 在VM-exit期间,处理器会生存假造机的状态,并将控制权转移至VMM。

[*] VMM处理并决定下一步操作:

[*] VMM在VM-exit处理期间可能会查抄假造机的状态,举行须要的处理(如调整假造机参数、实行特定操作)。
[*] 最终,VMM决定是否再次启动假造机实行(通过VM-entry)或者将控制权交还给宿主操作体系。

VMX操作模型的流程使得VMM可以或许有效地管理和控制假造机的实行,同时提供了对硬件资源的安全隔离和管理。这种硬件级别的支持进步了假造化的性能和安全性。
操作模型有两种:
1.非根模式(客户机所处模式):所有敏感指令的行为会被重新定义,使他们不经过虚拟化就直接运行或通过“陷入再模拟”的方式来处理。
2.根模式(VMM所处模式):指令行为和传统的一样,原有软件可正常与运行。
操作流程如下:
1.VMM执行VMXON指令进入VMX操作模式(cpu处于根模式),VMM开始运行。
2.执行VMLANCH或VMRESUME指令产生VM-entry,让其从根模式转换为非根模式。
3.在客户机执行特权指令或者客户机运行发生中断或异常时,VM-Exit被触动儿陷入VMM,cpu自动从非根模式转换为根模式。
4.如果VMM决定退出,则会执行VMXOFF关闭VMX操作模式。 6.内存假造化面临的题目及软硬件办理方案(客户机操作体系内存空间需求,三个地点映射)

内存假造化面临的题目包括:

[*] 内存隔离和保护:确保差别的假造机(客户机)之间以及假造机与宿主机之间的内存空间相互隔离和保护,防止未经授权的访问和数据泄露。
[*] 内存资源管理:有效管理物理内存资源,为假造机提供充足的内存,并实现内存的动态分配和释放,以适应差别假造机负载的变化。
[*] 地点映射:客户机操作体系通常使用假造地点空间,而不是物理地点空间,因此需要在假造地点和物理地点之间举行映射。
软硬件办理方案有助于办理这些题目:
软件办理方案:


[*] 页表假造化:通过在宿主机和客户机之间创建多级页表布局,将假造地点映射到物理地点。这种假造化技能答应在差别的假造机之间共享物理内存,同时保持内存空间的隔离。
[*] 内存分配管理:由VMM负责监视和管理物理内存的分配。它可以通过动态调整分配给各个假造机的内存大小来优化资源使用。
硬件办理方案:


[*] 硬件辅助假造化:类似于处理器提供的硬件级别支持假造化技能(如Intel的VT-x),一些硬件还提供对内存假造化的支持。比方,Intel的EPT(Extended Page Tables)和AMD的RVI(Rapid Virtualization Indexing)等技能,可以在硬件层面上加速假造地点到物理地点的映射过程,进步性能。
[*] 内存隔离技能:硬件提供一些特性,如Intel的SGX(Software Guard Extensions),可以在物理内存中创建受保护的内存区域,用于存储敏感数据,防止其他假造机或未授权的实体访问。
地点映射通常包括三个层级:

[*] 假造地点空间(VA,Virtual Address):客户机操作体系和应用程序使用的假造地点空间。
[*] 中间地点空间(IA,Intermediate Address):VMM使用的中间地点空间,用于在假造机的假造地点空间和物理地点空间之间举行映射和转换。
[*] 物理地点空间(PA,Physical Address):实际的物理内存地点空间。
这三个地点映射层级帮助实现了假造机的内存假造化,答应差别假造机在共享物理内存的同时保持隔离和安全性。软件和硬件办理方案的组合有助于办理内存假造化所面临的挑战,进步了性能和安全性。
内存虚拟化面临的问题:
1.内存隔离和保护:确保不同虚拟机之间以及虚拟机之间的相互隔离和保护,防止未经授权的访问和数据泄露。
2.内存资源管理:物理内存可以满足要分给多个客户机操作系统使用,但是内存使用效率较低。
3.需要解决虚拟地址和物理地址之间的映射。
软件解决方案:
1.页表虚拟化:在宿主机和客户机之间建立多级页表结构,将虚拟地址以映射到物理地址,满足共享物理内存,同时保持内存空间隔离。
2.内存分配管理:用VMM负责监视和管理内存的分配。动态调度资源使用。
硬件解决方案:
1.硬件辅助虚拟化:加速虚拟地址到物理地址的映射过程。
2.内存隔离技术:在物理内存里创建保护的内存区域,存储敏感数据。
三个地址映射:
虚拟机地址到客户机地址的映射:客户操作系统将客户机的物理地址转换为宿主机物理地址,以访问分配给它的物理内存。
客户机物理地址到宿主机物理地址的映射:虚拟化软件将客户机物理地址转换为宿主机物理机地址,实现内存资源的共享和管理。
宿主机物理地址到实际物理地址的映射:宿主机操作系统将宿主机物理地址转换为实际的物理地址,访问物理内存。 7.intel EPT技能的作用及运行原理

Intel的EPT(Extended Page Tables)是一种硬件辅助假造化技能,旨在改善假造化环境下的内存管理服从和性能。
EPT 的作用:


[*] 加速内存访问:EPT技能通过硬件级别的支持,答应假造机管理程序(VMM)创建额外的页表层级,使得假造地点空间到物理地点空间的映射更为高效。如许可以减少VMM参与的频率,进步假造机对物理内存的直接访问本领。
[*] 进步性能:EPT技能通过在硬件层面支持假造内存映射,减少了假造化中地点转换的软件开销,进步了内存访问速率和整体体系性能。
EPT 的运行原理:


[*] 增长页表层级:传统的假造内存管理使用两级页表(假造地点到物理地点的映射),但在EPT中引入了一个额外的页表层级。
[*] 三级地点转换:

[*] 客户机假造地点:客户机操作体系和应用程序使用的假造地点空间。
[*] 中间地点空间(IA):VMM使用的中间地点空间,其中有一组假造页表将客户机假造地点映射到VMM的假造地点。
[*] 物理地点空间:实际的物理内存地点。

[*] 硬件支持:处理器中的EPT单元支持假造地点到物理地点之间的映射。在每个假造机上,VMM会为该假造机创建一个EPT表,将假造地点映射到物理地点。
[*] 地点翻译:

[*] 当假造机实行时,当访问内存时,处理器将会使用EPT表举行地点翻译,将客户机假造地点转换为物理地点。
[*] 这个转换过程在硬件层面完成,减少了VMM参与的需要,进步了性能。

总的来说,EPT技能通过引入额外的页表层级,提供了更高效的假造地点到物理地点的映射机制。这种硬件级别的支持低沉了地点转换的软件开销,改善了假造化环境下的内存管理服从和性能。
EPT技术的作用:将客户机物理地址翻译为主机物理地址,提高虚拟机性能和安全性。
运行原理:在每个虚拟机上,VMM会为该虚拟机创建一个EPT表,将虚拟地址映射到物理地址。虚拟机在访问内存时,处理器将会使用EPT表进行地址翻译,将客户机虚拟地址转换为物理地址。并将转换后的物理地址给内存控制器,完成内存访问。 8.intelVT-d中DMA重映射技能要办理的题目及实现流程

Intel VT-d(Virtualization Technology for Directed I/O)是一种硬件级别的假造化技能,主要用于办理I/O设备(如网络适配器、图形卡等)在假造化环境中的直接内存访问(DMA)所带来的安全和隔离性题目。
DMA重映射技能要办理的题目:


[*] 设备DMA的安全题目:在传统的假造化环境中,I/O设备通常直接访问物理内存,这可能导致安全隐患,由于差别假造机之间的数据可能被共享或泄露。
[*] 隔离性题目:差别的假造机可能需要对同一台物理设备举行访问,但需要确保它们之间的访问是隔离的,互不干扰。
DMA重映射技能的实现流程:


[*] 设备分配和初始化:

[*] 在初始化阶段,VMM为每个假造机分配设备并初始化设备。这包括分配给设备的内存空间和设备驱动的加载。

[*] IOMMU设置:

[*] IOMMU(Input/Output Memory Management Unit)是VT-d技能的一部分,负责管理DMA哀求的重定向。VMM通过IOMMU设置,创建设备到物理内存之间的映射关系。

[*] DMA哀求重定向:

[*] 当假造机中的设备发出DMA哀求时,这些哀求会被IOMMU拦截。
[*] IOMMU根据VMM预先设置的映射关系,将设备的DMA哀求重定向到假造机分配的特定内存区域,而不是直接访问物理内存。

[*] 页表转换:

[*] IOMMU将假造地点转换为物理地点。在这个过程中,可能会使用页表举行地点转换,确保设备的DMA哀求被正确地映射到假造机所分配的内存区域。

[*] 数据传输:

[*] 一旦DMA哀求被重定向并完成地点映射,数据传输将在假造机分配的内存区域中举行,保持了安全性和隔离性。

DMA重映射技能通过IOMMU举行硬件级别的地点重定向和管理,确保I/O设备的DMA哀求在假造化环境下可以或许安全地访问假造机分配的内存区域,同时保持差别假造机之间的隔离。这有助于进步安全性,减少因直接设备访问带来的潜伏风险。
DMA重映射技术需要解决的问题:
1.设备DMA的安全问题:不同虚拟机之间的数据可能被共享或泄露。
2.隔离性问题:不同的虚拟机可能需要对同一台物理设备进行访问,但需要确保它们之间的访问是隔离的,互不干扰。
实现流程:
1.初始时会给给每个虚拟机分配并分配初始化设备。
2.VMM通过IOMMU配置,建立设备到物理内存之间的映射关系。
3.使用预选配置的映射关系,将设备的DMA请求重定向虚拟机的特定内存区域。
4.使用页表转化确定请求是被正确映射到的。
5.进行数据传输。 9.KVM假造化软件的架构,包含的两个组件及交互,KVM架构的特点优势

KVM(Kernel-based Virtual Machine)是基于Linux内核的开源假造化办理方案,其架构包括两个主要组件,并涉及这些组件之间的交互:
KVM的架构组件:


[*] KVM内核模块:

[*] KVM内核模块是Linux内核的一部分,答应假造化基础办法在其之上运行。它提供了基本的假造化功能,包括CPU假造化、内存假造化等。

[*] QEMU(Quick Emulator):

[*] QEMU是一个开源的模仿器和假造机管理器,与KVM结合使用以提供完备的假造化办理方案。QEMU通过模仿设备来为假造机提供I/O、存储和网络等硬件功能。

组件之间的交互:


[*] KVM和宿主操作体系:

[*] KVM模块运行在Linux内核中,答应宿主操作体系管理假造化资源和调度假造机。

[*] KVM和QEMU:

[*] KVM提供了假造化的基础办法,包括CPU假造化功能,而QEMU提供了模仿设备和假造机管理的功能。
[*] KVM与QEMU结合使用,KVM利用QEMU的设备模仿和管理功能,实现对假造机的完备控制和管理。

KVM架构的特点和优势:


[*] 基于硬件的假造化:

[*] KVM利用硬件假造化扩展(如Intel VT-x或AMD-V)来提供更高效的假造化,使得假造机可以或许直接访问物理硬件。

[*] 与Linux内核紧密集成:

[*] 作为Linux内核的一部分,KVM可以或许利用Linux内核的功能和驱动程序支持,减少了假造化开销并进步了性能。

[*] 高性能和灵活性:

[*] KVM提供了靠近本地性能的假造化,并且支持多种差别类型的假造机,具有灵活性和可扩展性。

[*] 广泛硬件支持:

[*] KVM可以或许在支持假造化扩展的大多数x86处理器上运行,提供更好的性能和兼容性。

[*] 开源和社区支持:

[*] KVM是开源项目,受到广泛的社区支持和持续的更新,可以获得来自开发者社区的支持和改进。

总的来说,KVM作为一个基于Linux内核的假造化办理方案,具有高性能、与Linux内核紧密集成、灵活性和广泛的硬件支持等优势,在服务器假造化和云盘算领域得到广泛应用。
两个架构组件为:
1.KVM内核模块
2.QEMU
之间的交互:
1.KVM和宿主操作系统:
 KVM模块运行在Linux内核中,允许宿主操作系统管理虚拟化资源和调度虚拟机。
2. KVM和QEMU:
  KVM提供了虚拟化的基础设施,包括CPU虚拟化功能,而QEMU提供了模拟设备和虚拟机管理的功能。
  KVM与QEMU结合使用,KVM利用QEMU的设备模拟和管理功能,实现对虚拟机的完整控制和管理。
KVM的架构优势:
1.高性能
2.完整的虚拟化支持
3.灵活性
4.安全性 10.virtio的特点和实现框架

virtio是一种用于假造化环境下的设备驱动的尺度化框架,旨在进步假造机和宿主机之间的设备I/O服从和性能。
virtio 的特点:


[*] 高性能:virtio旨在提供与本地设备驱动相近的性能,在假造化环境中实现快速的数据传输和低延迟。
[*] 通用性:virtio为多种设备类型提供了通用的抽象层,包括网络适配器、磁盘、内存、串口等,使其适用于差别类型的假造设备。
[*] 规范性:virtio定义了尺度的设备接口和协议,使得支持virtio的假造机监控器(VMM)和客户机操作体系可以或许以一致的方式与假造设备举行通信。
[*] 轻量级:由于其基于共享内存区域举行通信,virtio相对轻量级,减少了在宿主机和假造机之间数据传输的开销。
virtio 的实现框架:


[*] 前端驱动:

[*] 客户机(假造机)中运行的驱动程序,负责与virtio设备举行通信和管理。前端驱动将I/O哀求传递给virtio设备,并将设备的相应传送回客户机。

[*] 后端驱动:

[*] 宿主机(VMM)中运行的驱动程序,与前端驱动举行通信。后端驱动负责实现假造设备的模仿,处理前端驱动传递的I/O哀求,并将结果返回给前端驱动。

[*] virtqueue:

[*] virtqueue是前后端驱动之间交换数据的一种环形缓冲区队列。前端驱动将哀求放入队列,后端驱动从队列中获取哀求并实行,然后将结果写回队列,末了前端驱动读取结果。

[*] 设备设置:

[*] virtio设备的设置信息存储在特定的设备寄存器中,前后端驱动通过这些寄存器举行设备的初始化和设置。

virtio框架利用了共享内存区域和队列机制,答应客户机和宿主机之间举行高效的数据传输和通信。这种尺度化的驱动框架简化了假造设备的实现和集成,进步了假造化环境下的I/O性能和可扩展性。
特点:高性能;通用性;规范性;轻量级;
实现框架:
1.前端驱动:客户机驱动程序,将I/O请求传递给virtio设备,并将设备的响应传送回客户机。
2.后端驱动:宿主机驱动程序,1. 与前端驱动进行通信。后端驱动负责实现虚拟设备的模拟,处理前端驱动传递的I/O请求,并将结果返回给前端驱动。
3.通信通道:前后端驱动之间通过共享内存或者直接访问DMA进行驱动,与前端驱动进行通信,后端驱动负责实现虚拟设备的模拟,处理前端驱动传递的I/O请求,并将结果返回给前端驱动。 11.V2V假造机在线迁徙的作用及KVM在线迁徙步骤

V2V(Virtual-to-Virtual)假造机在线迁徙是将一个假造化环境中的假造机从一个主机(源主机)迁徙到另一个主机(目的主机)的过程。在线迁徙的主要作用包括:

[*] 资源优化:答应管理员在不影响假造机服务的环境下,在物理服务器之间动态平衡负载和资源分配,以进步资源利用率和性能。
[*] 硬件维护:在举行物理服务器维护、升级或更换时,可以在线迁徙假造机,避免服务中断。
[*] 劫难恢复:在线迁徙可以作为劫难恢复的一部分,帮助将假造机快速迁徙到备用设备或其他地点,以应对突发环境。
KVM(Kernel-based Virtual Machine)在线迁徙的步骤:

KVM提供了迁徙假造机的工具和机制,一样平常步骤如下:

[*] 预备迁徙:

[*] 源主机和目的主机必须满足迁徙要求,包括共享存储(如NFS、iSCSI等)、网络连接、相同的CPU架构等。

[*] 迁徙预查抄:

[*] 确保源假造机的状态适合迁徙。这可能包括暂停假造机的I/O操作、减少假造机的负载等。

[*] 启动迁徙:

[*] 使用KVM提供的工具(比方virsh命令行工具或其他管理工具)启动迁徙过程。常用的命令是virsh migrate。

[*] 传输假造机状态:

[*] 源主机将假造机的状态和内存数据传输到目的主机。这包括假造机的内存内容、CPU状态和设备状态。

[*] 同步假造机状态:

[*] 源主机将假造机的状态暂时冻结,并将更新的状态传输到目的主机,确保两个主机上的假造机状态一致。

[*] 完成迁徙:

[*] 当假造机状态同步完成后,目的主机接管假造机并恢复其运行。源主机在确认假造机乐成迁徙后释放资源。

KVM利用迁徙工具和协议(如TCP/IP)在源和目的主机之间传输假造机状态和内存内容,答应在不中断假造机服务的环境下将假造机迁徙到新的主机。这种在线迁徙技能使得动态负载平衡和故障恢复变得更加灵活和高效。
在线迁移的作用:资源优化;硬件维护;灾难恢复;
KVM在线迁移步骤:
1.系统验证目标服务器的存储器和网络设置是否正确,并预留保留目标服务器虚拟机资源。
2.当虚拟机还在源服务器运转时:第一个循环内将全部内存镜像复制到目标服务器,这个过程中KVM依然会监视内存的任何变化。
3.之后的循环中,会检查上一次循环中内存是否发生了变化,若发生了变化,VMM会将发生变化的内存即脏页复制到目标服务器上,覆盖之前的内存页,VMM依然会监视内存的任何变化。 12.qemu创建磁盘镜像、启动假造机的相关设置命令

使用QEMU创建磁盘镜像并启动假造机需要使用一些命令行工具和参数。以下是一样平常环境下的命令示例:
创建磁盘镜像

使用qemu-img工具创建磁盘镜像文件:
qemu-img create -f <format> <image_name>.<extension> <size> 其中:


[*] <format>: 磁盘镜像的格式,可以是qcow2、raw等。
[*] <image_name>.<extension>: 要创建的磁盘镜像的文件名和扩展名。
[*] <size>: 磁盘镜像的大小,比方10G表现10GB。
比方,创建一个名为myimage.qcow2,大小为10GB的qcow2格式磁盘镜像的命令如下:
qemu-img create -f qcow2 myimage.qcow2 10G 启动假造机

使用qemu-system-*命令启动假造机,具体命令参数可能会因体系设置、硬件要求和假造机设置而异。
qemu-system-<architecture> <disk_image> 其中:


[*] <architecture>: 假造机的体系布局,如x86_64。
[*] : 启动假造机的参数,可以设置内存、CPU核心数等。
[*] <disk_image>: 假造机的磁盘镜像文件。
比方,启动一个名为myimage.qcow2的假造机,并分配2GB内存的命令可能是:
qemu-system-x86_64 -m 2048 -hda myimage.qcow2 这只是基本示例,实际的命令参数可能因体系要求、需要安装的操作体系以及其他设置而有所差别。在实际使用中,还可能需要指定网络设置、启动引导设备等。
创建镜像设置的命令:使用qemu-img工具创建磁盘镜像文件:qemu-img create -f <format> <image_name>.<extension> <size>其中:<format>: 磁盘镜像的格式,可以是qcow2、raw等。<image_name>.<extension>: 要创建的磁盘镜像的文件名和扩展名。<size>: 磁盘镜像的大小,比方10G表现10GB。启动假造机的相关设置命令:使用`qemu-system-*`命令启动假造机,具体命令参数可能会因体系设置、硬件要求和假造机设置而异。qemu-system-<architecture> <disk_image>其中:<architecture>:假造机的体系布局,如x86_64。:启动假造机的参数,可以设置内存、CPU核心数等。<disk_image>:假造机的磁盘镜像文件。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: zzuli--2022级云盘算假造化技能与开发复习资料