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

相关推荐
九皇叔叔1 小时前
Linux Shell 函数:从定义到实战,让脚本更高效
linux·运维·chrome·shell
安当加密1 小时前
达梦数据库TDE透明加密解决方案:构建高安全数据存储体系
网络·数据库·安全
Jabes.yang4 小时前
Java求职面试实战:从Spring Boot到微服务架构的技术探讨
java·数据库·spring boot·微服务·面试·消息队列·互联网大厂
isyangli_blog4 小时前
(6)数据中心、台式(塔式)服务器、机架式服务器、刀片式服务器
运维·服务器
tq024 小时前
Cookie和Seeion在客户端和服务端的角色作用
运维·服务器·安全
阿巴~阿巴~5 小时前
Redis 核心文件、命令与操作指南
数据库·redis·缓存·客户端·服务端
koping_wu5 小时前
【Redis】用Redis实现分布式锁、乐观锁
数据库·redis·分布式
青衫客365 小时前
浅谈 Protobuf——高效、安全的跨语言通信基石
服务器·安全·远程调用·protobuf
abcefg_h5 小时前
关系型数据库与非关系型数据库
数据库·nosql
Miki Makimura5 小时前
Reactor 模式实现:从 epoll 到高并发调试
运维·服务器·c++·学习