MegaCli监控RAID磁盘健康信息

首先有必要先介绍一下有关RAID卡的使用,有关Cache问题也有个人理解:生产系统上的物理机磁盘配置大多都是RAID5,之前会经常性的遇到磁盘IO在某个时间极度的跟不上节奏,稍微写入量,磁盘utils就能够飙到80%多;最后发现是RAID卡的模式改变导致的性能影响;一般RAID卡的电池都会进行充放电的操作来进行电池的保护,一般时间在90天进行一次充放电,放电时间不一(没有验证过这个,感觉有1-2小时)。RAID卡电池放电时有默认策略会关闭RAID模式“Write Back”使用“Write through”

Write Back:在系统与磁盘的数据交互中启用RAID的Cache,在写入数据开启时,其性能能够提高是一个数量级的(一般RAID卡都配备有512M、1G缓存)

Write Throug:不启用RAIDcache,直接有磁盘进行数据交互;但是在读取性能上较好;电池放电启用此功能 是为了防止在 write back下并且无RAID卡电池的情况中,系统断电导致数据丢失

最终,考虑IDC机房情况我们都开启了电池放电状态下也强制开启缓存的策略,以解决短时间性上在写入性能的过分差距

查看是否是目前模式,如下是Write Throug

MegaCli监控RAID磁盘健康信息

强制开启方法

强制开启步骤
强制修改RAID卡由writethrough到writeback 方法
# /opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp CachedBadBBU -Lall -aALL                                 
Set Write Cache OK if bad BBU on Adapter 0, VD 0 (target id: 0) success
若是放电关闭缓存 强制设置电池放电依然开启缓存方法
# /opt/MegaRAID/MegaCli/MegaCli64 -LDSetProp WB -Lall -aALL                               
Set Write Policy to WriteBack on Adapter 0, VD 0 (target id: 0) success
查看是否成功
# /opt/MegaRAID/MegaCli/MegaCli64 -LDGetProp -Cache -L0 -a0                           
Adapter 0-VD 0(target id: 0): Cache Policy:WriteBack, ReadAheadNone, Direct, Write Cache OK if bad BBU

开启后

MegaCli监控RAID磁盘健康信息

Esxi下使用MegaCli

esxcli software vib install -v /tmp/vmware-esx-MegaCli-8.07.07.vib --no-sig-check

/opt/lsi/MegaCLI/MegaCli  -LDInfo -Lall -aALL

强制修改RAID卡为WB:

cd /opt/lsi/MegaCLI/

/opt/lsi/MegaCLI/MegaCli  -LDSetProp CachedBadBBU -Lall -aALL

/opt/lsi/MegaCLI/MegaCli  -LDSetProp WB -Lall -aALL

/opt/lsi/MegaCLI/MegaCli  -LDGetProp -Cache -L0 -a0

如何在Linux上构建 RAID 10阵列 

Debian软RAID安装笔记 - 使用mdadm安装RAID1

常用RAID技术介绍以及示例演示(多图)

Linux实现最常用的磁盘阵列-- RAID5

RAID0+1和RAID5的性能测试结果

Linux入门教程:磁盘阵列(RAID)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2a41f859c9f6ce513952603cc05d8075.html