微信号:dellemc_tech

介绍:为戴尔易安信客户提供技术支持服务,为广大IT行业用户分享技术文章与行业信息。

虚拟环境下存储管理的建议与最佳实践

2016-07-17 11:07 EMC中文技术社区

虚拟服务器环境和桌面虚拟化使得进行数据整合,能源节约以及物理系统精简易于实行。与此同时,服务器虚拟化给存储系统和维护系统的管理员带来了一些严峻的挑战:由于虚拟服务器、桌面相对存储设备的比例,虚拟机在竞争存储资源时会造成一些空间与性能问题。

 

本文讨论虚拟环境下存储面临的挑战并给出相应建议。


 

虚拟环境下存储面临的挑战:

 

虚拟环境下存储管理面临一些挑战,如:空间利用率,速度等。虚拟化的最大问题之一在于存储空间的利用。由于虚拟机扩展的简单化,很多用户部署多台虚拟机,但如果还是按照传统方式来配置存储环境,将造成相当多的容量耗费。这一问题的产生不是由于缺乏存储,而在于数据存储管理,从而导致时间,空间以及成本的浪费。因此,维持存储空间利用率是一个很大的挑战。

 

服务器虚拟化所带来的另一大挑战之一就是如何管理多个VM运行在一个物理主机上所产生的高水平I/O,而所有这些I/O都要通过运行在主机上的一个虚拟机管理器。由于新的VM很容易建立,因此存储容量的需求上升,同时由于VM在虚拟化架构中移动,因此会碰到更多的随机I/O,对性能以及存储系统容量的要求也会提高。


 

虚拟环境下存储管理的建议:

 

认识存储工作负载


如果在主机上部署虚拟机而不考虑磁盘I/O使用情况,可能会造成实时资源瓶颈。为了避免此问题,需根据应用和工作负载,对虚拟机将会产生的磁盘I/O数量有一个基本的认识。同样,高I/O虚拟机应当均匀分布于物理主机以及数据存储。如果在单一主机上部署过多高磁盘I/O的虚拟机,将可能会造成主机存储控制器过度使用。与此同时,过多高磁盘I/O虚拟机访问同一存储系统或LUN也可能会造成性能瓶颈。因此,即便在对虚拟机磁盘I/O工作负载非常清楚的情况下,依然应当使用性能监控工具对环境进行深入观察,如平均及峰值使用情况。永远不要假设应用或工作负载永远一尘不变,随着补丁包,用户增加以及总体环境的改变,某一工作量在不同的时间可能会要求更多的存储。同时,需记住虚拟机并不总是位于同一主机上。虚拟机是移动的并且可能会移至另一物理主机之上。

 

VMware  DRS能够在vSphere集群中的不同主机之间自动平衡CPU和内存资源。使用Storage DRS特性,VMware虚拟环境还能够在数据存储集群中的数据存储之间平衡磁盘容量与性能。此外,DRS会监控单个数据存储的I/O延迟,进行分析并初始化Storage vMotion操作以确保所有数据存储的I/O延迟是最小的。这个特性也减少了部署虚拟机带来的管理开销,想要部署新虚拟机的时候无需自行进行I/O计算,可以让存储DRS帮助做出决定。Storage DRS每8小时对I/O负载进行评估,当发现性能的不平衡持续几个小时之后将会给出迁移建议。这避免了由于短期磁盘访问高峰而引发的不必要的迁移。同时,在使用VMware DRS的情况下,建议使用DRS非关联规则,以确保将虚拟机存放到不同的数据存储上。

 

避免密集磁盘I/O


某些场景下,虚拟机可能会周期性产生一些非常密集的I/O,这可能会导致严重的资源争用,从而拉低所有虚拟机的运行速度。对于虚拟桌面可能是由于特定时间事件引起的,比如所有用户在早上近乎同一时间打开电脑,也就是通常所说的启动风暴。尽管此类情况可能无法避免,但仍然有办法加以控制:如为存储设备添加缓存控制器,或是在高磁盘I/O周期使用自动存储分层技术,以利用快速存储设备如SSD。

 

其他一些场景是可控的,如:虚拟机备份窗口以及虚拟机调度活动如病毒扫描、补丁。多台运行并发备份的虚拟机位于同一主机或数据存储会带来高磁盘I/O,将会影响主机或数据存储之上的其他虚拟机性能。应当均匀地安排备份,而不要在同一主机或存储上同时并发地运行过多备份。同时可以考虑那些通过直接访问VM数据存储来备份VM磁盘而避免占用主机资源的备份应用。一些磁盘到磁盘的虚拟化备份产品能够缩短备份窗口,并且让备份延迟进行而不影响主机和虚拟机。对于补丁以及病毒扫描这类预定操作,可让其随机进行或错开安排,拉长时间跨度以使操作不会并发执行。磁盘碎片重组时也应当特别小心,重组所产生的高I/O可能导致容量需求的快速增长。

 

