megacli的安装

通过如下链接

http://down.51cto.com/data/2042596

或者

http://pan.baidu.com/s/1eQ2FeHc

下载至windows本地桌面,然后在linux命令行用命令:rz -be ,在弹出的窗口中选择刚才下载的压缩包(注意不要勾选已ASCII码方式传送文件

tar xf megacli-8.02.21-1-mdv2012.0.x86_64.rpm.tar
rpm -ivh megacli-8.02.21-1-mdv2012.0.x86_64.rpm

默认yum源木有,为了安装方便,可以手工添加到本地yum源,以后安装就可以执行如下命令:

yum install megacli -y (关于本地yum源的搭建,请移步本地yum源搭建)



我发的邮件:

yum install megacli -y 
查看Raid卡信息
megacli -LDInfo -Lall -aALL
查看硬盘信息:
megacli -PDList -aALL

备注:

RAID型号对应表信息如下:

RAID Level        : Primary-1, Secondary-0, RAID Level Qualifier-0"         #代表Raid 1

RAID Level        : Primary-0, Secondary-0, RAID Level Qualifier-0"         #代表Raid 0

RAID Level        : Primary-5, Secondary-0, RAID Level Qualifier-3"         #代表Raid 5

RAID Level        : Primary-1, Secondary-3, RAID Level Qualifier-0"         #代表Raid10




一、查看Raid卡信息
megacli -LDInfo -Lall -aALL 

[root@ robin]# megacli -LDInfo -Lall -aALL
                                     
OSSpecificInitialize: Failed to load libsysfs.so.2.0.2 Please ensure that libsfs is present in the system.
The dependent library libsysfs.so.2.0.1 not available. Please contact LSI for distribution of the package

Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Name                :
RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0
Size                : 930.5 GB
Mirror Data         : 930.5 GB
State               : Optimal  <<<< 这是正常的状态。

Strip Size          : 64 KB
Number Of Drives per span:2  <<<< RAID组包含2块磁盘(但实际是4块500G的SSD做Raid10)。

Span Depth          : 2 <<<< 深度若是1,说明实际只是RAID 1。2表示可以是RAID 10

Default Cache Policy: WriteBack, ReadAdaptive, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteBack, ReadAdaptive, Direct, No Write Cache if Bad BBU
Default Access Policy: Read/Write
Current Access Policy: Read/Write
Disk Cache Policy   : Disk's Default
Ongoing Progresses:
  Background Initialization: Completed 41%, Taken 190 min.
Encryption Type     : None
Default Power Savings Policy: Controller Defined
Current Power Savings Policy: None
Can spin up in 1 minute: No
LD has drives that support T10 power conditions: No
LD's IO profile supports MAX power savings with cached writes: No
Bad Blocks Exist: No
Is VD Cached: No

备注:

RAID型号对应表信息如下:

RAID Level        : Primary-1, Secondary-0, RAID Level Qualifier-0"         #代表Raid 1

RAID Level        : Primary-0, Secondary-0, RAID Level Qualifier-0"         #代表Raid 0

RAID Level        : Primary-5, Secondary-0, RAID Level Qualifier-3"         #代表Raid 5

RAID Level        : Primary-1, Secondary-3, RAID Level Qualifier-0"         #代表Raid10


二、查看硬盘信息:
[root@ robin]# megacli -PDList -aALL

###有如下样式的几段,说明实际有几块硬盘(下面是一块500G的SSD的信息)

Enclosure Device ID: 32
Slot Number: 3
Drive's postion: DiskGroup: 0, Span: 1, Arm: 1
Enclosure position: 0
Device Id: 3
WWN: 50025388A0061518
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 465.761 GB [0x3a386030 Sectors]
Non Coerced Size: 465.261 GB [0x3a286030 Sectors]
Coerced Size: 465.25 GB [0x3a280000 Sectors]
Firmware state: Online, Spun Up
Device Firmware Level: BB0Q
Shield Counter: 0
Successful diagnostics completion on :  N/A
SAS Address(0): 0x4433221107000000
Connected Port Number: 3(path0)
Inquiry Data: S1DHNSADA04008B     Samsung SSD 840 EVO 500GB               EXT0BB0Q
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 6.0Gb/s
Link Speed: 6.0Gb/s
Media Type: Solid State Device
Drive:  Not Certified
Drive Temperature :32C (89.60 F)
PI Eligibility:  No
Drive is formatted for PI information:  No
PI: No PI
Drive's write cache : Disabled
Drive's NCQ setting : Disabled
Port-0 :
Port status: Active
Port's Linkspeed: 6.0Gb/s
Drive has flagged a S.M.A.R.T alert : No


关于这个工具的更多的使用方法,请移步:

http://www.ttlsa.com/tools/megacli-tool-query-raid-status/


raid卡的数据在硬盘上有一份,在raid卡中有一份,当逻辑有错误的时候,可以重新从硬盘把逻辑数据导入,这个时候会做一些检验和检查

raid卡的盘有4种基本状态。

Failed  基本无救,联系dell保修。

Online  正常装填。

Foreign   逻辑有错误,这个盘未识别,解决方法:从硬盘重新导入raid卡的逻辑数据。

Unconfigd 第一种情况就是这个盘没有配置在raid中,第二种情况就是逻辑有错误,这个盘未识别。解决方法:从硬盘重新导入raid卡的逻辑数据。第一种情况下,重新从硬盘导入逻辑数据也没办法,第二种情况下是可以的。


spans值 1,2,3,4做raid0,八块盘做raid1形成1、2、3、4

Drive's position: DiskGroup: 0, Span: 0, Arm: 1

如果盘坏在不同的raid1上,就可以,如果坏在相同的raid1上数据就完了,所以最大可以坏4块盘。


PD值 0、1、2、3、4、5、6、7、


mt检测:

dmidecode  |grep -i ser

MegaCli  -pdlist -aall

MegaCli  -pdlist -aall |grep 'Firmware state'

MegaCli  -LDInfo -Lall -aALL

MegaCli  -h

MegaCli  -CfgForeign -Import -aall

MegaCli  -pdlist -aall |grep 'Firmware state'

MegaCli  -pdlist -aall 

MegaCli  -LdPdInfo -aALL

MegaCli  -LdPdInfo -aALL|more

MegaCli  -LdPdInfo -aALL >

vim aaaa 

MegaCli  -pdlist -aall 

MegaCli  -pdlist -aall  |grep 'Firmware state'

MegaCli  -FwTermLog -Dsply -aALL 



1,结合zabbix检测硬件磁盘是否有告警

root@dx-it-tw07:~/wuxiaoyu# MegaCli -pdlist -a0 |grep -i alert

Drive has flagged a S.M.A.R.T alert : Yes

Drive has flagged a S.M.A.R.T alert : Yes

Drive has flagged a S.M.A.R.T alert : No

Drive has flagged a S.M.A.R.T alert : Yes

Drive has flagged a S.M.A.R.T alert : No

Drive has flagged a S.M.A.R.T alert : No

Drive has flagged a S.M.A.R.T alert : No

2,检测raid是否有降级

MegaCli -AdpAllInfo -aALL -NoLog | grep "Degraded"

  Degraded        : 0 

3,检测是否有坏盘

MegaCli -AdpAllInfo -aALL -NoLog | grep "Failed Disks" 

  Failed Disks    : 0 



dell物理服务器硬件磁盘监控

http://tenderrain.blog.51cto.com/9202912/1923372


















通常,我们使用的DELL/HP/IBM三家的机架式PC级服务器阵列卡是从LSI的卡OEM出来的,DELL和IBM两家的阵列卡原生程度较高,没有做太多封装,可以用原厂提供的阵列卡管理工具进行监控;而HP的阵列卡一般都做过封装了,因此需要使用自身特有的管理工具来监控。

本文以几种常用的阵列卡为例,展示其阵列卡及硬盘监控的方法。
DELL SAS 6/iR卡,全称LSI Logic SAS1068E,只支持RAID 0, RAID 1, RAID 1+0, 不支持RAID 5等高级RAID特性,不支持阵列卡电池。
DELL PERC PERC H700卡,全称LSI Logic MegaRAID SAS 2108,支持各种RAID级别及高级特性,可选配阵列卡电池。
DELL PERC H310 Mini卡 ,全称LSI Logic / Symbios Logic MegaRAID SAS 2008,支持常见RAID级别,不支持高级RAID特性,不支持阵列卡电池。
IBM ServeRAID M5014 SAS/SATA Controller卡,全称LSI Logic / Symbios Logic MegaRAID SAS 2108,支持各种RAID级别及高级特性,可选配阵列卡电池。
IBM ServeRAID-MR10i SAS/SATA Controller卡,全称LSI Logic / Symbios Logic MegaRAID SAS 1078,支持常见RAID级别,不支持高级RAID特性,可选配阵列卡电池,这个卡其实和DELL的PERC 6/i卡是一样的,都是基于LSI MegaRAID SAS 1078基础上OEM出来的。

上面是几种常见的阵列卡型号,更多的可以自行查看官方的技术手册。

下面我们要继续的是,这些阵列卡以及硬盘如何监控,阵列卡的管理也请查看官方技术手册,不在本文讨论范畴,或者查看作者的一个分享PPT:PC服务器阵列卡管理简易手册。

一般地,支持RAID 5的卡,我们称其为阵列卡,都可以使用LSI官方提供的MegaCli工具来管理,而不支持RAID 5的卡,我们称其为SAS卡,使用lsiutil工具来管理。HP的服务器使用其特有的hpacucli工具来管理。

1、MegaCli工具
a) MegaCli -adpallinfo -aall — 查看阵列卡信息
-a 参数指定阵列卡的编号,一般服务器上只会配一个阵列卡,因此我们通常指定为 -a0(阵列卡适配器编号,从0开始) 即可,主要关注下面几个信息:

