centos 7 通过MegaCli 可以查询RAID硬盘

MegaCli 是一款管理维护硬件RAID的软件,它可以查看当前 raid 卡的所有信息,包括 raid卡型号,raid阵列类型,raid 上物理磁盘的状态。通常我们很难确定当前物理硬盘的状态,一般通过机房人员巡检来完成,而MegaCli就可以在软件层面来实现硬盘状态的监控。例如通过 MegaCli 的 "Media Error Count" 和 "Other Error Count"这两个数值来确定阵列中磁盘是否有问题。当Medai Error Count 不等于0时,表示磁盘可能有坏道,数值越大就越危险。Other Error Count 表示磁盘可能存在松动。

rpm -ivh MegaCli-8.07.14-1.noarch.rpm

cd /opt/MegaRAID/MegaCli/

ln -s megacli MegaCli64

软件会被安装在 /opt/MegaRAID/MegaCli 目录,运行命令 /opt/MegaRAID/MegaCli/MegaCli64 。

常用命令

复制代码
megacli -AdpAllInfo -aALL [查所有适配器信息]
megacli -cfgDsply -aALL [显示Raid卡型号,Raid设置,Disk相关信息]
megacli -LDInfo -Lall -aALL [查raid状态]

megacli -AdpBbuCmd -aAll [查看电池信息]
megacli -FwTermLog -Dsply -aALL [查看raid卡日志]

megacli -EncInfo -aALL [查看服务器硬盘卡槽信息]

megacli -PDList -aALL [查所有物理硬盘信息]

megacli -AdpBbuCmd -aALL [查看电池信息]

Raid 管理

RAID Level对应关系

复制代码
Raid信息 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 RAID 10

创建一个 raid5 阵列,由物理盘 2,3,4 构成,该阵列的热备盘是物理盘 5

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -Hsp[1:5] -a0

创建阵列,不指定热备

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -a0

查看RAID阵列中掉线的盘

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -pdgetmissing -a0

删除阵列

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdDel -L1 -a0

替换坏掉的模块

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -pdreplacemissing -physdrv[12:10] -Array5 -row0 -a0

在线添加磁盘

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -LDRecon -Start -r5 -Add -PhysDrv[1:4] -L1 -a0

阵列创建完后,会有一个初始化同步块的过程,可以看看其进度。

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -LDInit -ShowProg -LALL -aALL 
或者以动态可视化文字界面显示
/opt/MegaRAID/MegaCli/MegaCli64 -LDInit -ProgDsply -LALL -aALL

查看阵列后台初始化进度

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -LDBI -ShowProg -LALL -aALL

或者以动态可视化文字界面显示

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -LDBI -ProgDsply -LALL -aALL

指定第 5 块盘作为全局热备

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Set [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0

指定为某个阵列的专用热备

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Set [-Dedicated [-Array1]] [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0

删除全局热备

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Rmv -PhysDrv[1:5] -a0

将某块物理盘下线/上线

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDOffline -PhysDrv [1:4] -a0
/opt/MegaRAID/MegaCli/MegaCli64 -PDOnline -PhysDrv [1:4] -a0

手动开启 rebuid

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -pdrbld -start -physdrv[12:10] -a0

关闭 rebuild

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAutoRbld -Dsbl -a0

设置rebuild的速率

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -AdpSetProp RebuildRate -30 -a0

查看物理磁盘重建进度 Rebuild

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ShowProg -PhysDrv [1:5] -a0

或者以动态可视化文字界面显示

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ProgDsply -PhysDrv [1:5] -a0

查看 ES

复制代码
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aAll -NoLog | grep -Ei "(enclosure|slot)"

查看该服务器的硬盘数量及大小

[root@localhost MegaCli]# ./MegaCli64 -PDList -aALL | grep "Non Coerced Size"

Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]

Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]

Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]

Non Coerced Size: 1.818 TB [0xe8d088b0 Sectors]

以上就是megacli的常用命令,实际中可以使用megacli来监控物理硬盘状态。megacli的使用命令有很多,感兴趣的可以详细参考文档。

其他硬件查询命令

#查看物理CPU个数

cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

#查看CPU型号

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

dmidecode -s processor-version

查看CPU物理核数

cat /proc/cpuinfo | grep "cores" | uniq

查看CPU逻辑核数

cat /proc/cpuinfo | grep "processor" | wc -l

lshw -C cpu

lshw -C memory

lshw -C disk

smartctl -a /dev/sdb

#查看阵列卡信息

lspci -v | grep -i raid

lshw -C storage -short

#查询设备SN

dmidecode -t system | grep 'Serial Number' | awk -F : '{print$2}'

相关推荐
羱滒2 分钟前
sql调优之数据库开发规范
java·数据库·数据库开发
程序员Android4 分钟前
MTK多帧拍照流程分析
数据库
likfishdn5 分钟前
Linux的文件与目录管理
linux·运维·服务器
不剪发的Tony老师6 分钟前
Apache Doris:一款高性能的实时数据仓库
数据库·数据仓库
渲染101专业云渲染7 分钟前
川翔云电脑优势总结
服务器·3d·电脑·blender·maya
甜可儿17 分钟前
redis序列化设置
数据库·redis
GGBondlctrl22 分钟前
【SpringBoot】论坛项目中如何进行实现发布文章,以及更新对应数据库的数据更新
数据库·springboot项目·三层设计思想·文章发布项目
chian-ocean24 分钟前
Linux 文件缓冲区:高效数据访问的幕后推手
linux·运维·服务器
加油=^_^=26 分钟前
【Linux】进程优先级 | 进程调度(三)
linux·运维·服务器
若云止水35 分钟前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_init_cycle 函数 - 详解(4)
数据库·nginx·ubuntu