云计算——内存虚拟化与I/O虚拟化

简介: 云计算——内存虚拟化与I/O虚拟化

前言

本章将会讲解云计算,内存虚拟化的知识

一.内存虚拟化

内存虚拟化抽象了物理内存,虚拟机每个进程都被赋予一块连续的,超大的虚拟内存空间。

根据系统结构来定,32位系统寻址空间为2^32,64位系统为2^64。

1.内存虚拟化类型

  • 全虚拟化
  • 半虚拟化
  • 硬件辅助内存虚拟化

全虚拟化

为每个VM维护一个影子页表记录虚拟化内有与物理内存的映射关系。VMM将影子页表提交始CPU的内存管理单元MMU进行地址转换。VM的页表无需改动。


半虚拟化

采用页表写入法,为每个VM创隆一个页表并向点拟化层注册,VM运行过程中VMM不断管理和维护该页表,确保VM能直接访问到合适的地址。


硬件辅助内存虚拟化

EPT/NPT是内存管理单元MMU的扩展,CPU硬件一个特性,通过硬件方式实现GuestOS物理内存地址到主机物理内存地址的转换,系统开销更低,性能更高。


2.内存复用技术

内存复用是指在服务器物理内存一定的情况下,通过综合运用内存复用技术对内存进行分时复用。

内存复用技术有:

  • 内存气泡:虚拟化层将较空闲VM内存,分配给内存使用较高的虚拟机。内存的回收和分配由虚拟化层实现,虚拟机上的应用无感知,提高物理内存利用率。
  • 内存交换:将外部存储虚拟成内存给VM使用,将VM上长时间未访问的数据存放到外部存储上,建立映射关系。VM再次访问这些数据是通过映射在与内存上的数据进行交换。
  • 内存共享:VM只对共用的内存(共享数据内容为零的内存页)做只读操作,有写操作时运用写时复制(VM有写操作时,开辟另一空间,并修改映射)。

3.内存复用Qos

内存资源Qos有:

内存预留:VM预留最低的物理内存

内存份额:适用资源复用场景,按比例分配内存资源。


4.内存复用举例

物理内存6G,部署三台虚拟机。

未开启内存复用每台只能分得2G内存。

开启了内存虚拟化(这里以物理内存150%)物理内存由6G变为逻辑上的9G(虚拟上的9G)则每台虚拟机内存为3G.


二.I/O虚拟化

1.I/O虚拟化类型


全虚拟化

通过软件模拟的形式模拟IO设备,不需要硬件支持,对虚拟机的操作系统也不需要修改(因为模拟的都是一个常见的硬件网卡,如IntelE1000,主流操作系统一般都自带这些驱动,因此默认情下虚拟机不需要再安装驱动。缺点就是性能差了

半虚拟化

由Hypervisor提供资源调用接口。VM通过特定的调用接口与Hypervisor通信,完成获取完整l/O资源控制操作。(需修改内核及驱动程序,存在移植性和适用性问题,导致其使用受限。)

Pass-through

Hypervisor直接把硬件PCI设备分配给虚拟独占使用,性能当然好啦。但是浪费现件设备,且配置复杂,首先需要在hypervisor指定通过PClid方式分配给指定的虚拟机,然后虚拟机再识别到设备再安装驱动来使用。

硬件辅助虚拟化

通过硬件的辅助可以让虚拟机直接访问物理设备,而不需要通过VMM。最常用的就是SR-IOV(Single Root I/OVirtualizmion)单根I/O虚拟化标准,该技术可以直接虚拟出128-512网卡,可以让虚拟机都拿到一块独立的网卡,直接使用I/O资源。


2.I/O环适配功能

正常我们的I/O分为:

  1. 非密集I/O:在一秒钟读的次数很少。
  2. 密集I/O:在一秒钟内完成了多次读,但每次读取的内容是少量的。

I/O环适配功能主要用来提升大块(44K以上)多队列(32队列深度以上)类型的IO密集型业务的I/O性能(就是将存储设备资源利用率提高)。

用户可通过开启I/O环适配功能,提升I/O性能。


创作不易,求关注,点赞,收藏,谢谢~

目录
相关文章
|
Linux KVM 虚拟化
云计算——ACA学习 虚拟化技术产品介绍
云计算——ACA学习 虚拟化技术产品介绍
314 0
|
27天前
|
机器学习/深度学习 监控 安全
解密虚拟化弹性内存:五大核心技术与实施策略
本文深入解析虚拟化环境中实现内存弹性管理的五大核心技术与实施策略。内容涵盖内存架构演进、关键技术原理、性能优化方法及典型问题解决方案,助力提升虚拟机密度与资源利用率。
74 0
|
弹性计算 安全 数据库
【转】云服务器虚拟化内存优化指南:提升性能的7个关键策略
作为云计算服务核心组件,虚拟化内存管理直接影响业务系统性能表现。本文详解了内存优化方案与技术实践,助您降低30%资源浪费。
76 0
【转】云服务器虚拟化内存优化指南:提升性能的7个关键策略
|
2月前
|
存储 安全 虚拟化
全面解析服务器虚拟化:云计算时代的核心技术架构
服务器虚拟化是云计算的核心技术,通过资源池化提升IT效率。本文详解其原理、部署优势及在数字化转型中的关键作用,涵盖技术架构、应用场景与选型指南,助力企业构建高效灵活的云环境。
313 0
|
6月前
|
安全 大数据 虚拟化
随着云计算和大数据技术的发展,Hyper-V在虚拟化领域的地位日益凸显
随着云计算和大数据技术的发展,Hyper-V在虚拟化领域的地位日益凸显。作为Windows Server的核心组件,Hyper-V具备卓越的技术性能,支持高可用性、动态迁移等功能,确保虚拟机稳定高效运行。它与Windows深度集成,管理便捷,支持远程管理和自动化部署,降低管理成本。内置防火墙、RBAC等安全功能,提供全方位安全保障。作为内置组件,Hyper-V无需额外购买软件,降低成本。其广泛的生态系统支持和持续增长的市场需求,使其成为企业虚拟化解决方案的首选。
|
11月前
|
存储 分布式计算 分布式数据库
云计算和虚拟化技术
云计算是指把计算资源、存储资源、网络资源、应用软件等集合起来,采用虚拟化技术,将这些资源池化,组成资源共享池,共享池即是“云”。
347 64
|
12月前
|
存储 边缘计算 资源调度
云计算与虚拟化是什么关系
云计算与虚拟化是什么关系
390 2
|
12月前
|
存储 边缘计算 大数据
云计算和虚拟化有什么区别
云计算和虚拟化有什么区别
744 1
|
11月前
|
存储 Kubernetes 虚拟化
计算机必背单词——云计算和虚拟化
本文介绍了程序员需要掌握的云计算和虚拟化相关技术词汇,包括AWS、Azure、GCP等云服务平台,Docker、Kubernetes等容器技术,以及IaaS、PaaS、SaaS等云服务模型。通过学习这些词汇,希望能拓宽读者的知识面并加深对相关概念的理解。
173 0
|
安全 Devops 虚拟化
【专栏】虚拟化技术与云计算平台 OpenStack:硬件虚拟化、操作系统级虚拟化和容器化
【4月更文挑战第28天】本文探讨虚拟化技术原理,如硬件虚拟化、操作系统级虚拟化和容器化,以及开源云计算平台OpenStack如何利用这些技术提供优势。OpenStack支持多种虚拟化技术,具备开源灵活性、多租户架构、可扩展性、插件式设计和成本效益。未来,OpenStack将在容器化、DevOps、跨云策略和安全合规性方面发挥更大作用,助力企业数字化转型。
900 4