有效提升存储性能的十大方法 |
| 发布时间: 2012/7/10 9:49:28 |
|
目前存储行业中很多公司都在开发与存储优化相关的产品和技术,既有优化主机端访问的方案,也有提升SAN存储性能的技术,这是一个很有潜力的领域。在这里,本文将要介绍一些能够有效提升存储性能的方法,而以往我们却经常忽视它们。
首先,排除故障 网络存储的应用环境是相当复杂的,各种不同的硬件和软件要能够顺利的实现互操作。所以,导致存储系统性能不佳的最常见的原因可能是配置错误,也可能是一个或多个组件发生故障。因此,优化存储性能的第一步就是要看看现有的存储I/O堆栈是不是有问题。 检查服务器租用和存储阵列的日志,看看是否有物理设备故障告警、I/O重传、路径切换以及超时等明确的提示。再试着去逐个分析故障组件,从与线缆相关的连接组件开始。收发端口以及线缆的问题不容易发现,但通常会严重的影响性能。在遭受物理冲击的时候,这些东西经常会损坏,因此,在数据中心里安装、迁移或搬走设备时要特别的小心。 1. 更新固件和驱动程序 厂商会不断的通过软件升级来修复产品中的bug并增加新功能。聪明的做法是把存储网络中所有组件的驱动程序和固件都升级到最新版本,定期做,提前测试、调试和升级。我们看到Microsoft和VMware都在积极地为其产品 — Windows和vSphere的存储部分增加新的性能增强特性,但通常我们看不到太多的宣传。比如Microsoft推出的SMB 2.0和2.1,可以明显的提升Windows文件共享的性能,尤其是在低带宽的网络环境中。还有新版的VMFS和 NTFS文件系统在性能和可扩展性方面也有改善。所以,平时要多浏览存储方面的博客和媒体,以便了解最新的相关动态。 要注意的是,并不是所有的版本升级都值得我们花费时间和精力,而且有时候升级的风险还很高。所以,首先要确保所有相关的厂商能够支持你现有的设备及配置,并且有充分的测试,绝对不能在生产系统中使用测试版代码。作为一个系统管理员,我倾向于保守一些,我会等到有其他人出了相关验证报告之后,自己才会尝试升级,以免冒险。 2.降低负载 大多数调优的方法都着眼于定位和消除存储的性能瓶颈,但是换一个角度,也许我们还应该考虑如何减少I/O负载的产生。比如,同数据库管理员一起对查询的效率和性能进行调优,就可以节省大量的查询等待时间。 所以,减少I/O负载对每个人和每个应用来说都是有好处的。 3.消除备份的瓶颈 传统的备份应用极其耗费存储资源,以每天或者一周为时间计划去备份一个大的数据卷的话,会产生大量的I/O负载。改善备份系统的性能,让备份工作在有限的时间窗口内完成已经成为数据保护流程中需要优先考虑的事情。解决备份问题的同时也有助于我们提升存储系统的整体性能。 一个有效降低备份压力的办法是使用CDP (continuous data protection)技术,很多虚拟机备份产品都使用了CDP。CDP连续的从服务器租用中拷贝数据,而不是在某个时间点集中执行备份操作。在虚拟机应用环境中这一点特别有用,因为传统的夜间备份模式会同时在多个服务器租用上产生大量的负载,从系统总线到HBA卡或者网卡,再到磁盘阵列,这样会导致存储系统的响应速度急剧下降。Microsoft和VMware也提供了一些技术,通过将备份过程中原本由操作系统执行的快照任务转交给存储设备执行,数据流不再经过服务器租用,大大提高了数据处理的效率。 4. 通过VAAI转移虚拟机的I/O负载 VMware发布的vSphere 4.1中包含了很多新特性,但其中最重要的一个就是VAAI(vStorage API for Array Integration)。VMware ESX利用这个新的接口程序,可以将某些I/O负载转给支持VAAI的FC或iSCSI存储系统硬件来处理。通过VAAI,hypervisor和存储阵列可以紧密且高效的集成在一起。 VAAI主要包括三个“功能”: 1. 使用高效的SCSI命令“write_same”实现精简配置,释放未使用的存储资源,增加空间利用率并降低I/O开销。 2. 将快照和镜像操作交给存储硬件来执行,最大程度降低网络、hypervisor和操作系统的I/O处理压力。 3. 提供比LUN级别粒度更细的访问控制锁,减少虚拟机之间的I/O冲突和I/O等待时间。 VAAI尽管不是直接用来提高存储性能,但实际应用效果显示hypervisor的I/O负载明显降低,而且通过SAN网络的数据流量也明显减少。业内分析师预计VMware还会在下一个vSphere版本中进一步改进VAAI,包括增加对NFS的支持。我们可以想象,Microsoft也正在为Hyper-V开发类似的集成接口。 5. 利用SIOC控制虚拟机的I/O负载 VMware vSphere的SIOC(Storage I/O Control)本质上不是一个性能加速技术,而是保证QoS(quality of service)的机制。SIOC可以增加I/O性能的可预测性。SIOC会跟踪VMFS文件系统的响应延迟,通过控制优先级较低的虚拟机的I/O流量来保证其他虚拟机的I/O性能。实际上,SIOC的作用是减少了虚拟机之间因为I/O资源争用而引起的冲突,从而提升了虚拟机的响应速度。应用程序开发人员和管理者会喜欢这个功能,虽然总体带宽保持不变,但却可以带来更好的性能表现。 6. 优化服务器租用端 今天,采用多核处理器的服务器租用在CPU处理能力上是过剩的,但网卡和HBA卡通讯处理却仍然只能使用一个处理器内核。RSS(Receive-side scaling,接收端调节)技术的出现解决了这个问题,I/O卡可以将数据流分给多个CPU内核做并行处理,从而提高性能。 本文出自:亿恩科技【www.enkj.com】 |
京公网安备41019702002023号