MegaCli 简易使用介绍
查看帮助
MegaCli64 -h
适配卡配置
查看RAID控制器的数量
MegaCli64 -adpCount
查看所有raid卡详细信息
MegaCli64 -AdpAllInfo -aALL
查看 RAID 卡 Rebuild 参数
重建在IO资源使用中的百分比,默认为30%
MegaCli64 -AdpAllinfo -aALL |grep -i rebuild
设置RAID 卡 Rebuild 参数
MegaCli64 -AdpSetProp { RebuildRate -60} -aALL
磁盘配置
查看连接RAID卡的全部硬盘详细信息
MegaCli64 -PDList -aALL ----其中ALL意思是所有的控制器,此处也可以用0表示
MegaCli64 -PDList -aN N可以根据Adapter #0来确定
磁盘的信息如下:
磁盘信息过滤
由于磁盘信息较多,所有可以根据自己的需要来过滤得到自己想要的信息
MegaCli64 -PDList -aAll| grep -Ei "(Enclosure Device|Slot Number|Raw Size|Firmware state)" ---粗过滤
grep是过滤的意思
-E参数是使用扩展正则表达式来过滤
-i参数是不区分大小写来过滤
Enclosure Device过滤出raid卡的ID;Slot Number过滤出磁盘的槽号;RawSize过滤出磁盘的大小;Firmware state过滤出磁盘的状态。
获取指定磁盘信息
MegaCli -pdInfo -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL
N表示raid卡编号,0表示第一块raid卡;ALL表示所有的raid卡 ;E和S代表Enclosure Device和Slot Number
磁盘上下线
MegaCli64 -PDOffline/PDOnline -PhysDrv [E:S] -a0
磁盘点灯
MegaCli64 -PDLocate -start -physdrv[58:17] -a0
MegaCli64 -PDLocate -stop -physdrv[58:17] -a0
RAID组基础配置
创建RAID组
MegaCli64 -CfgLdAdd -r(0|1|5) [E:S, E:S, ...] -aN
N表示raid卡编号,0表示第一块raid卡;ALL表示所有的raid卡 ;E和S代表Enclosure Device和Slot Number
下面是一个创建raid5例子,属性为默认 固件状态会由Unconfigured变成Online
下面给出一个创建raid10的例子,并设置属性
删除RAID组
MegaCli64 -CfgLdDel -LX -a0
查看RAID组信息
MegaCli64 -LDInfo -Lall -aALL (创建的示例已经使用过了)
MegaCli64 -LdPdInfo -aALL -----查看raid信息及raid组成磁盘信息。
RAID Level对应关系:RAID级别一般通过 Primary 字段值来判断
还需要结合Span Depth的值来判断值为1表示为 RAID-1,不为1表示 RAID-10; 还有一种情况:Primary-1, Secondary-3, RAID LevelQualifier-0 也是表示 RAID-10;
RAIDLevel : Primary-0, Secondary-0, RAID Level Qualifier-0 对应RAID 0
RAIDLevel : Primary-1, Secondary-0, RAID Level Qualifier-0 对应RAID 1
RAIDLevel : Primary-5, Secondary-0, RAID Level Qualifier-3 对应RAID 5
RAIDLevel : Primary-1, Secondary-3, RAID Level Qualifier-0 对应RAID 10
修改RAID组属性
MegaCli -LDGetProp -Cache -L0 -a0 获取cache属性
WriteBack:写缓存策略
WriteThrough:直接写入磁盘,不适用RAID卡缓存。
ReadAheadNone:不开启预读
ReadAhead:开启预读,在读操作的时候,预先把后面顺序的数据载入raid卡缓存,在顺序读的环境中能提供很好的性能,但是在随机读的环境中反而降低读的性能(适合文件系统,不适合数据库系统)
ReadAdaptive:自适应预读,在缓存和I/O空闲时选择预读,默认策略。
Direct:读操作不缓存到RAID卡缓存。
Cached:读操作缓存到RAID卡缓存。
如果BBU(电池)出现问题是否启用WriteCache
No Write Cache if Bad BBU:如果BBU出现问题不使用WriteCache,从WriteBack自动切换到WriteThrough,默认配置。
Write Cache OK if Bad BBU: 如果BBU出现问题仍启用WriteCache,这种配置是非常不安全的,除非是有UPS或者双电源的情况下。
缓存策略解释:
WT (WriteThrough)
WB (WriteBack)
NORA (ReadAheadNone)
RA (ReadAhead)
ADRA (ReadAdaptive)
Cached
Direct
修改属性
MegaCli64 -LDSetProp WT -L0 -a0
MegaCli64 -LDSetProp RA -L0 -a0
MegaCli64 -LDSetProp Cached -L0 -a0
清除RAID配置(慎用)
MegaCli -CfgClr [-Force] -aN|-a0,1,2|-aALL
RAID组扩展配置
1.扩容过程中无法新建RAID组
2.扩容过程中无法对其余RAID组扩容
下面示例一个RAID5扩容:
MegaCli64 -LDRecon -Start -r5 -Add -PhysDrv[58:7, 58:11] -L0 -a0
查看扩容的进度(真的是超级慢)
MegaCli64 -LDRecon -ShowProg -L0 -a0 显示扩容进度
MegaCli64 -LDRecon -progdsply -L0 -a0 动态显示扩容进度
好了,我终于等到1%了
RAID组热备配置
全局热备
MegaCli64 -PDHSP -set -PhysDrv[E:S] -a0 添加全局热备
MegaCli64 -PDHSP -rmv -PhysDrv[E:S] -a0 删除全局热备
添加全局热备后,状态如下:
此时下线成员盘,RAID组进入重构
MegaCli64 -PDRbld -ShowProg -PhysDrv[E:S] -aALL 查看磁盘重构进度
MegaCli64 -PDRbld -ProgDsply -PhysDrv[E:S] -aALL 动态显示重构进度
局部热备
在创建时添加局部热备
MegaCli64 -CfgLdAdd -r1 [58:7,58:11] -Hsp[58:17] -a0
查看RAID组信息:
然后再添加一块全局热备
准备工作完毕!现在下线成员盘,下线之后局部热备替换到成员组
RAID组状态也变为降级
rebuild的时间也很长,但此期间可以创建新的RAID组
等待ing~~~~~~~~~~
此时另一块盘也可以下线,不过下线rebuild就凉凉了……
第二种是创建成功之后,给特定RAID组添加热备盘
MegaCli64 -CfgLdAdd -r5 [58:7,58:11,58:17] -a0
MegaCli64 -CfgLdAdd -r1 [58:19,58:23] -a0
首先创建两个RAID组,然后把热备添加到第二个RAID组里(局部热备可以同时添加到多个RAID组)
局部热备里的Array计算比较麻烦,这里就要用到上面提到的DG,要按DG的排序累加,一直累加到要添加热备的VD(要添加热备的VD也要计算)。
1. 默认设Array为-1。
2. 如果是RAID0,1,5,6,则Array加1。
3. 如果是RAID10,50,则Array加2。
4. 如果是RAID0,1,5,6,则返回Array最后计算的值。
5. 如果是RAID10,50,则返回Array-1,Array。
MegaCli64 -PDHSP -set -Dedicated [-Array1] -PhysDrv[58:18] -a0
常见问题处理
1. Firmwarestate:Unconfigured(good), Spun down解决方法:
重新热拔插指定硬盘,该状态会变成Firmware state:Unconfigured(good), Spun Up
创建raid后磁盘状态也会由Spun down变成SpunUp
2. Firmware state: Unconfigured(bad)解决办法:
MegaCli64 -PDMakeGood -PhysDrv[E:S] -a0 固件状态会由Unconfigured(bad)变成Unconfigured(good), Spun Up
# MegaCli64 -PDMakeGood -PhysDrv[252:7] -a0
3. Firmware state: failed解决办法:
出现failed状态的硬盘大多已损坏,建议更换(或报修);但可以强制上线。
强制上线步骤如下:
可以先将磁盘下线。 # MegaCli64 -PDOffline-PhysDrv[E:S] -a0
然后再上线。 # MegaCli64 -PDOnline -PhysDrv[E:S] -a0
4. 以下状态的解决办法:
Foreign State: Foreign
Foreign Secure: Drive is notsecured by a foreign lock key
办法一:可以清除恢复状态(慎用)
# MegaCli64 -CfgForeign -Clear -a0
办法二:导入配置,恢复虚拟磁盘组
# MegaCli64 -CfgForeign -import -a0
5. 如何定位设备/dev/sd*由哪些磁盘组成并点亮指定硬盘。
udevadm info -q path -n /dev/sda
可以看出设备/dev/sda是raid下的Virtual Drive: 0
然后确定Virtual Drive: 0是由哪些磁盘组成,并点亮磁盘
MegaCli64 -ldpdinfo -a0|grep -Ei "(Virtual Drive:|RAID Level|^Size|Enclosure Device|Slot Number)"
参考:
MegaCli 简易使用介绍的更多相关文章
- storcli 简易使用介绍
MegaCli 是LSI公司官方提供的SCSI卡管理工具,由于LSI被收购变成了现在的Broadcom,所以现在想下载MegaCli,需要去Broadcom官网查找Legacy产品支持,搜索MegaR ...
- C#利用Attribute实现简易AOP介绍 (转载)
地址:http://dotnet.9sssd.com/csbase/art/638 http://wayfarer.blog.51cto.com/1300239/279913 http://devel ...
- C#利用Attribute实现简易AOP介绍
首先看一段简单的代码: public partial class Form1 : Form { public Form1() { InitializeComponent(); } //来自UI层的调用 ...
- LSI MegaCl i命令使用1
MegaCli命令使用:cd /opt/MegaRAID/MegaCli/MegaCli -AdpAllInfo -aAll [显示所有适配器信息]MegaCli -LDInfo -Lall ...
- 查看Linux系统下Raid信息
软件raid:只能通过Linux系统本身来查看 cat /proc/mdstat 可以看到raid级别,状态等信息. 硬件raid: 最佳的办法是通过已安装的raid厂商的管理工具来查看,有cmdli ...
- linux查看Raid磁盘阵列信息
软件raid:只能通过Linux系统本身来查看 cat /proc/mdstat 可以看到raid级别,状态等信息. 硬件raid: 最佳的办法是通过已安装的raid厂商的管理工具来查看,有cmdli ...
- Linux下查看Raid磁盘阵列信息的方法
Linux下查看软.硬raid信息的方法. 软件raid:只能通过Linux系统本身来查看 cat /proc/mdstat 可以看到raid级别,状态等信息. 硬件raid: 最佳的办法是通过已安装 ...
- Android GreenDAO 3.0 不修改版本号的情况下增加、删除表、添加字段
最近项目中使用了GreenDAO的3.0以上的版本,出现需要增加删除表的需求,刚开始用,发现官方对增加和删除的方法是每次去修改数据库版本号,版本一旦升级,那么原来数据库中的表会全部删除再重建.太麻烦, ...
- contos7 使用zabbix监控物理磁盘状态实例
一.系统环境: 物理机:dell R640 操作系统:centos7 二.安装MegaCli 监控主要是通过MegaCli 软件获取到物理主机的read及硬盘相关状态信息.然后通过zabbix的自定义 ...
随机推荐
- Java基础(basis)-----关键字final和static的作用
1.关键字final final修饰类:这个类就不能被继承 final修饰方法:不能被重写 final修饰属性:此属性就是一个常量,一旦初始化后,不可再被赋值.习惯 ...
- [openjudge-搜索]城堡问题(The Castle)
题目描述 描述 图1是一个城堡的地形图.请你编写一个程序,计算城堡一共有多少房间,最大的房间有多大.城堡被分割成mn(m≤50,n≤50)个方块,每个方块可以有0~4面墙. 输入 程序从标准输入设备 ...
- JavaScript 神奇的参数
JS函数的参数,和其他语言区别非常大.它不在乎你传过来多少个参数,也不在乎传过来的参数是什么类型.即使你定义的函数只接受两个参数,你调用这个函数的时候可以传递一个.三个甚至不传参数.这是因为JavaS ...
- Linux上不了网的几个排查点
下面是所有系统通用排查流程: 1.先ping网关: 例ping 192.168.12.1: 如果能通说明本地IP配置和本地到路由器的链路未发生问题. 如果不通需要检查本地设置和本地到路由的网线连接状态 ...
- vue运行时 eslint 报“import/first” WARN deprecated browserslist 问题解决
vue运行时 eslint 报“import/first” WARN deprecated browserslist 问题解决 这个信息的意思是导入文件顺序不对,绝对导入应该放在相对导入前面.将绝对 ...
- java41 类的高级概念
- haproxy 初识
官方网站:http://www.haproxy.org 描述 HAProxy的是一个免费的,非常快速和可靠的解决方案,提供 高可用性, 负载均衡和代理对TCP和基于HTTP的应用程序.它特别适用于流量 ...
- activiti5/6 系列之--BpmnModel使用
BpmnModel对象,是activiti动态部署中很重要的一个对象,如果BpmnModel对象不能深入的理解,那可能如果自己需要开发一套流程设计器,使用bpmn-js使用前端或者C/S展现流程流转而 ...
- 基于PI+QT实现OpenCV图像处理操作(基本环境搭建)
这篇博客就是在PI上直接写出来的!cheers!! PI3的性能已经非常强劲,而作为一个能够独立运行的运算单元,使用它来做图像处理,将是非常适合的.为了挖掘机器的最大潜能,我没有采用比较常见的pyth ...
- PLSQL远程连接数据库(亲测可试)
一.准备工具: ORALCE数据库.PLSQL连接工具.确认网络正常 (我是在局域网中的,如果不是局域网,需要去ORACLE安装目录下找到sqlnet.ora 在里面找到 SQLNET.AUTHENT ...