admin 管理员组

文章数量: 887031


2024年3月11日发(作者:异步电机英文缩写)

目前 存储行业中很多公司都在开发与存储优化相关的产品和技术, 既有优化

主机 端访问的方案, 也有提升

SAN

存储性能 的技术,这是一个很有潜力的领

域。 在这 里,本文将要介绍一些能够有效提升 存储性能 的方法,而以往我

们却经常忽视它

们。

首先,排除故障

网络存储的应用环境是相当复杂的,各种

不 同的硬件和软件要能够顺利的实现互操

作。 所以,导致存储系统性能不佳的最常

见的原 因可能是配置错误,也可能是一个

或多个组 件发生故障。因此,优化存储性

能的第一步 就是要看看现有的存储

I/O

栈是不是有问 题。

检查服务器和存储阵列的日志,看看是否有物理设备故障告警、

I/O

重传、路

径 切换以及超时等明确的提示。再试着去逐个分析故障组件,从与线缆相关的

连 接组件开始。收发端口以及线缆的问题不容易发现,但通常会严重的影响性

能。 在遭受物理冲击的时候,这些东西经常会损坏,因此,在数据中心里安装、

迁移 或搬走设备时要特别的小心。

1.

更新固件和驱动程序 厂商会不断的通过软件升级来修复产品中的

bug

并增

加新功能。聪明的做法是把 存储网络中所有组件的驱动程序和固件都升级到最

新版本,定期做,提前测试、 调试和升级。我们看到

Microsoft

VMware

都在积极地为其产品 —

Windows

vSphere

的存储部分增加新的性能增强

特性,但通常我们看不到太多的宣传。 比如

Microsoft

推出的

SMB2 .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

负载

VMwarev Sphere

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

核做并行处 理,从而提高性能。

Hypervisors

还有一个工作是对

I/O

进行队列排序, 并且将

I/O

定向给相

应虚拟 机,这个过程使用到了

Intel VMDq

(

virtual machine device queues

)技术。

VMDq

允许网络适配器与

Microsoft Hyper-V

VMware ESX

之类的

hypervisor

进行通讯,可以将发往同一个虚拟机的多个数据包集中在一起处理。

在服务器虚拟化应用环境中使用

RSS

VMDq

这样的技术有助于实现

I/O

流量

的 优化,而且能够产生惊人的加速效果。 通过使用这些技术,

Microsoft

VMware

已经展示了他们的虚拟机产品在性能优化方面的有效性。

7.

使用主动多路径(

Active Multipathing

)技术

在服务器和存储系统之间设置多路径是保证高可用的传统方法, 但在使用了高

级 的主动多路径技术之后,性能也会有提升。

基本的多路径软件只能提供容错功能, 当发生连接丢失故障时, 执行通道切

换操 作。而所谓的双活“

dual - active

”配置能够将不同的

I/O

负载分

配给每一条链 路,虽然提升了利用率, 但局限是每一个连接只能走一个通道。

有些存储阵列支 持将多个连接绑定在一起,或者采用

active-active

的 配置,

多个链路聚合在 一起,可以充分发挥多通道带宽的潜力。

新一代的多路径服务框架,比如

Microsoft

MPIO

VMware

PAS

,都可

以通 过添加存储阵列专用的

plug-in

插件来实现主动多 路径功能。用户可以

问问自 己的存储供应商是否提供这样的插件, 但如果它是单独收费或者需要

一个特殊的 企业级

license

,也是意料之中的事儿。

8.

部署

8 Gb

光纤通道

自从

1Gbps

的光纤通道产品出现以来, 光纤通道的带宽一直是以双倍的速率

在增 长,不过在增长的同时仍然保持着向后兼容和可互操作的特性。将光纤通

道升 级到

8Gbps

带宽是一个加速存储

I/O

的最简单而且能负担得起的方法。

目前,市 场上

8Gbps

光纤交换机和

HBA

卡的种类非常丰富,而在价格方面与

4Gbps

的产 品也基本没有差异。 当我们需要对

SAN

网络进行扩展, 购买新

的服务器和存储阵 列时,选择

8Gbps

而不是

4Gbps

的光纤通道是很自然的事

情。而不久之后我们 还会看到下一代的

16Gbps

光纤通道设备。

请记住,吞吐量(通常以字节

/

秒表示)并不是衡量存储性能的唯一指标,响应

延迟也非常关键,通常用

IOPS

(

I/O operations per second

)或响应时间(以

毫秒或微秒为单位)衡量,延迟指标可以衡量单个

I/O

请求被处理的速度。 目

前, 延迟已经成为描述服务器虚拟化环境性能的关键 指标。当多个虚拟服务

器的流 量通过一个单独的

I/O

