【VMware相关】VMware VAAI特性说明

一、前言

参考链接:
VMware Docs 存储硬件加速
VMware vSphere APIs: Array Integration (VAAI)
vSphere 6.7 Storage Guide

在虚拟化环境中,从资源的角度来看,传统的存储操作是昂贵的。存储系统可以比ESXi主机更有效地执行诸如克隆和快照之类的功能。

VAAI (vSphere APIs for Array Integration)是 VMware 提供的 API 框架,用于ESXi主机和存储系统之间的通信,它通过定义一组存储原语(Storage Primitives)提供存储硬件加速功能,将涉及到数据跨数据存储(Datastore)移动的操作,如快照、克隆、置零等存储密集型操作卸载(offload)到存储系统来做,以提升数据拷贝的效率,同时减少ESXi主机对计算资源和带宽的消耗。
注:各存储厂商可与VMware做兼容性认证,如通过VMware VAAI认证测试,可通过VMware HCL version 2查询所有获得VAAI认证的存储厂商列表

VAAI (vSphere APIs for Array Integration)是vSphere与存储系统结合的一组API,支持块存储(Block Storage Devices)和文件存储(NAS Devices ),主要包括Hardware Acceleration APIsArray Thin Provisioning APIs两部分,前者主要提供硬件加速功能,后者主要提供空间管理功能

二、Hardware Acceleration APIs

参考文档:Chapter 24 Storage Hardware Acceleration.

硬件加速接口,这部分主要提供硬件加速功能,使ESXi主机能够与兼容的存储系统集成,ESXi主机可以将部分虚拟机和存储的管理操作卸载给存储系统。
有了存储硬件的帮助,ESXi主机执行这些操作的速度更快,消耗的CPU、内存和带宽更少。

1、支持范围

当支持硬件加速功能时,ESXi主机可以获得硬件帮助,更快更有效地执行以下操作任务

  • 使用Storage vMotion迁移虚拟机
  • 从模板部署虚拟机
  • 克隆虚拟机或模板
  • VMFS对虚拟机文件进行集群锁和元数据操作(如虚拟机批量关机、开机)
  • 分配厚置备虚拟磁盘
  • 创建容错虚拟机(fault-tolerant)
  • 在NFS存储上创建或克隆厚置备虚拟磁盘

2、前提条件

硬件加速功能只有在使用合适的ESXi主机和存储系统结合时才能发挥作用,要求如下:

ESXiBlock Storage DevicesNAS Devices
ESXi(>vSphere 5.x)支持T10 SCSI标准,或支持VAAI-Block支持VAAI-NAS

注:如果SAN和NAS支持硬件加速,但与VMware对接时使用了中间设备(如存储虚拟化设备、I/O加速设备、加密设备等),那么中间设备也必须要支持硬件加速并经过适当的认证

3、状态说明

对于每个存储设备和数据存储,vSphere客户端会显示硬件加速支持情况,状态通常有未知受支持不受支持三种,初始值为未知
当存储系统不支持或部分支持ESXi主机操作时,ESXi主机会恢复到原始的方式执行不受支持的操作

3.1、Block Storage Devices
  • 当ESXi主机执行卸载(offload)操作成功之后,则块设备状态将变为受支持
  • 当ESXi主机执行卸载(offload)操作失败之后,则块设备状态将变为不受支持
  • 当块设备提供了部分硬件加速支持,则块设备状态将保持为未知
3.2、NAS Devices
  • 当ESXi执行可以至少执行一次卸载(offload)操作成功之后,则NAS设备状态将变为 受支持

4、接口说明(VAAI-Block)

VAAI-Block硬件加速功能支持Full copyBlock zeroingHardware assisted locking三个接口,默认启用硬件加速功能

4.1、Full copy

也被称为 clone blockscopy offload,当进行虚拟机克隆、虚拟机迁移和从模板部署虚拟机等操作时,VAAI可以避免ESXi主机读取和写入数据,ESXi主机将数据复制工作通过特殊指令(SCSI EXTENDED_COPY指令,该指令携带待复制数据的源、目的地址,待复制数据总空间)卸载到存储系统内部进行,节省处理时间,减少ESXi主机计算和网络资源消耗
注:
a、涉及到数据复制,源端存储和目标端存储须为同一个存储系统同一个target
b、虚拟机读写过程中不能进行Full copy操作,故虚拟机需处于关机状态

4.2、Block zeroing

也被称为write same,当进行虚拟磁盘创建(尤其是厚置备置零格式)、虚拟磁盘格式化等操作时,ESXi主机下发特殊指令(SCSI WRITE_SAME指令,该指令携带待格式化的数据范围、数据模板)给存储系统,由存储系统将大量块置零,以提供新分配的存储,避免ESXi主机与存储系统大量数据交互

4.3、Hardware assisted locking

也被称为atomic test and set (ATS),当进行虚拟机批量开关机、虚拟机批量创建等批量操作时,存储系统锁住某一个扇区,而不是整个锁住整个LUN,从而提高并发操作性能
VMware将LUN格式化为VMFS文件系统,提供给多个虚拟机使用,当存在多个虚拟机同时访问VMFS文件系统时存在写冲突,故需要使用锁机制仲裁控制写入过程。传统方式下,某个虚拟机读写时会锁住整个VMFS系统,导致其他虚拟机不能读写,无法实现多虚拟机并发读写。ATS锁可以缩小锁机制锁定范围,只对写的单个数据块上锁,从而提高整个VMFS系统并发IO

