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}'

相关推荐
Titan202419 小时前
Linux网络基础知识
linux·服务器·网络·c++·学习
Java&Develop20 小时前
QuantDinger 宝塔 Linux 部署完整指南
linux·运维·状态模式
IT古董20 小时前
【WMS学习笔记系列】01-需求分析
大数据·数据库
zlinear数据采集卡20 小时前
数据采集卡从入门到精通(9):分辨率与精度——16位卡不等于1/65536的精度
开发语言·数据库·fpga开发·开源·c#
头茬韭菜21 小时前
第 9 篇:「Fluss 运维实战」—— 部署、监控与故障排查
运维·fluss
Titan202421 小时前
Linux网络学习:套接字、UDP的封装与应用
linux·服务器·开发语言·网络·c++
Mico1821 小时前
麒麟v10-MySQL InnoDB Cluster 完整部署与全场景验证(从入门到精通)
数据库·mysql
.冰块.21 小时前
两套完整 Linux 建站实战:Wordpress 博客(LAMP)+ECShop 电商(LNMP)全套手册
linux·运维·项目实战·lnmp·lamp·电商平台·博客平台
杨云龙UP21 小时前
生产环境MySQL多实例XtraBackup全量备份与rsync异地自动传输实践
linux·运维·数据库·mysql·xtrabackup·主从复制·备份恢复