在虚拟服务器环境中,其存储硬件和Hypervisor管理程序的通讯非常复杂。VMware为简化其通讯并提高效率,研发了vStorage阵列集成应用接口(VAAI)。该应用接口为Hypervisor管理程序和存储设备规范了不同的职责,使其各自关注工作效能最大化,即Hypervisor致力于虚拟化相关的工作而存储相关的工作则留给存储阵列。

通过VAAI,存储阵列厂商可以直接将其存储硬件及应用程序和vSphere进行集成。VAAI使得某些存储层的工作,诸如克隆等,可以在存储阵列上离线运行,这较在主机端完成更为高效。主机端可以简单地将相关工作转到存储阵列上完成,而主机端只负责过程监控,而非使用主机端的资源来完成(在VAAI之前的产品即是如此)。存储阵列更擅长此类数据工作,可以较主机端更为快速的完成相关服务请求。

vStorage阵列集成应用接口工作原理

VAAI目前使得vSphere对于某些存储相关操作更为高效,主要体现在以下三个领域:

离线拷贝。拷贝虚拟磁盘文件的操作,比如虚拟机克隆或通过模板部署新的虚拟机,可以通过阵列离线进行的方式实现硬件加速,而不是在ESX服务器端进行文件级的拷贝操作。这种技术同样可以应用于Storage vMotion功能,将一个虚拟机的数据从一台存储移动到另一台。VMware的Fully Copy可以极大程度上提升如何拷贝相关的操作,这可以非常快速地部署新虚拟机。这对于虚拟机频繁创建提供或在同一时刻需创建大量虚拟机的应用场合尤其有用。

离线并发写。在所有虚拟磁盘初始写入之前,必须进行清零操作(一个没有如何数据的磁盘数据块里有空值;这时要在该磁盘数据块中写入零,以清除所有可能从之前删除的虚拟机中遗留的数据。默认的“慢速清零”虚拟磁盘(具体数据块根据是否需要初始写入,进行清零)直到有首次写入操作请求时才对该磁盘数据块进行清零操作。这造成了极大的性能影响,而且陈旧的数据可能会遗留给其它客户端操作系统。“提前清零”虚拟磁盘(所有的磁盘数据块在创建时一次性清零)可以用于取代原有方式以取消原首次写入磁盘数据块时的性能影响,并消除任何原有虚拟机数据保存在其它磁盘数据块上的可能性。在该格式化过程中,大量的零数据从ESX/ESXi主机发送到要清零的阵列上的磁盘数据块(因此也叫“并发写”),这可能是一项耗时且耗资源的过程。通过VMware Block Zeroing操作,阵列可以处理所有的清零过程,更为高效。磁盘阵列无需让主机端等待操作完成,其立刻提示操作完成,然后处理清零操作,这期间不涉及到主机端的任何操作。

硬件辅助锁定。VMFS文件系统允许多主机对同一共享逻辑卷的并发访问,这是vMotion运行的必要条件。VMFS有一个内置的安全机制,防止虚拟机被超过一台的主机同时运行或修改。vSphere采用“SCSI预留”作为其传统文件锁定机制,这种方式在某项存储相关的指令操作期间,比如增量快照增长或发生时,均使用“RESERVE SCSI”命令锁定整个逻辑卷。这有助于防止冲突,不过也拖延了存储工作的完成,因为主机必须等待逻辑卷的解锁命令“RELEASE SCSI”才能继续写入。使用Atomic Test and Set(ATS)命令是一种硬件辅助的锁定机制,可以离线地对存储阵列加锁,这样就可以对个别磁盘数据块而非整个逻辑卷。这样可以使得余下的逻辑卷在锁定期间继续被主机访问,十分有助于避免性能下降。该功能同时通过VMFS数据存储,允许同一集群中部署更多的主机,以及更多的虚拟主机部署在同一个逻辑卷上。

VAAI的厂商支持

目前,vStorage阵列集成应用接口只针对基于数据块的存储阵列(光纤存储或iSCSI)有效,并不支持NFS存储。厂商对于VAAI的支持一更不相同,某些厂商,诸如EMC,很快地支持了这些功能,而另一些厂商花费了很长的时间将其整合到他们的所有存储阵列型号中。你可以通过查看VMware对光纤存储的兼容列表来了解哪些存储阵列支持特定的vStorage应用接口特性。

通过VMware光纤存储兼容列表,你可以搜索你的存储阵列是否可以支持VAAI,如果这样,其它的应用接口也是支持的。

该列表易于搜索,并告知各存储阵列是否支持多路径插件,以及支持何种VAAI特性等信息。如果你的存储阵列目前尚不支持VAAI,可以和供应商确认其是否有这方面的规划。你也可能要升级更新发布的vSphere或更新的存储阵列型号来支持VAAI。

关闭VAAI

vStorage阵列集成应用接口在vSphere 4.1版中默认激活(不过在vSphere 4.0版中并不支持),并且只要存储阵列支持,该功能就会被激活。不过你也可能希望关闭VAAI功能,比方说你发现你的存储阵列无法兼容或出于测试的需要,你要比较VAAI打开和关闭的性能比较。你可以使用如下高级主机设置功能逐个关闭这些功能:配置->软件->vSphere客户端中高级设置菜单。

关闭离线拷贝,设置DataMover.HardwareAcceleratedMove为0。

关闭离线并发写,设置DataMover.HardwareAcceleratedInit为0。

关闭硬件辅助锁定,设置VMFS3.HardwareAssistedLocking为0。

你可以通过“配置->软件->vSphere中的高级设置菜单关闭VAAI设置

VAAI为特定的存储操作提供了极大的性能改善,并且已有大量存储厂商使用了这种应用接口。VMware将在每次发布新的vSphere时持续改善vStorage应用接口;我们期待在新版本中可以看到更多应用接口集成在NFS增强的领域,离线快照领域以及阵列管理领域。

转载于:https://blog.51cto.com/hujizhou/954323

VAAI 工作原理及存储阵列支持相关推荐

  1. 游戏机制新设计工具(Machinations)工作原理

    电子书推荐:<别怕,Excel VBA其实很简单>pdf >> 下载地址 http://dl.dbank.com/c0zq4q6vrm (本文为游戏邦/gamerboom.co ...

  2. 服务器硬原理件结构和,1.服务器结-构及工作原理.ppt

    1.服务器结-构及工作原理 总线技术介绍-PCI-Express 什么是PCI-Express 是一种新型的串行技术,是并行PCI(包括PCI和PCI-X)技术的继任技术 PCI-Express 优势 ...

  3. 简谈 SDRAM的工作原理

    今天和大侠简单聊一聊SDRAM的工作原理,话不多说,上货. SDRAM:Synchronous Dynamic Random Access Memory,同步动态随机存储器,同步是指Memory工作需 ...

  4. java的工作原理你知道吗_每天用Mybatis,但是Mybatis的工作原理你真的知道吗?

    近来想写一个mybatis的分页插件,但是在写插件之前肯定要了解一下mybatis具体的工作原理吧,于是边参考别人的博客,边看源码就开干了. 核心部件:SqlSession Executor Stat ...

  5. 路由和交换机工作原理

    路由器与交换机的工作原理 计算机网络往往由许多种不同类型的网络互连连接而成.如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种"互连"并没有什么实际意义.因 ...

  6. 报文如何截取时间_5种报文、8种邻居状态机详解OSPF工作原理

    上一章节介绍了OSPF相比RIP具有无环路.路由收敛速度快.可扩展性好的特点.知识卡片 | 链路状态路由协议OSPF凭什么会取代RIP? 我们知道路由协议的最终目的是为了计算最优路由加入路由表来指导I ...

  7. ARKit从入门到精通-ARKit工作原理及流程介绍

    2017-06-15 坤小 Cocoa开发者社区 转载请注明出处:http://www.jianshu.com/p/0492c7122d2f 1.1-写在前面的话 1.2-ARKit与SceneKit ...

  8. 点歌服务器工作原理,KTV点歌系统方案概述

    <KTV点歌系统方案概述>由会员分享,可在线阅读,更多相关<KTV点歌系统方案概述(7页珍藏版)>请在人人文库网上搜索. 1.一)目前点歌系统的主流方式目前,可以实现的KTV系 ...

  9. Struts2的工作原理

    Struts2是在Struts1的基础上发展而来的,Struts是WebWork和Struts1的集合,采用的正是WebWork的核心,更多的是WebWork. 下载的Struts2源代码文件 主要的 ...

  10. 深入理解 Cache 工作原理

    欢迎关注方志朋的博客,回复"666"获面试宝典 大家好,今天给大家分享一篇关于 Cache 的硬核的技术文,基本上关于Cache的所有知识点都可以在这篇文章里看到. 关于 Cach ...

