如何确定VMware VMFS数据存储的大小?

日期: 2009-03-22 作者:Eric Siebert翻译:王越 来源:TechTarget中国 英文

为VMware虚拟机文件系统(VMFS:Virtual Machine File System)选择合适的数据存储大小非常重要,因为合适的数据存储大小一旦定下来,后期就很难修改。如何正确地计算数据存储空间大小取决于某些特定因素,这些因素用户可能以前没有考虑到。这不仅仅是虚拟磁盘文件(用户希望把这些虚拟磁盘文件放置在一个单独的逻辑单元号上)数量所映射的全部大小,用户也需要考虑组成一台虚拟机的其它相关文件。   对虚拟机进行的一些特定操作,如挂起、加电和创建快照,同时也创建其它相关文件。

所以不要在同一个卷上过多部署虚拟机,由于输入和输出(I/O)竞争和LUN的锁定技术,如果在同一个卷上部署太多虚拟……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

为VMware虚拟机文件系统(VMFS:Virtual Machine File System)选择合适的数据存储大小非常重要,因为合适的数据存储大小一旦定下来,后期就很难修改。如何正确地计算数据存储空间大小取决于某些特定因素,这些因素用户可能以前没有考虑到。这不仅仅是虚拟磁盘文件(用户希望把这些虚拟磁盘文件放置在一个单独的逻辑单元号上)数量所映射的全部大小,用户也需要考虑组成一台虚拟机的其它相关文件。

  对虚拟机进行的一些特定操作,如挂起、加电和创建快照,同时也创建其它相关文件。所以不要在同一个卷上过多部署虚拟机,由于输入和输出(I/O)竞争和LUN的锁定技术,如果在同一个卷上部署太多虚拟机会就会影响到虚拟机性能。在本文中,TechTarget中国的虚拟化专家Eric Siebert将罗列出在计算VMFS数据存储大小时需要考虑到的多方面因素,然后给出一个计算虚拟基础架构数据存储大小的公式。

  计算每一个LUN上的虚拟机

  我并不推荐使用多个LUN来扩展VMFS数据存储,相反我更倾向于为VMFS卷创建一个单独的LUN,这就是需要先计算合适大小的原因。因此,一个单独LUN上究竟有多少个虚拟机呢?答案当然不是只有一个,通常情况下每一个LUN上会部署14到16个虚拟机,具体数目与VM产生的磁盘输入输出和使用快照的频率有关。如果平台上所有虚拟机输入输出都比较少,如网站和应用程序服务器,就可以在一个LUN上部署多个虚拟机。

  同理,如果平台上虚拟机输入输出操作非常频繁,如邮件和数据库服务器,就需要在一个LUN上部署较少量的虚拟机。如果使用快照的频度比较高,并且每台虚拟机运行时间变化也比较大的话,也不要在一个LUN上部署太多虚拟机。如果VMkernel对VMFS元数据有所改动,也就是所谓的SCSI预留,不断增长的快照就会引起宿主虚拟机短期内需要对LUN频繁访问。一旦这种情况发生,多个主机就不能同时对元数据进行写操作,那么VMFS就崩溃了。更新完成之后,锁定就解除了。快照将会有16MB的增量,每一次快照增长都会带来SCSI预留。下面列举的是其它一些不太经常使用的操作(这些操作也能引起SCSI预留):

  • 使用VMotion迁移虚拟机
  • 使用模板创建一台新虚拟机或者部署一台虚拟机
  • 给虚拟机加电或关闭电源
  • 创建一个模板
  • 新建或者删除一个文件(包含快照)

  计算LUN大小

  在决定数据存储区域上要部署的虚拟机数量之后,就要计算需要的LUN大小。然而因为有很多其它相关文件都在数据存储区域,所以增加虚拟磁盘规模并不是一个好方法。在下面可以看到一个关于这些文件的列表以及其映射大小,我们首先浏览一下存在于每台虚拟机的这些文件及其映射大小:

  • .vswp文件是一个虚拟交换文件,大小就是指定给虚拟机的内存减去指定给虚拟机的任何内存预留大小,所以默认状态其大小为0。例如,如果给虚拟机分配4GB的内存,.vswp文件在虚拟机加电时创建、关掉电源时删除。同样,如果创建一个4GB内存预留(通常情况下是建议不要这样做),创建的.vswp文件大小就是0字节。
  • .vmss文件只有在虚拟机被挂起时创建,大小和分配给虚拟机的内存相同。
  • .vmsn文件用来存储快照创建时的快照状态(如果选择的话,也可以包括内存),大小和指定给虚拟机内存的大小一样。如果不存储快照内存状态,这个文件就会非常小(通常不超过1MB)。
  • delta.vmdk文件是快照数据文件,文件大小以16MB开始,并且在虚拟机磁盘发生变化的时候,以16MB的增量增长。这些文件的大小不能超过原始的磁盘文件大小,增长的速度取决于对原始磁盘操作的次数,这在很大程度上又取决于虚拟机上面运行的应用程序。相对比较静态的应用程序,如网站和应用程序服务器,通常情况下没有太多的数据变化,因此就应该使用相对较小、增长比较缓慢的快照。然而,邮件和数据库服务器可能有很多对磁盘的写操作,快照增长比较快。
  • 其它各种各样的文件通常比较小,在VMFS卷上不会占用太大空间。这些文件包括.nvram文件 (BIOS), .vmx文件(配置), .vmsd文件(快照元数据)和.log文件。每台虚拟机为这些文件分配50MB空间就足够了,用户也可以使用高级虚拟机参数控制日志文件的数量和规模。

  进一步完善上述说明,下面是计算VMFS磁盘大小的基本步骤:

  1. 对所有计划部署在数据存储区域的虚拟机虚拟磁盘大小求和。
  2. 第二步可以分为几个相互独立的步骤:对所有分配给虚拟机的内存大小求和(步骤A);对所有指定给内存预留的大小求和(步骤B)(需要注意的是内存预留值为0);从分配给内存大小的总和中减去指定给内存预留大小的总和,得到的就是需要给.vswp文件分配的空间(步骤A的结果减去步骤B的结果)。同样,也可以在本地数据存储区域配置主机来存储.vswp文件。如果这样做的话,就不需要把计算的总和包括进来。
  3. 为每台虚拟机添加50MB用于各种各样的文件。
  4. 如果计划暂停虚拟机,就需要计算大概所需的磁盘空间大小,这可以通过将你所期望暂停的虚拟机的最大数量同时乘以分配给每个虚拟机的最大内存数量获得。
  5. 这一步也包括几个小步骤:计算快照所需要的空间大小,这是基于对多个因素的粗略估计,我建议尽量过高估计。首先近似估计同时运行的最大快照数量(步骤A);再计算每个虚拟磁盘空间平均需要多少GB(步骤B);确定一个百分比乘数,这个百分比乘数的确定基于保持快照的时间和对快照的期望增长速度(20%为底限、40%为中等、60%为最高限)(步骤C);计算A*B*C,得到需要为快照所预留磁盘空间大小(单位:GB)。如果希望同时包括快照的内存状态,就需要乘以(步骤A)次指定给单个虚拟机最大内存大小,来计算所需要的额外磁盘空间。
  6. 最后,我建议为不可预知事件和操作分配额外空间,确保不会出现在数据存储区域上空间不够的情况。在同一台虚拟机运行多个快照,一次又同时删除这些快照的时候,这些额外的空间迟早就会用上。因为需要额外的空间提交(或者删除)快照给原始磁盘,所以需要为此再增加25GB空间。

  在我的网站VMware-land.com所提供的电子表格中给出了一个更直观的视图,下面是一个屏幕截图:

VMware VMFS

点击放大

  总而言之,这些数据都是大概估算。快照是增加或者减少工作平台所需要磁盘空间数量的主要因素,并且很难对快照增长到什么程度做出预测。这些准则可以帮助用户规划合理的数据存储大小。但是要记住,最好是慎之又慎,这样的话就需要更多磁盘空间。在创建了VMFS之后,如果不使用特定的方法(这些方法在此没有提及),就不能增加VMFS的大小。

翻译

王越
王越

相关推荐