首页 > 编程知识 正文

虚拟化技术的发展趋势,虚拟化平台有哪些

时间:2023-05-03 07:07:36 阅读:54170 作者:4543

虚拟化概念将一种形式的资源抽象为另一种形式的技术都是虚拟化; 虚拟化是资源的逻辑表示,不受物理限制。 虚拟化是云计算的基础,简单来说,虚拟化使您可以在一台物理服务器上运行多个虚拟机。 虚拟机共享物理机的CPU、内存和IO硬件资源,但在逻辑上虚拟机之间是相互隔离的。

对于计算机,虚拟化通常是指通过抽象计算机的物理资源并提供一个或多个操作环境来模拟、隔离或共享资源等。

典型的虚拟化包括内存虚拟化页面文件/计算资源虚拟化

磁盘虚拟化RAID、卷/存储资源虚拟化

网络虚拟化VLAN/网络资源虚拟化

虚拟化创建了一个隔离层,用于隔离硬件和上层APP应用程序,并允许在单个硬件资源上运行多个逻辑APP应用程序。

FusionSphere实现了x86服务器虚拟化。 更准确地说,有三个方面: CPU/Memory虚拟化

存储: VIMS文件系统

网络:分布式虚拟交换机

虚拟化中的几个重要概念虚拟机(虚拟机虚拟机(虚拟机虚拟机) )是指利用虚拟化技术,用软件模拟和构建完整的计算机硬件系统的功能。

虚拟机管理程序(即虚拟机监视器虚拟机管理程序(VMM ) )是在底层物理服务器和操作系统之间运行的中间软件层,虚拟机管理程序是虚拟环境中的“元” 虚拟机管理程序是所有虚拟化技术的核心

Xen Hypervisor :采用半虚拟化技术的开源VMM,负责各虚拟机之间的CPU调度和内存分配的Xen Hypervisor无需特殊的硬件支持即可实现高性能虚拟化

主机操作系统)主机操作系统(hostos )是指虚拟化物理机的操作系统。

客户操作系统)客户操作系统(来宾操作系统)是指在虚拟机上运行的操作系统。

域0 )运行主机操作系统的虚拟机。 域0是其他虚拟主机的管理员和管理员,可以创建更多其他域并管理虚拟设备。 它还可以执行管理任务,如虚拟机休眠、唤醒和其他虚拟机迁移。

domainu (指域0以外的虚拟机。

虚拟化特征分区:分区是指虚拟化层划分多个虚拟机服务资源的能力

隔离:虚拟机相互隔离:

打包是指将整个虚拟机(硬件配置、BIOS配置、内存状态、磁盘状态、CPU状态)存储在独立于物理硬件的文件组中。

独立于硬件(虚拟机运行在虚拟化层上,只能看到虚拟化层提供的虚拟硬件;

虚拟机的优点易于创建和管理虚拟机,使用户更容易获取计算资源,并降低管理和维护等总体拥有成本

降低运营成本

缩短在线周期

提高可靠性

提高资源利用率

动态资源调度(DRS );

虚拟机的三个特点:同质(Equivalence );

高效)高效;

资源控制(资源控制);

虚拟化体系结构虚拟化临时发生。 临时虚拟化体系结构是指在主机操作系统上安装和运行虚拟化程序,依赖于主机操作系统对设备的支持和物理资源的管理。

裸机虚拟化)裸机虚拟化体系结构是指在硬件上直接安装虚拟化软件,再在其上安装操作系统和APP应用程序,主要实现两个基本功能。 首先,识别、捕获、响应虚拟机发布的CPU特权指令或保护指令; 然后处理虚拟机的队列和时间表,并将物理硬件处理结果返回到相应的虚拟机。 华为的集成虚拟化平台使用裸机虚拟化体系结构

操作系统虚拟化:操作系统虚拟化体系结构在操作系统级别添加虚拟服务器功能。 所有虚拟服务器必须运行相同的操作系统。 但是,每个实例都有各自的APP应用程序和用户帐户。)

