秘籍五:学会测试
尽管好像有些奢侈,但调优的关键之一还是要有个固定的测试实验室,用来试验计划对环境的改变,或者用来模拟失败的状况。实验室测试允许你探索不同的方案,找出解决办法,却不会对生产网络造成影响。在与我们的专家的对话中,同时根据我们自身的经验,大多数SAN网络的紧急事件,都由磁盘阵列或者SAN环境中新功能的部署造成的。如果你缺少建立试验环境的资源,一种替代方法是和你的基础架构供应商合作,因为他们有很多设备可以用来再现问题或用于测试新功能的实施。
存储的I/O性能在十大调优列表中出现的次数通常很高,尽管没有进入我们的前五大秘籍,但它会一直出现在剩余的列表中。在性能问题解决之前,环境情况的记载、理解以及尽可能保持弹性是很重要的。虽然由于缺少性能调优是导致响应时间慢的一个问题,但盲目追求零响应时间就更糟糕了。
秘籍六:了解你是如何使用ISL的
ISL(交换机间互联)是调优的关键领域,随着SAN网络的增长,它们对于性能变得越来越重要。ISL的调优艺术,对于不同的厂商来说,在交换机的扇入配置和交换机间的跳数、什么是好的做法上,他们常常拥有相互冲突的观点。实际情况是交换机间的延时与机械硬盘的延时相比是非常低的,甚至可以忽略不计;然而,在高扇入的情况下,或者是有很多跳(服务器跨越多个交换机访问数据)的情况下,ISL同样扮演着重要的角色。
最受关注的是要保证在交换机之间,ISL配置了正确的带宽,像前面提到的一样,这似乎是一个很常见的错误。除此之外,测量主机到交换机之间的数据流量和交换机之间的ISL流量也是非常重要的。交换机报告工具会提供大量这种信息,但是,就像前面所提,要是有一个能够测量交换机间通信的可视工具就更好了。
通过流量测量,决定调整服务器连接的主交换机以重新平衡流量,这会涉及重新布线和潜在的服务器宕机风险。另外的方法是增加ISL,这样就增加了带宽但消耗了端口,同时,在某种程度上增加了存储架构的复杂性。
秘籍七:在虚拟机环境中使用NPIV
服务器虚拟化完全改变了SAN的配置,其最大的挑战之一就是需要标识哪些虚拟机要最大限度的利用基础架构。在服务器虚拟化之前,一台服务部署一个应用,而且和SAN的通信通过一个HBA完成;现在的虚拟主机有很多服务器试图通过同一块HBA卡与存储基础架构通信。能够标识虚拟机是至关重要的,这样可以最大化存储IO性能,并在主机间进行平衡,而不是为单个主机消耗掉全部的资源。某些HBA卡支持的N_Port ID Virtualization(NPIV)功能,允许你给每个单独的虚拟机指定一个虚拟的World Wide Name(WWN),即使发生主机间的虚拟机迁移,这种联系也是固定的。利用NPIV,你可以使用交换机的统计数据,从存储的视点来标识最活跃的虚拟机,在环境中的多台主机上恰如其分的进行部署。
秘籍八:了解HBA的队列深度
HBA卡的队列深度是指等待发送到数据存储基础架构的I/O数量。在安装HBA卡时,大多数管理员简单的使用卡的缺省(默认)设置,而HBA卡队列深度的缺省设置通常很高。这会导致存储端口变得拥挤,引起应用程序的性能问题。如果队列深度设置的太低,端口和SAN基础架构自身就无法有效地使用。在存储系统没有承载足够多的等待I/O时,就没有机会使用其缓存;如果基本上缓存在访问的时候都满了,那大部分访问会直接来自磁盘。大多数HBA卡设置的缺省队列深度介于32到256之间,而其实更接近的非常好的范围是2到8。大多数发起人能报告在任意给定的时间里队列中等待请求的数量,这样你可以在深度过大的队列与深度不够的队列间进行平衡。
秘籍九:多路径验证
多路径验证涉及到要确定I/O流量在多条冗余路径上已发送。在许多环境中,我们的专家认为,他们已经发现多路径完全不工作或无法在多条可用路径上实现负载均衡。例如,如果你有一条路径承载了80%的容量,而另外一条只有3%,如果HBA卡或链接坏掉,会影响到可用性,或者对应用程序的性能造成影响。目标就是要确保流量在所有可用的HBA端口和ISL上实现完全的负载均衡。
你可以使用交换机的报告获取多路径验证的情况。要做到这一点,运行一份报告,其中包含端口WWN、端口名称和MBps,按照端口名称排序,并用连接设备类型等于“服务器”进行过滤。这是一种快速确定哪些链路已经多路径负载均衡,哪些现在还以主/备模式工作,以及哪些没有冗余的HBA卡的方法。
秘籍十:提升复制和备份性能
尽管某些环境非常关心数据库应用的性能,但几乎他们所有都需要减少备份或者复制功能所花费的时间。这两个过程都受到了来自数据快速增长的挑战,这些挑战包括需要通过相对较窄的带宽进行复制以及不断缩小的备份窗口。它们也是最有可能在SAN架构中跨多个部分造成持续的负载。备份服务器是最有可能的候选人,它跨越交换机和Zone(译者注:交换机内部的一种隔离)获取数据。上述技巧全部适用于成倍增加备份的性能。也可以考虑额外增加HBA卡到备份服务器的,或者有端口导向专门的交换机以最小化环境中的ISL流量。