5、接口说明(VAAI-NAS)

VAAI-NAS硬件加速功能支持Full File CloneReserve SpaceArray-based SnapshotsExtended Statistics接口,支持NFS存储v3和v4.1两个NFS版本
对于NAS设备,硬件加速集成是通过特定供应商实现的NAS插件,这些插件通常由供应商创建,并通过网站作为VIB包分发,因此,如需要使用VAAI-NAS硬件加速功能,需要安装对应NAS设备供应商提供的NAS插件

5.1、Full File Clone

完整文件克隆,支持NAS设备克隆虚拟磁盘文件的能力,这个操作类似于VMFS块克隆,只是NAS设备克隆的是完整的文件,而不是文件分片

5.2、Reserve Space

保留空间,支持NAS设备为厚置备虚拟磁盘文件分配存储空间
通常来说,当使用NFS数据存储创建虚拟磁盘,NAS服务器决定分配策略,大多数NAS服务器分配策略为精简配置(thin),然而,保留空间操作可以指示NAS设备使用特定厂商机制为虚拟磁盘预留空间,因此,可以在NFS数据存储上创建厚置备虚拟磁盘

5.3、Array-based Snapshots

基于阵列的快照,虚拟机快照创建可以卸载到存储阵列中进行
注:Storage DRS不检测NFS存储基于阵列的快照,因此,当执行克隆具有基于阵列快照的虚拟机等操作时,Storage DRS不提供任何建议

5.4、Extended Statistics

扩展统计信息,支持NAS设备上空间使用的可见性,此功能对于精简配置非常有用

6、开关控制

6.1、Block Storage Devices
查询VAAI支持情况
  • web操作
    登录vSphere Client,选中ESXi主机,选择配置-存储设备,查看存储设备硬件加速状态显示
    在这里插入图片描述

  • 命令行操作
    ESXi主机后台执行esxcli storage core device vaai status get -d <device-id>命令查询

[root@node46:~] esxcli storage core device vaai status get -d naa.60000000000000000e00000000010002
naa.60000000000000000e00000000010002
   VAAI Plugin Name: 
   ATS Status: supported
   Clone Status: supported
   Zero Status: supported
   Delete Status: supported
关闭VAAI硬件加速
  • web操作
    登录vSphere Client,选中ESXi主机,选择配置-高级系统设置,修改DataMover.HardwareAcceleratedMoveDataMover.HardwareAcceleratedInitVMFS3.HardwareAcceleratedLocking 参数值为0

  • DataMover.HardwareAcceleratedMove:启用硬件加速 VMFS 数据移动(需要兼容硬件)

  • DataMover.HardwareAcceleratedInit:启用硬件加速 VMFS 数据初始化(需要兼容硬件)

  • VMFS3.HardwareAcceleratedLocking:启用硬件加速的 VMFS 锁定 (需要使用符合要求的硬件)。在禁用此选项之前,请参见 http://kb.vmware.com/kb/2094604
    在这里插入图片描述

6.2、NAS Devices
查询VAAI支持情况
  • web操作
    登录vSphere Client,选中ESXi主机,选择数据存储,查看当前NFS存储硬件加速状态即可
    在这里插入图片描述

  • 命令行操作
    ESXi主机后台执行esxcli storage nfs list命令查询

[root@node46:~] esxcli storage nfs list
Volume Name  Host          Share                Accessible  Mounted  Read-Only   isPE  Hardware Acceleration
-----------  ------------  -------------------  ----------  -------  ---------  -----  ---------------------
NAS          192.16.21.41  /cephfs/NAS        true     true      false  false  Not Supported

三、Array Thin Provisioning APIs

参考文档:ESXi and Array Thin Provisioning

阵列精简配置接口,这部分主要提供空间管理功能,监控精简配置存储阵列的空间使用情况,以防止出现空间不足的情况,可以进行空间回收操作

1、支持范围

可以在ESXi中使用精简配置存储阵列,ESXi主机集成了基于块的存储,完成以下任务:

  • ESXi主机可以识别底层精简LUN,监控它们的空间使用情况,避免耗尽物理空间。LUN空间可能发生变化,例如,VMFS存储扩展,或者使用Storage vMotion将虚拟机迁移到精简LUN。ESXi主机会在物理LUN空间破坏和空间不足情况下发出警告
  • VMFS6可以自动执行unmap命令从存储阵列回收未使用的空间,VMFS5只支持手动回收空间的方式
    注:ESXi主机不支持在存储设备上启用或禁用精简配置,通常在删除虚拟机场景下会触发unmap操作回收空间

2、前提条件

若需要使用精简配置监控和空间回收特性,需要遵循以下要求:

  • 选择合适的ESXi版本
Supported thin provisioning componentsESXi 6.0 and earlierESXi 6.5 and later
Thin provisioningYesYes
Unmap command originating form VMFSManual for VMFS5. Use esxcli storage vmfs unmapAutomatic for VMFS6
Unmap command originating from guest OSYes. Limited supportYes (VMFS6)
  • 存储系统支持VAAI,包括精简配置(thin provisioning)和空间回收(space reclamation)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值