将用作虚拟硬件管理器的内核级驱动器插入主机操作系统内核,以协调虚拟机和主机操作系统之间的硬件访问。 混合虚拟化需要基础硬件来支持虚拟化扩展。

虚拟机概念虚拟机(Virtual Machine )是虚拟化层提供的高效、独立的虚拟计算机系统,每个系统都有自己的虚拟硬件(CPU、内存和I/O设备)。

【虚拟机功能:虚拟资源、虚拟环境调度、虚拟化环境管理界面】

虚拟机管理程序直接在硬件计算资源上安装裸机型号的虚拟机管理程序- metal (类型1虚拟机管理程序) :直接管理硬件资源而不需要底层操作系统主要虚拟化产品使用裸机型号的虚拟机管理程序。 其中包括VMwareESXservisor,该方案的性能介于主机虚拟化和操作系统虚拟化之间。

主机型虚拟机管理程序主机系列(类型2虚拟机管理程序)也有可集成在硬件计算资源中的固件包,与主板BIOS处于同一级别; 运行操作系统的APP应用程序

托管/托管虚拟机管理程序在基本操作系统上运行,并且是一组虚拟硬件平台(CPU )

/Memory/Storage/Adapter),主机虚拟化中VM的应用程序调用硬件资源时需要经过:VM内核->Hypervisor->主机内核,性能是虚拟化技术中最差的。与使用这种方式的有Hitachi Virtage、VMware ESXi和Linux KVM——基于内核的虚拟机。

宿主型的Hypervisor是运行在操作系统内部的应用程序,其它操作系统和应用程序实例可以运行在VMware Server和Microsoft Virtual Server之上,以及其它很多基于终端的虚拟化平台,诸如VMware Workstation、Microsoft Virtual PC和Parallels Workstation,这些都是宿主型的Hypervisor。

根据Hypervisor的实现方式和所处的位置虚拟化可以分为:

⑴裸机1型虚拟化:Hypervisor 直接安装在物理机上,多个虚拟机在 Hypervisor 上运行。Hypervisor 实现方式一般是一个特殊定制的 Linux 系统。Xen 和 VMWare 的 ESXi 都属于这个类型。

⑵主机2型虚拟化:物理机上首先安装常规的操作系统,比如 Redhat、Ubuntu 和 Windows。Hypervisor 作为 OS 上的一个程序模块运行,并对管理虚拟机进行管理。KVM、VirtualBox 和 VMWare Workstation 都属于这个类型。

理论上讲:

裸机1型虚拟化一般对硬件虚拟化功能进行了特别优化,性能上比2型要高。

主机2型虚拟化因为基于普通的操作系统,会比较灵活,比如支持虚拟机嵌套。嵌套意味着可以在KVM虚拟机中再运行KVM。

KVM介绍

KVM 全称是 Kernel-Based Virtual Machine。也就是说KVM是嵌入在Linux操作系统标准内核中的一个虚拟化模块,是基于 Linux 内核实现的。
KVM有一个内核模块叫 kvm.ko,只用于管理虚拟 CPU 和内存。KVM是一个独特的管理程序,KVM使用标准Linux调度程序、内存管理器和其他服务,将虚拟技术建立在内核上而不是去替换内核。

KVM架构各有所长

KVM平台架构侧重性能:KVM之间以及与Host Kernel之间对共享区域的访问和映射无需Hypervisor进行授权,故整个访问路径较短使用Linux baremetal内核,无pvops性能损耗; KVM内核模块本身只能提供CPU和内存的虚拟化;

KVM的原理概述

Kvm负责cpu虚拟化+内存虚拟化,实现了cpu和内存的虚拟化,但kvm不能模拟其他设备。qemu模拟IO设备(网卡,磁盘等),kvm加上qemu之后就能实现真正意义上服务器虚拟化。 Qemu是一个模拟器,它向Guest OS模拟CPU和其他硬件,Guest OS认为自己和硬件直接打交道,其实是同Qemu模拟出来的硬件打交道,Qemu将这些指令转译给真正的硬件。由于所有的指令都要从Qemu里面过一手,因而性能较差。

Xen架构