最新文章

  1. 页面调度框架 justep.Shell
  2. mysql-Mac终端下遇到的问题总结
  3. .Net异步编程知多少
  4. java输入一个数字输出_java 输入一个数字,反转输出这个数字的值(实现方法)
  5. python一些简单操作_python列表的基本操作有哪些
  6. caffeine 线程私有的ReadBuffer实现
  7. @程序员,你处在食物链哪级?有人跑车游轮到处玩,有人被房价羞辱,被平庸折磨...
  8. 【算法学习笔记】81.动态规划 分类讨论 SJTU OJ 1075 括号匹配升级
  9. Qt网络编程实现TCP通信
  10. 助教日志—请沈航13级同学将GIT地址和CNBLOG地址发到这篇博文的评论中
  11. 沙普利算法java实现_Java实现婚姻稳定匹配Gale- Shapley算法
  12. 2021年危险化学品经营单位安全管理人员新版试题及危险化学品经营单位安全管理人员考试试卷
  13. 联想小新Air2020ill版换硬盘及安装Win11详细过程
  14. 暮光之城破晓 - 看看会发生什么
  15. Hadoop:INFO mapreduce.Job: Running job
  16. 微信支付接入-弹出支付框输入密码后一直在转圈,20s后提示:支付失败,请稍后再试
  17. 从零开始手写VIO 第二章 IMU传感器
  18. 系统从win7更新到win10没有声音(扬声器一直显示未插入)
  19. java串口读取数据设置超时时间,附详细答案
  20. 3dmax入门教程(一)

热门文章

  1. MS AJAX Control Toolkit 学习
  2. NoteBurner iTunes DRM Audio Converter for Mac(苹果DRM音频转换器)
  3. MusicBrainz Picard for Mac(跨平台音乐标记器)免费版
  4. (日常搬砖)ubuntu18.04风扇断断续续响,提示 ‘GPU fan error‘
  5. JS 逻辑中断(一)
  6. Maven For Mac下的环境搭建
  7. MES系统如何实现工厂无纸化生产?
  8. 图片水印 之 二
  9. 面试 其实就是短时间内展现出你最好的自我
  10. UIAlertView用法