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

相关推荐
疯狂飙车的蜗牛24 分钟前
从零玩转CanMV-K230(4)-小核Linux驱动开发参考
linux·运维·驱动开发
建投数据1 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
恩爸编程1 小时前
探索 Nginx:Web 世界的幕后英雄
运维·nginx·nginx反向代理·nginx是什么·nginx静态资源服务器·nginx服务器·nginx解决哪些问题
Hacker_LaoYi2 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀2 小时前
Redis梳理
数据库·redis·缓存
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
Michaelwubo2 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
你的微笑,乱了夏天3 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
远游客07133 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
工业甲酰苯胺3 小时前
分布式系统架构:服务容错
数据库·架构