xen作为最优秀的半虚拟化引擎,在基于硬件的虚拟化帮助下,也完全支持虚拟化MS Windows。被设计成一个独立的内核,只需要Linux执行 I/O,并且它有自己的调度程序、内存管理器、计时器和机器初始化程序。Domain 0(特权虚拟机)是其他虚拟机的管理者和控制者,可以构建其他更多Domain,并管理虚拟设备。
Xen平台架构侧重安全性:为保证安全性,各Domain之间对共享区域的访问和映射必须通过Hypervisor授权。

当前Xen已经对如上问题有了相关优化或改进方案

1)增加针对Persistent Grant机制:通过该机制规避Grant操作,单路网络性能即可提升30%-70%,其中TCP场景接近物理网卡线速;

2)引入Driver Domain技术:使用专有HVM domU运行网络后端驱动。UDP场景性能再提升80%;

3)采用PVH Dom0技术:使用硬件虚拟化技术处理特权指令和页表操作。其性能提升效果同上;

XEN介绍

Xen 的 VMM ( Xen Hyperviso ) 位于操作系统和硬件之间,负责为上层运行的操作系统内核提供虚拟化的硬件资源,负责管理和分配这些资源,并确保上层虚拟机(称为域 Domain)之间的相互隔离。Xen采用混合模式,因而设定了一个特权域用以辅助Xen管理其他的域,并提供虚拟的资源服务,该特权域称为Domain 0,而其余的域则称为Domain U。

Xen架构简介

Xen通过hypervisor软件访问物理层硬件,实现在一台单独的计算机上运行多个各自独立、彼此隔离的子操作系统。Hypervisor指挥硬件访问和协调来自各子系统的请求。

Xen环境中,主要是虚拟机控制器(VMM),也叫Hypervisor。Hypervisor层硬件与虚拟机之间,是最先被载入到硬件的第一层。Hypervisor载入就可以部署虚拟机。在Xen中的Domain(域)由Xen控制,可高效的利用CPU资源。Domain可分为Domain0,Domain1……

Domain0:属于有特权的Domian。在虚拟机中,Domain0具有很高的特权,负责一些专门的工作,并提供虚拟的资源服务。由于Hypervisor中不包含任何与硬件对话的驱动,也没有与管理对话的接口,这些驱动就有Domain0完成。

Domain1,Domain2……:属于无特权的Domain,管理员利用Xen工具通过Domain0来创建其他虚拟机Domain1,Domian2……Domain0是其他虚拟主机的管理者和控制者;
Domain内部包含了真是的驱动设备,可以直接访问物理硬件,负责与Xen提供的管理API交互,并通过用户模式下的管理工具来管理Xen的虚拟机环境。

一些概念

1.控制接口——控制接口仅能被Domian0使用,用于帮助Domian0控制管理其它的域。控制接口提供的具体功能包括Domain的创建、销毁、暂停、恢复及迁移,对其他Domain的CPU调度、内存分配及设备访问。

2.安全硬件接口——提供除虚拟CPU和MMU之外的所有硬件虚拟工作,包括DMA/IO、驱动程序、虚拟的PCI地址配置、虚拟硬件中断等。该接口只能具有原生设备驱动的Domain使用,而其他Domain则仅能通过设备通道提供虚拟硬件服务。

3.事件通道——事件通道是子域通信的事件提示机制。事件通道是用于Domian和Xen之间、Domain相互之间的一种异步事件通知机制,用于处理GuseOS中的虚拟中断、物理中断以及Domian之间的通信。

4.虚拟处理器——VCPU为每个Domain建立了VCPU结构,用以接收GuestOS中传递的指令,其中大部分的指令被VCPU直接提交到物理CPU执行,而对于特权指令则需要经过确认和提交Xen代为执行。

5.虚拟内存管理单元——虚拟MMU用于帮助GusetOS完成虚拟地址到机器地址的转换。Xen系统中增加了客户物理地址层,因而地址由原来的二层结构变为三层结构。Xen通过虚拟的MMU仍能使用硬件MMU来完成地址转换。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。