端口时,该端口需要快速的处理数据包, 而不

只是能够处 理大量的顺序数据流。

每次光纤通道产品升级, 不仅仅是带宽翻倍,处理一个

I/O

操作的时间也会

减半。 因此,

8Gbps

光纤通道技术与原来的

4Gbps

技术相比,不仅仅是实现了

双倍的

MB/s

数值,

I/O

请求的处理能力也增加了一倍。对服务器虚拟化应用

来说,这才是真 正有价值的地方。

9.

利用

10 Gbps

以太网

光纤通道并不是唯一一个不断升级的通道技术。 以太网最近也进行了重大的升

级 跨入了万兆时代。随着

10GbE

以太网越来越普及,用户也逐渐能够承受相 关

的 成本。但是,

10GbE

的存储阵列的发展速度要落后于万兆网卡和交换机。

如果能 够将现在的

iSCSI

NAS

(

SMB

NFS

)协议存储环境迁移到

10GbE

太网,那 么总体性能会有大幅度的提升。

如果没有端到端的

10GbE

以太网,那么替代方案可以选择在

1GbE

的链路上使

LACP

(

link aggregation control protocol

)聚合。用这种方法,我们能

够创

建一条

N

Gbps

的带宽聚合通道,在主机、交换机和存储等一系列千兆设备

之 间实现互联。在没有

10GbE

以太网的时候,这个方案能够解决千兆以太网

速度 太慢的问题。

最新出现的

FCoE

(

Fibre Channel over Ethernet

)技术将光纤通道和以太

网 这两个世界联系到了一起, 并且承诺有更好的性能和更大的灵活性。 尽管

有一种 声音认为

FCoE

使用的

10GbE

以 太网通道的带宽只比

8Gbps

光纤通道

快了

20%

, 但数据吞吐量的差距却惊人地达到了

50%

,这都要归功于更加有效

编码方式。

FCoE

还承诺可以减少

I/O

延迟,而传统的光纤通道

SAN

或存储阵

列要通过使用 桥接器才能做到这一点。以长远的眼光看,

FCoE

可以提升存储

性能,而且现在 我们已经能够使用它 了。

10.

增加缓存

虽然最快速的

I/O

请求永远不会出现, 但作为一个提高性能的手段, 使用缓

存是 最直接的方法。在

I/O

通路的各个环节都可以使用缓存,通过把最近频

繁 使用 的信息驻留在缓存中, 设备可以明显的提高响应速度。 这不是什么

新技术, 但好 消息是随着价格的下降,我们现在能用得起更大容量的

NAND

flash memory

目前,我们基本上可以看到三种类型的缓存:

1

.主机端缓存。将

NVRAM

或者

NANDfl ash

放在服务器中,常见的是高性能

PCI

Express

卡,仅在服务器部使用,

I/O

不经过网络。

2

.放在网络中的专用缓存装置,可以帮助存储阵列降低负载。缓存装置可以同

时响应多台服务器的请求, 但在发生电力故障时, 可用性以及数据一致性是

个需 要考虑的问题。

3

.存储阵列置的缓存,以及常见的分级存储解决方案。此类设备包括

NetApp

Flash Cache cards

,以前叫

Performance Acceleration Module

PAM

EMC

Fully Automated Storage Tiering

FAST

) 以及

Hitachi Data

System

Dynamic Tiering

DT

)等。

没有“银弹”

改善存储性能有许多的选择, 但不会有万能钥匙。 尽管存储厂商马上就会反

驳说 他们的最新技术(从分级存储到

FCoE

)能够解决数据存储性能的问题,

但没有 人会傻到只去关注某一个领域。 最有效的性能优化策略应该从分析现

有系统的瓶 颈开始,最终制定相应的计划去解决它们。

并非所有的方法都有效

除了知道应该怎样保证存储网络的性能之外, 我们还需要了解一些对改善性能

不 那么有效的方法。 通过测试我们可以看到一些有趣的结果: 比如在以太网

上打开

Jumbo Frame

,通常不会看到性能有明显的改善。

另一个常见的问题是如何看待不同存储协议的优点。 用户通常会认为光纤通道

就 是比

iSCSI

NFS

SMB

速度快。 其实这个答案并不一定正确, 要看 实

施和配置 的具体环境。 一般情况下, 采用同样的硬件架构, 不同协议表现

出的性能基本在 同一水平,因此,性能与协议本身没有太大关系。

还有一个要注意的事情是关于在虚拟化环境中使用裸金属架构技术,包括

paravirtualized driver

驱动、直接

direct I/O

(比如

VMDirectPath

以及

RDM

raw device mapping

),都不会带来太多的性能提升,而且还

会影响

VMotion

等功能的使用。


本文标签: 性能 使用 备份 通道 技术