VMware为客户提供了三种虚拟磁盘格式,分别是精简置备(Thin),后置备立即置零(Eager Zeroed Thick)以及后置备延迟置零(Lazy Zeroed Thick)。
那么这三种虚拟磁盘格式有什么区别呢?我们来看VMware对这三种磁盘格式的定义:
- 精简置备 - 精简置备的虚拟磁盘在创建之初只分配一个block的空间,只有当虚拟机开始向虚拟磁盘写入数据的时候,精简置备格式的虚拟磁盘才会分配新的block,然后对新的block进行置零,最后写入数据。
- 后置备延迟置零 - 后置备延迟置零的虚拟磁盘在创建之初就分配了全部的空间,当虚拟机开始向虚拟磁盘写入数据的时候,后置备延迟置零格式的虚拟磁盘会先对写入的区域进行置零,然后再写入数据。
- 后置备立即置零 - 后置备立即置零的虚拟磁盘就同传统的thick磁盘一样,在创建的时候就做了全部的空间分配以及对所分配的空间做了置零,当虚拟机开始向虚拟磁盘写入数据的时候,后置备立即置零格式的虚拟磁盘直接就写入了。
如上所述,三种虚拟磁盘的区别主要就在于是否分配空间以及什么时候分配空间,以及是否写零以及什么时候写零的区别,对于精简置备格式的虚拟磁盘每次在写入数据的时候会有两个额外的动作,分别是分配空间和写零,对于后置备延迟置零格式的虚拟磁盘会有一个额外的动作就是写入数据前会先对对应的区域写零,而对于后置备立即置零格式的虚拟磁盘来说由于在创建的时候就已经做了这些额外的操作,所以在创建完成以后对磁盘的写入不会带来额外的开销。因此对于虚拟机的IO性能来说,后置备立即置零的虚拟磁盘>后置备延迟置零的虚拟磁盘>精简置备的虚拟磁盘。也正是由于这三种磁盘格式的原理不同,在创建虚拟磁盘的时候,创建速度也是不同的,精简置备>后置备延迟置零>后置备立即置零。
根据华为经验和测试结果,不同格式的虚拟磁盘在创建完成后对于新写入的数据性能有一定的差异,但是当所有LBA都被写过一次之后,对于覆盖写的场景,这三种磁盘格式的性能是一致的,基于以上事实,华为对于虚拟磁盘的推荐为:
- 对于性能无特殊要求的普通虚拟机使用场景,推荐使用精简置备格式的虚拟磁盘,因为精简置备的磁盘具有最高的灵活性。
- 对于时延和性能特别敏感的关键应用,推荐使用后置备立即置零格式的虚拟磁盘,因为该格式提供最优的性能。
华为的推荐适用于一般场景,对于具体的客户的需求,客户需要从性能,数据保护,容量以及vsphere的版本等多方面来考虑以及权衡,比如vsphere 6.7版本,VMware新增加了对unmap自动空间回收指定速率功能,但是指定速率这个功能只对精简置备的虚拟磁盘生效,对于后置备立即置零以及后置备延迟置零格式的虚拟磁盘格式都无法生效,从而导致ESXi主机以最大的速率向阵列下发unmap命令,带宽高达数GB每秒,给阵列带来很大的压力,从而影响虚拟机业务。
摘录自:华为OceanStor Dorado 面向VMware场景最佳实践
标签:写入,置备,虚拟,格式,精简,磁盘,VMware 来源: https://www.cnblogs.com/pipci/p/15790510.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。