Ⅰ 如何确定VMware VMFS数据存储的大小
为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磁片大小的基本步骤:
对所有计划部署在资料存储区域的虚拟机虚拟磁片大小求和。
第二步可以分为几个相互独立的步骤:对所有分配给虚拟机的记忆体大小求和(步骤A);对所有指定给记忆体预留的大小求和(步骤B)(需要注意的是记忆体预留值为0);从分配给记忆体大小的总和中减去指定给记忆体预留大小的总和,得到的就是需要给.vswp档分配的空间(步骤A的结果减去步骤B的结果)。同样,也可以在本地资料存储区域配置主机来存储.vswp文件。如果这样做的话,就不需要把计算的总和包括进来。
为每台虚拟机添加50MB用于各种各样的文件。
如果计画暂停虚拟机,就需要计算大概所需的磁盘空间大小,这可以通过将你所期望暂停的虚拟机的最大数量同时乘以分配给每个虚拟机的最大记忆体数量获得。
这一步也包括几个小步骤:计算快照所需要的空间大小,这是基于对多个因素的粗略估计,我建议尽量过高估计。首先近似估计同时运行的最大快照数量(步骤A);再计算每个虚拟磁盘空间平均需要多少GB(步骤B);确定一个百分比乘数,这个百分比乘数的确定基于保持快照的时间和对快照的期望增长速度(20%为底限、40%为中等、60%为最高限)(步骤C);计算A*B*C,得到需要为快照所预留磁盘空间大小(单位:GB)。如果希望同时包括快照的记忆体状态,就需要乘以(步骤A)次指定给单个虚拟机最大记忆体大小,来计算所需要的额外磁盘空间。
最后,我建议为不可预知事件和操作分配额外空间,确保不会出现在资料存储区域上空间不够的情况。在同一台虚拟机运行多个快照,一次又同时删除这些快照的时候,这些额外的空间迟早就会用上。因为需要额外的空间提交(或者删除)快照给原始磁片,所以需要为此再增加25GB空间。
总而言之,这些资料都是大概估算。快照是增加或者减少工作平台所需要磁盘空间数量的主要因素,并且很难对快照增长到什么程度做出预测。这些准则可以帮助用户规划合理的资料存储大小。但是要记住,最好是慎之又慎,这样的话就需要更多磁盘空间。在创建了VMFS之后,如果不使用特定的方法(这些方法在此没有提及),就不能增加VMFS的大小。
Ⅱ 如何在虚拟化环境下进行数据存储管理
理解虚拟机存储需求
规划部署方案可以节约时间和资金,并避免在将来出现令人头疼的问题。部署物理存储环境前,因当了解当前环境的具体情况。我们开始研究如何在虚拟化环境下解决存储的需求分配问题。每个环境都不尽相同,尽管如此,还是有一些简单问题可以帮助我们理清数据存储管理规划:
1、工程师需要理解环境中虚拟化的程度。环境中是否大多数服务器都已虚拟化,还是仅仅运行了少量的虚拟机。
2、需要超前规划将来用户、服务与应用增长所需的计算资源。环境会不断演变,既要满足当前应用,也要规划未来发展。
一旦开始规划,工程小组需要对自己即将部署的存储解决方案类型有深入认识。某些虚拟机需要为其存储设置许多固定参数,而其他虚拟机则可以更为灵活的调整。根据大多虚拟机监控(VMM)实现方案,可以大致分为两个主要部分:
1、在创建虚拟磁盘时预先分配所需的整个存储空间。此方案中,虚拟磁盘既可以被拆分为许多水平文件(默认情况下为每文件2GB大小)所组成的文件集,被称做"分割水平文件",也可以采用单一的水平文件。预分配存储机制也被成为"厚配置".
2、按需动态增长存储。若采用此机制,虚拟磁盘可以分割或单一文件保存,但其有一个重要特性--存储可以根据需求进行分配。此种类型的动态增长存储同样被称为"自动精简配置",VMware Inc.和Citrix System都支持此种磁盘配置。
一旦负载评估确定以及相关可行性调查完成,就可着手研究如何将存储添加至环境中。但比这更重要的一环是明确工作负载究竟需要多少存储空间,因为此时已进入存储资源分配过程了。
动态存储分布
管理员现在可以通过虚拟化平台接口进行监控,分配和管理所有虚拟机的存储需求。Vsphere、XenServer和Hyper-V目前都提供了非 常复杂的图形用户接口(GUI),这些管理工具可以提供关于虚拟机的详细信息。例如,管理员可以查看系统所连接的存储仓库,了解其是如何被利用的,也可以 查看每个虚拟机(VM)的磁盘使用状况。虚拟化管理平台的每次更新都加强了针对存储设备的连接能力,包括支持更多厂商的产品,新功能以及通过GUI界面所 能实现的存储设备管理。
在部署自动精简配置(或动态存储分配)作为虚拟磁盘特性时,需要留意存储资源池或数据存储中那些还未被使用的空间。通过跟踪未使用资源,工程师可以 调整最佳实践并决定下一步操作是回收现有未使用资源,或者在应用中断与宕机发生之前往资源池中加入新的可用空间。为避免系统宕机,建议对磁盘使用情况进行 追踪并设置告警等通知,保证在空间不足时能通知到管理员。动态空间分配并不是什么新技术,该功能在现今大部分主流虚拟化软件中都可以实现。尽管如此,关于 这种数据存储机制还是有一些管理技巧的:
1、设置磁盘空间需求告警。添加额外磁盘空间并不困难。现实中,实现空间添加可能只需要大约3次鼠标点击。挑战在于了解有多少资源可以分配,以及数 据存储是否将要用尽。要解决这个问题,工程师应该为虚拟化平台管理工具设置告警策略,以及准确管理自动精简配置。对某些管理平台来说,告警是项新功能,但 十分重要。这些告警可以通
2、过自定义触发规则实现,这样管理员们就可以对“磁盘空间耗尽”这项事故进行预防并才去行动。告警可设置为当数据存储使用率到 达某一百分数值或超额比率达到一定数值时触发相关通知。
3、文档与环境监控。每款主流虚拟化管理平台的GUI工具都很实用,任何IT工程师都应该能够检索存储仓库并对存储使用状况与规划有明确的认识。尽 管如此,在处理存储需求时,数据存储管理是一项永无止境的过程,需要无时无刻关注。空间资源耗尽并不是一个好应对的问题,而且通常情况下,可以通过审计与 对存储环境的维护来避免事故发生。
确保存储和虚拟化管理平台及时更新。经常检查负载状况是件十分重要的例行公事,留意存储硬件和虚拟化软件平台运行情况也十分重要。新硬件和软件更新可提供更好的支持与功能及,提升IT工程师管理环境的能力。微小变更,诸如告警与警示,可以用来增强存储空间管理能力。