VMFS随着ESX/ESXi 的版本升级也会随之升级,从早期的VMFS1(ESX1.x),VMFS2(ESX2.x),VMFS3(ESX3.x和ESX4.x)到后来的VMFS5(ESXi5.x和ESXi6.0)和VMFS6(ESXi6.5和ESXi6.7)。新的版本会带来新的特性,比如VMFS5的分区格式由VMFS3的MBR变为GPT,块大小变为1M;VMFS6的块大小变为1M和512M,支持空间自动回收等等。下边我们来对比一下这几个版本的区别(从VMFS3开始):
VMFS3:
ESX/ESXi版本:ESX 3.0开始支持,ESXi 6.7不再支持。
创建与挂载:ESX 3.x和ESXi 5.x下可以创建和挂载;ESXi 6.0和ESXi 6.5不能创建但是可以挂载;ESXi 6.7下挂载的VMFS3会被自动升级到VMFS5。
分区格式:MBR(Master Boot Record)
支持的最大LUN:2T
block size(块大小):1M、2M、4M、8M。
subblock(子块):64K
虚拟机文件最大大小:256G、512G、1T、2T。(对应上边相应的block size)
快照增量的sparse格式:VMFSSparse(*-delta.vmdk)
AF硬盘支持:512n
VMFS5:
ESX/ESXi版本:ESXi 5.0开始支持。
创建与挂载:ESXi 5.x和ESXi 6.x下可以创建和挂载。
分区格式:GPT(GUID Partition Table)
支持的最大LUN:64T
block size(块大小):1M。
subblock(子块):8K
虚拟机文件最大大小:62T。
快照增量的sparse格式:当vmdk文件小于2T时,是VMFSSparse格式(*-delta.vmdk);当vmdk文件大于或者等于2T时,是SESparse格式(*-sesparse.vmdk)。
AF硬盘支持:512n、512e(非本地)
VMFS6:
ESX/ESXi版本:ESXi 6.5开始支持。
创建与挂载:ESXi 6.5和ESXi 6.7下可以创建和挂载。
分区格式:GPT(GUID Partition Table)
支持的最大LUN:64T
block size(块大小):1M和512M。
subblock(子块):8K
虚拟机文件最大大小:62T。
快照增量的sparse格式:SESparse(*-sesparse.vmdk)
AF硬盘支持:512n、512e、4Kn(ESXi 6.7的本地磁盘,ESXi 6.5不支持)
顺便提一下,由于版本不同可能会涉及到升级的问题,VMFS3升级到VMFS5可以在线升级(in-place),分区格式和块大小不改变,但是VMware不支持从VMFS5直接升级到VMFS6,必须删除VMFS5的datastore再新建VMFS6。但是可以把虚拟机从VMFS5迁移到VMFS6。
另外,VMFS6支持4Kn硬盘,但是目前有一些限制:
只支持本地的SAS和SATA
不支持SSD,NVMe和RDM磁盘
从4Kn硬盘启动只支持UEFI
不支持第三方多路径插件
除了以上基本的特征区别之外,VMFS6还有功能的增强,比如磁盘文件的创建速度,并发的操作,以及精简LUN空间的自动回收。其中VMFS5也可以支持精简LUN空间的回收,但是必须是管理员手工执行命令 esxcli storage vmfs unmap,参数如下:
VMFS6可以支持精简LUN空间的自动回收,在创建datastore的时候,可以选择回收的优先级,在图形界面下(vSphere Client和Web Client)只能设置Low(默认)和None(禁用),如下图所示:
但是可以通过命令行设置优先级为Medium和High,进到ESXi Shell:
在vSphere 6.7下,通过vSphere Client(HTML5)可以设置固定的回收速率,如下图:这样可以根据用户场景进行修改,防止出现高峰时间存储压力过大。注:设置速率只能在vSphere Client下,Web Client不支持该功能(Web Client下只能设置优先级为Low或者None)。
实现VMFS6下自动回收也必须满足条件:
底层的LUN必须是精简配置(Thin)
存储支持VAAI
课外阅读:
上文提到在VMFS6下有两种规格的块大小,1M和512M。但是管理员在创建datastore的时候只能选择1M的block,512M的block由ESXi自动创建,但是会遵循一定的规律。
首先,1M的block被称为小文件块(small-file block),512M的block被称为大文件块(large-file block),VMFS6以集群(cluster)的方式管理这些block:
SFB Cluster:大小为512M,由512个小文件块组成。
LFB Cluster:大小为8G,由16个大文件块组成。
然后,当创建一个datastore时,前64G会被分配小文件块,其余的被分配为大文件块,如果最后的空间不足8G,则会被转换为小文件块。如下图所示:当创建100G大小的datastore时,前64G是小文件块(128个SFB集群),随后32G是大文件块(4个LFB集群),最后4G是小文件块(8个SFB集群)。注:当前64G小文件块用完时,后边的64G大文件块空间会被转换为小文件块。
以上是关于VMFS的详细特征,关于存储策略的介绍(SPBM--基于存储策略的管理)会在下一篇详细介绍,敬请期待~