谈谈VMFS的特性

VMFS(Virtual Machine File System)是VMware自主研发的集群文件系统(CFS,Cluster File System)。由ESX/ESXi 创建和管理,用于存放虚拟机的文件夹,同时可以由多个ESX/ESXi 主机并发访问和读写,有别于其他文件系统,比如Windows的NTFS(不能并发读写)。同时VMFS支持动态扩展(横向和纵向),也就是说在虚拟机不关机的情况下对VMFS的datastore进行扩容。

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--基于存储策略的管理)会在下一篇详细介绍,敬请期待~

 

参考资料:

https://storagehub.vmware.com/t/vsphere-storage/vmware-vsphere-vmfs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值