如果你不知道哪些是密集型应用,运行于哪个虚拟机,服务器集群,存储,那么就很难真正理解存储性能。这些应用是读密集型还是写密集型?知道这些问题的答案对性能调优会有很大帮助。可以通过VMware esxtop CLI,vCenter性能图表或其他第三方工具来进行IOPS分析,查看是读密集型还是写密集型。

 

空间的高效利用


虚拟机容易耗尽磁盘空间,但能够采取一些措施在存储设备上对所占空间进行控制。总体而言,考虑空间利用率时,用户需要对性能,可靠性与冗余度做一个梯度衡量;避免不再有用或不被使用但仍然消耗存储资源的虚拟机,并将所占用的存储资源放回空闲池。

 

从技术的角度来说:

对于虚拟桌面或实验室类型服务器环境,使用linked clone能够节省相当一部分磁盘空间。linked clone类似于VM快照:虚拟机的虚拟磁盘文件为只读,同时创建一个容量较小的delta磁盘供写入操作。linked clone工作原理是创建一个主虚拟磁盘镜像被多虚拟机读取,但是所有写入发生在各虚拟机自己的delta磁盘。例如,你创建了100个虚拟机,配置了40GB虚拟磁盘,如果没有linked clone那么可能会消耗4TB磁盘空间。然而,在使用linked clone的情况下,你会有一个40GB虚拟磁盘供所有虚拟机读取,一个较小的1G或2G的虚拟磁盘来写入——从而节省了大量空间。


虚拟化最有用的功能之一是对虚拟机进行快照。对虚拟机内存以及虚拟磁盘的实时快照在应用或操作系统升级报错或测试更改配置时非常有用。虚拟化备份及复制应用也常用快照来获取虚拟磁盘变更而无需宕机。但是,快照的过度使用不仅会占用磁盘空间,而且还会影响备份性能,VMotion以及其他存储相关功能。快照应该是暂时的,用过之后应当删除。


虚拟服务器环境下,精简资源配置thin provisioning能够帮助管理存储空间。这一技术可以在虚拟层或存储层实施。通常几乎所有虚拟机都会被分配比实际需要多的磁盘空间,thin provisioning通过让虚拟磁盘文件只占用它们实际使用的而不是被分配的全部空间来节约存储资源。使用thin provisioning能够显著减少虚拟机消耗的磁盘空间并且让存储容量升级更加可控。同时,thin provisioning,数据消重,条带等技术能够让用户使用便宜的磁盘而不是高性能存储资源来满足虚拟服务器的要求,从而控制成本。

 

避免不必要的I/O


应当保持限制虚拟服务器和虚拟桌面产生的磁盘I/O数量。包括禁用不需要的Windows服务,卸载不需要的应用,禁用文件索引,限制操作系统和应用的登录数量。可应用终端管理工具或Active Directory组策略来帮助管理并控制配置。不仅需要减少虚拟机磁盘I/O,同时也要减少对其他主机资源的消耗。减少虚拟机产生的不必要的磁盘I/O对于提高存储利用率是一个很有效的措施。

 

为工作负载选择正确的存储


大多数主机除了连接至共享存储之外,还有本地可用存储分配给虚拟机。主机存储类型的不同会产生不同的性能特性,如8Gb FC SAN以及1Gb iSCSI或NFS存储设备。除了不同的存储协议以外,还有不同转速的硬盘(10K rpm, 15K rpm)以及接口(SAS, SATA, SSD)。因此,需要为虚拟机选择类型合适的存储。在较慢的存储分层上部署相对不重要的虚拟机,在快速存储上部署高I/O需求的关键虚拟机。可以选择如EMC FAST自动化存储分层技术,按照数据的不同需求自动在存储层级之间移动。

 

进一步,可以将虚拟机拆分至多个磁盘空间,虚拟机的虚拟磁盘文件按照性能需求放置于多个存储层级之上。一个通常的方法是为操作系统,Windows页面,应用和数据分别创建磁盘分区。较快的存储分层用于高I/O请求数据,较慢的分层或本地存储用于其他剩余的数据。即使不这样做,也还是可以在主机物理内存耗尽时为大型虚拟机虚拟交换文件指定慢速或本地存储。这也帮助限制虚拟机使用昂贵存储层级的磁盘空间。



更多精彩内容,请点击阅读原文”进行查看!

如何每天都能收到如此精彩的文章?

①点击右上角点击查看官方账号”→点击关注

②长按并识别下图中的二维码,直接访问EMC中文支持论坛


 
戴尔易安信技术支持 更多文章 备份和归档的区别 云计算的三种模型:公有云、私有云和混合云 正确描述IO类型 【大咖讲网络】谁动了我的网络 浅析I/O处理过程与存储性能的关系
猜您喜欢 大规模流式增量计算及应用 UXCore 组件单测的一些事儿 【长文章】张小龙内部讲座《通过微信谈产品》【下】 【干货】PHP中9大缓存技术 这可能是你最早能买到的自拍无人机:能悬浮,能漂移,还能折叠揣进裤兜