状态值 对应含义
Product Name : PERC H710 Mini  阵列卡名称
FW Package Build: 21.2.0-0007  阵列卡firmware版本号,版本如果太低,建议升级以提高稳定性及性能
BBU : Present  是否有配BBU电池

b) MegaCli -cfgdsply -aall — 查看阵列配置

状态值 对应含义
Memory: 512MB  阵列卡cache大小,2的N次方,如果不是,说明阵列卡有异常
Number of dedicated Hotspares: 0  阵列是否有专用/独享热备盘(如果有多个逻辑磁盘组/disk group,则可以指定一个硬盘用于全局热备,那么该disk group上的专用热备盘数量为0也不用担心),除了RAID 1/RAID 1+0一般不指定热备盘以外,其他几个阵列级别建议都要指定热备盘
State : Optimal  阵列状态,如果不是 Optimal 就要关注了
Current Cache Policy: WriteBack, ReadAheadNone, Direct, Write Cache OK if Bad BBU  阵列读写cache策略,建议写策略设置为FORCE WB,最起码是WB,预读策略可以关掉,意义不大,几乎没影响
Disk Cache Policy : Disabled  硬盘cache策略,建议关闭,防止意外时数据丢失
Current Power Savings Policy: None  节电策略,建议关闭
Media Error Count: 0  三个错误计数器,任何一个值大于100就要立刻引起关注,尤其要关注起增长速度。1T以上SATA盘,计数值不够精确,可能所有盘上该值都会大于0,一般重启就会重新清0,如果重启后还是大于0的话,赶紧报修吧。SAS盘的计数值则比较准确。
Other Error Count: 0
Predictive Failure Count: 0
Firmware state: Online, Spun Up  查看硬盘状态,如果是unconfigured表示该硬盘未分配加入到阵列中;如果是 unconfigured(bad)表示该盘不但是未分配,而且还坏了,正是“出师未捷身先死”;如果是failed,表示该盘故障无法识别;如果是rebuilding,表示该盘正在重建数据

