未解决
此帖子已超过 5 年
2.8K 消息
0
115
如何提升VNX/Clariion存储系统强制写入(Forced Flushing)时的性能
环境:
VNX系列存储
Clariion系列存储
描述:
-
- 所有执行写I/O操作的主机都有很高的响应时间
- Navisphere Analyzer显示写缓存的使用率为100%(或者非常接近100%)
- Navisphere CLI 中“getcache”页面显示脏页面(Dirty Page)的使用率为100%(或非常接近100%)
- Ktrace日志包含大量以下消息:
~ dropped ddrb ~ pri 0 [OPTIONAL], op 1 [READ].
产生原因:
这类性能问题是由于写缓存使用率达到100%导致。当写缓存达到100%后,SP会强制将数据写入到磁盘,导致主机对存储系统写入数据时出现较高的响应时间。
解决方法:
1、查找哪些LUN的写缓存达到100%,并且正存在大量的写I/O操作。
-
- 主要检查ATA盘和SATA盘数据保护类型为RAID5的LUN,因为这类磁盘IOPS处理能力比FC、SAS和EFD磁盘差。
2、提高问题LUN的写入能力。
-
- 添加更多的磁盘到RAID组
o 对RAID3或者RAID5保护类型,将磁盘数增加到最多9块。
o 对RAID1/0保护类型,将磁盘数量增加到最多16块。
或者
o 使用跨多个RAID组的条带式MetaLUNs(参考emc226845),这些RAID组有相同的RAID类型,并应该包含数目相等、性能特点相同的磁盘(例如,所有均为7200 RPM SATA。理想情况下,将使用某个RAID组中的LUN都配置成MetaLUN,避免该RAID组成为“瓶颈”
注意:不要在同一个RAID组中创建条带式MetaLUN。
o 对于ATA磁盘,如果是连续写,使用RAID 3而不是RAID 5(见 emc140046),这并不适用于使用SATA2磁盘的CX3和CX4,因为它们有本地命令队列(Native Command Queuing)。
o 确保一个RAID组里的所有ATA LUN都有相同的SP所有者(见emc119711),这并不适用于CX3和CX4系列所使用的SATA2磁盘。
3、如果Celerra正在使用这些LUN,DataMover的卷管理功能会重新分布吞吐量,从而把工作量分散到更多的LUN/RAID组。
4、升级CLARiiON SP硬件版本将减少强制刷新,因为会有更多可用的写缓存,而且Clariion能够更迅速地刷新I/O(除非磁盘被严重过载)。
5、增加写缓存的大小并且将High/low watermark降至60%/40%,这样可以减少强制刷新发生的概率。关于写缓存的推荐大小,请参阅下表。
6、对齐(alignment)Windows文件系统与LUN可以提升性能,操作步骤请参考EMC64915。
7、如果不能对配置进行调整:
-
- 对于那些不需要高性能,但占用大量写缓存(例如,ATA备份到磁盘)的LUN,可以禁用其写缓存。
- 减低缓慢LUN上“偏旁写(Write aside)”值。
o 这个值可以用命令"naviseccli... chglun -w ..."在每个LUN上单独设置。
o "偏旁写“规定一个LUN最大能写入写缓存的块大小。
o 超出“偏旁写”值的写请求会绕过写缓存直接写入磁盘。
o 有效值是16到65534。
o 写入大小超过“偏旁写”值时,将绕过高速写缓存并直接进入到磁盘。
o 对于那些写I/O都很大,但低于“偏旁写”值的写I/O的情况非常有帮助。
注:升级存储处理器可以提供更多写缓存,减少SP的利用率,这样就会减少强制刷新。