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
等功能的使用。
版权声明:本文标题:有效提升存储性能的十大方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1710117594h559401.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论