c) MegaCli -adpbbucmd -aall — 查看阵列卡电池信息

状态值 对应含义
Temperature: 39 C  查看电池温度,如果相比上一次查看高出不少,就需要关注了,或者可以根据经验设置一个基线值
Battery State: Optimal  电池状态,如果不是为Optimal,就需要关注了
Charger Status: Complete  电池充放电状态
isSOHGood: Yes  电池状态,如果不是为Yes,需要关注
Relative State of Charge: 93 %  当前电量,当电量低于15%,或者电池坏掉时,默认都会将写策略从WB改成WT,除非设定为FORCE WB策略
Max Error = 0 %  电池是否有错误信息
Next Learn time: Tue Oct 14 22:06:50 2014  电池充放电时间,注意这是美国时间。另外,新的阵列卡电池很多改成电容式的了,也就不需要重复充放电了

d) MegaCli -fwtermlog -dsply -aALL 查看阵列卡日志,关注里面的error/fail/warn等多个关键字

2、lsiutil工具
lsiutil有交互和非交互两种方式,作为监控,我们肯定选择非交互模式。想要使用交互模式的,可以根据非交互模式自行练习。
a) lsiutil -p 1 -a 20,12,0,0 — 查看硬盘计数器
Invalid DWord Count 2,563 — 任何一个值大于0,都需要引起关注
Running Disparity Error Count 2,366
Loss of DWord Synch Count 0
Phy Reset Problem Count 0

