硬盘方面:
1、查看所有物理磁盘信息
1 | # MegaCli64 -PDList -aALL |
2、查看磁盘缓存策略
1 | # MegaCli64 -LDGetProp -Cache -L0 -a0 |
3、设置磁盘缓存策略
缓存策略解释:1
2
3
4
5
6
7
8WT (Write through
WB (Write back)
ForcedWB (Forced Write back)
NORA (No read ahead)
RA (Read ahead)
ADRA (Adaptive read ahead)
Cached
Direct
例子:1
2
3
4
5
6MegaCli64 -LDSetProp WT|WB|NORA|RA|ADRA -L0 -a0
or
MegaCli64 -LDSetProp -Cached|-Direct -L0 -a0
or
enable / disable disk cache
MegaCli64 -LDSetProp -EnDskCache|-DisDskCache -L0 -a0
强制回写1
MegaCli64 -LDSetProp ForcedWB -lall -a0
4、创建/删除 阵列
4.1 创建一个 raid5 阵列,由物理盘 2,3,4 构成,该阵列的热备盘是物理盘 5
#Enclosure Device ID: 32 #Slot Number: 0-31
MegaCli64 -CfgLdAdd -r5 [32:2,32:3,32:4] WB Direct -Hsp[32:5] -a0
4.2 创建阵列,不指定热备
1 | MegaCli64 -CfgLdAdd -r5 [32:2,32:3,32:4] WB Direct -a0 |
4.3 删除阵列
1 | MegaCli64 -CfgLdDel -L1 -a0 |
4.4 在线添加磁盘
1 | MegaCli64 -LDRecon -Start -r5 -Add -PhysDrv[32:4] -L1 -a0 |
意思是,重建逻辑磁盘组1,raid级别是5,添加物理磁盘号:32:4。重建完后,新添加的物理磁盘会自动处于重建(同步)状态,
这个时候fdisk -l是看不到阵列的空间变大的,只有在系统重启后才能看见。
5、查看阵列初始化信息
5.1 阵列创建完后,会有一个初始化同步块的过程,可以看看其进度。
1 | MegaCli64 -LDInit -ShowProg -LALL -aALL |
或者以动态可视化文字界面显示1
MegaCli64 -LDInit -ProgDsply -LALL -aALL
5.2 查看阵列后台初始化进度
1 | MegaCli64 -LDBI -ShowProg -LALL -aALL |
或者以动态可视化文字界面显示1
MegaCli64 -LDBI -ProgDsply -LALL -aALL
6、创建全局热备
指定第 5 块盘作为全局热备1
MegaCli64 -PDHSP -Set [-EnclAffinity] [-nonRevertible] -PhysDrv[32:5] -a0
也可以指定为某个阵列的专用热备1
MegaCli64 -PDHSP -Set [-Dedicated [-Array1]] [-EnclAffinity] [-nonRevertible] -PhysDrv[32:5] -a0
7、删除全局热备
1 | MegaCli64 -PDHSP -Rmv -PhysDrv[32:5] -a0 |
8、将某块物理盘下线/上线
1 | MegaCli64 -PDOffline -PhysDrv [32:4] -a0 |
9、查看物理磁盘重建进度
1 | MegaCli64 -PDRbld -ShowProg -PhysDrv [32:5] -a0 |
10、命令汇总
1 | 查看Cache 策略设置 # MegaCli64 -cfgdsply -aALL |grep Policy |
JBOD
查看JBOD状态1
2
3
4MegaCli64 -AdpGetProp -enablejbod -aALL
Adapter 0: JBOD: Disabled
Exit Code: 0x00
开启JBOD模式1
MegaCli64 -AdpSetProp -EnableJBOD -1 -aALL
关闭JBOD模式1
MegaCli64 -AdpSetProp -EnableJBOD -0 -aALL
删除RAID01
2
3
4 for i in {0..11}
do
MegaCli64 -CfgLdDel -L$i -a0 -Nolog
done
删完 raid0 后,磁盘状态会变成 Unconfigured(good), Spun Up :1
2
3MegaCli64 -PDList -aALL -Nolog|grep '^Firm'
Firmware state: Unconfigured(good), Spun Up
.....
将磁盘设置JBOD模式1
2
3
4
5
6 for i in {1..11}
do
MegaCli64 -PDMakeJBOD -PhysDrv[32:${i}] -a0
done
Adapter: 0: EnclId-32 SlotId-1 state changed to JBOD.
Exit Code: 0x00
添加RAID0
dell r620 不支持JBOD
1.添加新的磁盘1
2
3
4
5
6MegaCli64 -CfgLdAdd -r0[32:2] WB Direct -a0
说明:
r0: raid0
[32:5]:32为Enclosure Device ID,5为Slot Number
WB Direct:磁盘Write back
2.添加一块带有残余信息的磁盘1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22MegaCli64 -cfgforeign -scan -a0
There are 1 foreign configuration(s) on controller 0.
Exit Code: 0x00
说明:由于是新插入的盘,而且是块有数据的盘,所有提示有外部配置。
MegaCli64 -cfgforeign -clear -a0
Foreign configuration 0 is cleared on controller 0.
Exit Code: 0x00
/MegaCli64 -cfgforeign -scan -a0
There is no foreign configuration on controller 0.
Exit Code: 0x00
说明:清除外部配置信息,清除后再次进行查看
MegaCli64 -CfgLdAdd -r0[32:5] WB Direct -a0
Adapter 0: Created VD 1
Adapter 0: Configured the Adapter!!
Exit Code: 0x00
3.查看Firmware state1
2
3
4
5
6
7MegaCli64 -PDList -aALL -Nolog|grep '^Firm'
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
这里的Firmware state有可能会有类似于“Firmware state: JBOD”状态的
4.检查阵列的配置1
2
3
4
5# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -LALL -aAll | grep RAID
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
https://www.dell.com/support/article/us/en/04/sln292232/extracting-the-raid-controller-logs-via-megacli
https://cloud.tencent.com/info/d2f6c44037f5e22697ea455d3e55e042.html