b) lsiutil -p 1 -a 21,1,0,0,0 — 查看逻辑卷状态

状态值 对应含义
Volume State: optimal, enabled  逻辑卷健康状况
Volume draws from Hot Spare Pools: 0  是否有热备
Volume Size 139392 MB, 2 Members  由几块硬盘组成
Primary is PhysDisk 1 (Bus 0 Target 9)  物理硬盘1
Secondary is PhysDisk 0 (Bus 0 Target 3)  物理硬盘0

c) lsiutil -p 1 -a 21,2,0,0,0 — 查看物理硬盘状态

状态值 对应含义
PhysDisk 0 is Bus 0 Target 3  编号
PhysDisk State: online  状态
Error Count 13, Last Error: Command = 28h, Key = 3, ASC/ASCQ = 11h/00h  错误计数器,大于0的话,就需要引起关注

3、hpacucli工具
hpacucli工具查看阵列、硬盘、电池信息,其实就只要一条指令:
hpacucli ctrl all show config detail — 查看阵列详细信息、配置

状态值 对应含义
Controller Status: OK 阵列卡状态
Firmware Version: 1.18 firmware版本,太低了建议升级,以提高稳定性及性能
Cache Board Present: True 是否配备了cache模块
Cache Status: OK cache模块状态
Cache Ratio: 100% Read / 0% Write cache策略,此处只有读cache,不用于写cache,因为没有bbu电池,见下方结果
Drive Write Cache: Disabled 关闭磁盘cache
Total Cache Size: 256 MB cache大小
Total Cache Memory Available: 208 MB 实际可用cache大小,和理论cache大小不一样,说明cache模块可能有问题
No-Battery Write Cache: Disabled 关闭FORCEWB策略
Battery/Capacitor Count: 0 阵列卡BBU电池数量为0,也就是没有BBU模块
Battery/Capacitor Status: Failed (Replace Batteries) 阵列卡BBU电池状态,这里显示是错误状态,需要及时更换
Array: A 第一个乌列阵列,编号从A开始,依次是A、B、C
Status: OK 物理阵列状态


Logical Drive: 1 第一个逻辑卷,编号从1开始
Fault Tolerance: RAID 5 第一个逻辑卷的阵列级别
Status: OK 第一个逻辑卷状态
Caching: Enabled 第一个逻辑卷是否启用了cache策略


physicaldrive 1I:1:1 第一块物理硬盘,编号从1开始
Status: OK 第一块物理硬盘状态
Firmware Revision: HPDA 第一块物理硬盘firmware,如果太低,也需要及时升级,HP的硬盘每个批次都有不同的firmware

延伸阅读:

http://www.lsi.com/downloads/Public/Obsolete/Obsolete%20Common%20Files/mr_sas_stor_ug.pdf
http://www.hp.com/ctg/Manual/c00709035.pdf
http://www.wafl.co.uk/tag/sasadmin/
http://docs.oracle.com/cd/E19121-01/sf.x4200/819-1157-23/F_BIOS_RAID.html