使用storcli/storcli64工具配置RAID

storcli

storcli工具上传到服务器任意目录,并使用命令chmod +x storcli64修改文件权限为可执行。
在这里插入图片描述

系统下查看Raid卡

[root@localhost:~] lspci | grep LSI

0000:81:00.0 RAID bus controller: Avago (LSI) MegaRAID SAS Invader Controller [vmhba2]

通过命令ln -s /root/storcli64 /usr/bin/storcli来设置软链接,这样后续可以在任意目录下输入storcli执行./ storcli64,和系统命令一样。

首先使用storcli /c0 show命令查看 RAID 控制器信息,
其中包含磁盘的拓扑结构、RAID信息、物理磁盘配置状态等信息。

注释:
c:Controller,控制器,也就是阵列卡;

e:Enclosure,附件,一般来讲也就是硬盘背板“硬盘笼”;

s:Slot,物理硬盘槽位;

v:Virtual Drive,虚拟硬盘,也就是逻辑卷;

d:Disk Group,硬盘组;

f:Foreign configuration file,外部阵列配置。

在这里插入图片描述
还能看到阵列卡的温度。
在这里插入图片描述
上面是硬盘插槽全空时的回显,在1、2槽位插上两块960G的SSD之后,回显中增加了PD LIST物理磁盘列表,显示如下:
在这里插入图片描述
通过命令storcli /c0/vall show来查看RAID逻辑卷的配置情况,当前为未配置RAID。
在这里插入图片描述

首次创建RAID

步骤 1:如果原磁盘存在 RAID,需要将 RAID 删除

在这里插入图片描述

使用storcli /c0 /vall show命令查看已有的阵列配置信息
如果存在,需要使用storcli /c0 /v0 delete删除相关配置。
如果 vd 包含 MBR 或者用户信息数据,需要加 force 参数强制删除。

步骤 2:创建 RAID

storcli64工具创建RAID的具体使用方法如下:

storcli /cx add vd r[0|1|5|6|00|10|50|60][Size=,,..|all][name=,..]drives=e:s|e:s-x|e:s-x,y[PDperArray=x|auto][SED][pdcache=on|off|default][pi][DimmerSwitch(ds)=default|automatic(auto)|none|maximum(max)|MaximumWithoutCaching(maxnocache)][WT|WB|AWB][nora|ra][direct|cached] [cachevd][Strip=<8|16|32|64|128|256|512|1024>] [AfterVd=X][Spares = [e:]s|[e:]s-x|[e:]s-x,y][force][Cbsize=0|1|2 Cbmode=0|1|2|3|4|7]
本例中,对1、2操作两个硬盘创建RAID0的操作命令如下:

storcli /c0 add VD r0 drives=252:0,252:1

可以使用该命令直接新建RAID0。
在这里插入图片描述
对于一些场景,可能需要使用“Size=all”的配置参数,用于增加磁盘的所有空间到逻辑卷。
在这里插入图片描述
还可以通过参数“name=raid0”来指定RAID名称,会在Virtual Drives的Name处显示。
在这里插入图片描述
如果配置不想要了,就可以通过storcli /c0/v0 delete force来删除RAID配置。
在这里插入图片描述
再新建两组RAID,两块SSD做RAID0,4块SATA盘做raid0,并分别命名。

在这里插入图片描述

更换硬盘,重建RAID

实际使用过程中,遇到比较多的就是硬盘故障。介于手头资源有限,一共是2块960G的固态盘,加上4块4T的SATA盘,所以用3块SATA盘做RAID5,另外1块模拟新盘来操作。

首先创建一个3块硬盘的RAID5阵列。
在这里插入图片描述通过命令storcli /c0 /eall /sall show来查看物理磁盘信息。
在这里插入图片描述

磁盘状态描述:

UGood(Unconfigured Good,未配置正常):硬盘状态正常,但还未划分给任何逻辑卷;

UBad(Unconfigured Bad,未配置异常):UGood状态的硬盘出现无法恢复的错误;

Onln(Online,在线):已经设置为某个虚拟硬盘的成员盘,并且处于在线正常可用状态;

Offln(Offline,离线):某个虚拟硬盘的成员盘离线;

Missing,Online状态的硬盘脱离RAID组的状态;

Rbld(Rebuild,重建):硬盘正在重建数据。

拔掉5槽位编号为252:4的硬盘,操作之后使用命令storcli /c0 /vall show来查看阵列信息。发现RAID5阵列状态为Dgrd(degreed,降级),临近故障,参考之前做的硬件RAID测试(硬件RAID横评(上)、硬件RAID横评(下)),RAID5只能接受一块硬盘故障,如果再拔一块盘,则会进入到Failed(故障)状态。
在这里插入图片描述
此时,再把备用的6号硬盘作为新盘插到5号槽位,可以看到新插入的磁盘状态为Rbld,正在恢复数据,重建RAID。
在这里插入图片描述
可以通过命令storcli /c0/e252/sall show rebuild 来查看rebuild的进展,不过时间也是真的长,RAID没有数据信息,重建仍然需要4个半小时以上。
在这里插入图片描述

删除外部RAID配置

比如在上面的操作中,因为操作顺序问题,5号槽位硬盘曾作为RAID5成员, 6号槽位硬盘曾作为RAID0成员,拔出后保留了之前的RAID相关配置,这部分配置会导致这两块硬盘的DG状态为F(Foreign),无法加入新的虚拟硬盘。
在这里插入图片描述
此时,可以使用命令storcli /c0/fall delete删除掉控制器c0的所有外部配置信息,删除后DG状态为空,可以正常使用。
在这里插入图片描述

单独替换硬盘

上面操作的是直接替换的场景,如果硬盘仍在使用中,
需要使用命令storcli /c0/e252/s4 set offline将5槽位硬盘设置为离线Offline,
再使用命令storcli /c0/e252/s4 set missing将硬盘设置为missing状态,
之后才可以将原故障硬盘拔出,换上新的硬盘。

在这里插入图片描述

引入外部RAID配置

上面提到了手工指定硬盘状态,对于处于”UBad“状态的硬盘
可以通过命令storcli /c0 /e252 /s2 set good将其设置为“UGood”状态,方便后续使用。
在这里插入图片描述
设置好之后,可以看到硬盘的DG状态显示为F,说明有外部RAID配置。
在这里插入图片描述

可以使用命令storcli /c0 show查看外部RAID的详细信息。
在这里插入图片描述
此时可以尝试通过命令storcli /c0 /fall import将原有的RAID配置恢复。
在这里插入图片描述
再次使用命令storcli /c0 /eall /sall show查看磁盘状态。
在这里插入图片描述

手工重建RAID

如前面操作过程,正常插入新的硬盘之后会自动重建RAID,如果没有自动重建,则需要执行以下操作。

首先确认磁盘位置,从硬盘状态可以看到DG组的值为A,从面板上确认硬盘在第B列、第C行,如硬盘插入到5号槽位,那就是第0列,第2行,对应命令为:storcli /c0 /e252 /s4 insert dg=1 array=0 row=2。

在这里插入图片描述
再通过命令storcli /c0/e252/s4 start rebuild来手动触发数据重建,也可以使用pause、resume命令来暂停、继续重建任务。

在这里插入图片描述
可以使用命令storcli64 /c0/e252/s4 show rebuild来单独查看4槽位的rebuild进度。

在这里插入图片描述

storcli 命令在线设置硬盘为直通(jbod)模式

1.确认raid卡支持jbod模式并开启jbod模式:
storcli64 /c0 show all |grep -i jbod

[root@centos7]# storcli /c0 show all |grep -i jbod
Support JBOD = Yes
Support SecurityonJBOD = Yes
Support JBOD Write cache = No
Enable JBOD = Yes

support JBOD = Yes , 说明阵列卡支持jbod模式

Enable JBOD = Yes , 说明当前开启jbod模式,关闭则 storcli64 /c0 set jbod=off

2.把指定设备设置成jbod模式:

storcli64 /c0/ex/sx set jbod

3.修改jbod模式为UGOOD模式:

参考连接https://www.cnblogs.com/zhou1/p/12304005.html

如果要将该设备的jbod模式撤销掉 storcli64 /c0/ex/sx set good force

[root@centos7]# storcli /c0/e9/s15 set good force
CLI Version = 007.0606.0000.0000 Mar 20, 2018
Operating system = Linux 3.10.0-862.el7.x86_64
Controller = 0
Status = Success
Description = Set Drive Good Succeeded.

[root@centos7]# storcli64 /c0 set jbod=on 全局设置为JBOD 模式.


设置硬盘状态
storcli /c1/e8/s0 show all

storcli /c1/e8/s0 start locate
storcli /c1/e8/s0 set offline
storcli /c1/e8/s0 set online
storcli /c1/e8/s0 set jbod

设置控制器 0 背板36 槽位号为1的磁盘状态为good
storcli64 /c0/e36/s1 set good

设置控制器 0 背板36 槽位号为1的磁盘状态为offline
storcli64 /c0/e36/s1 set offline

设置控制器为0 背板为36 槽位号为1的磁盘状态为online
storcli64 /c0/e36/s1 set online

磁盘初始化
参考连接
https://www.cnblogs.com/chong93/p/10470032.html

磁盘在其他系统中使用过磁盘不干净的情况下需对磁盘进行初始化,
初始化会清理掉磁盘上的所有数据

#查看正在初始化的磁盘
storcli64 /cx/ex/sx show initialization

#磁盘开始初始化
storcli64 /cx/ex/sx start initialization

#停止磁盘的初始化
storcli64 /cx/ex/sx stop initialization

磁盘擦除

磁盘擦除
快速擦除:

storcli64 /cx/ex/sx set good

storcli64 /cx/fall del|delete [securityKey = xxx]

 

完全擦除:

storcli /cx[/ex]/sx secureerase [force]
storcli /cx[/ex]/sx start erase [simple| normal| thorough | standard| threepass | crypto]
storcli /cx[/ex]/sx stop erase
storcli /cx[/ex]/sx show erase

storcli64

1.1 介绍

storcli64可对LSIRAID卡基本操作进行管理,本文主要是对LSIRAID卡常使用到的命令进行介绍

1.2 基本语法

获取控制器号:storcli64 /call show all
/c 控制器号 输出结果中的Controller 值
/v RAID号
/e 背板号 输出结果EID值
/f 外部配置
/s 槽位号 输出结果的Slt值

1.3 系统

查看RAID控制器摘要信息
storcli64 show
查看详细RAID控制器信息
storcli64 show all
查看帮助文档
storcli64 -h

1.4 控制器

查看属性语法:storcli64 /cx show
如查看蜂鸣器状态:strocli64 /c0 show alarm
设置某个属性语法:storcli64 /cx set
如设置蜂鸣器开启:storcli64 /cx set alarm=on

1.5 物理磁盘

可查看磁盘的健康状态,对不健康的磁盘进行替换,设置磁盘状态,设置磁盘初始化,对磁盘进行定位

1.5.1 查看磁盘健康状态

storcli64 -PDList -aALL
对于每块物理磁盘的描述信息,主要关注一下几项:
Slot Number : 表示磁盘的插槽位置,可以根据Slot Number序列值推断是否有磁盘离线
Medai Error Count : 表示磁盘可能错误,可能是磁盘有坏道,这个值不为0值得注意,数值越大,危险系数越高
Other Error Count : 表示磁盘可能存在松动,可能需要重新再插入
Predictive Failure Count : ( 预测性失败统计)
Firmware state : 表示磁盘的状态,可以判断磁盘是否损坏。正常状态是Online, Spun Up

1.5.2 查看磁盘

查看控制器为0 背板为36槽位号为1的磁盘
storcli64 /c0/e36/s1 show
查看控制器0 所有背板及背板上的所有磁盘信息
storcli64 /c0/eall/sall show
查看所有控制器 所有背板 背板上的所有磁盘的详细信息
storcli64 /call/eall/sall show all

1.5.3 设置磁盘状态

设置控制器 0 背板36 槽位号为1的磁盘状态为good
storcli64 /c0/e36/s1 set good
设置控制器 0 背板36 槽位号为1的磁盘状态为offline
storcli64 /c0/e36/s1 set offline
设置控制器为0 背板为36 槽位号为1的磁盘状态为online
storcli64 /c0/e36/s1 set online

1.5.4 磁盘初始化

磁盘在其他系统中使用过磁盘不干净的情况下需对磁盘进行初始化,初始化会清理掉磁盘上的所有数据
查看正在初始化的磁盘
storcli64 /cx/ex/sx show initialization
磁盘开始初始化
storcli64 /cx/ex/sx start initialization
停止磁盘的初始化
storcli64 /cx/ex/sx stop initialization

1.5.5 磁盘定位

开始定位
storcli64 /cx/ex/sx start locate
停止定位
storcli64 /cx/ex/sx stop locate

1.6 RAID

1.6.1 新建RAID

必须含有的参数 RAID类型 RAID大小 RAID名称 和包含的磁盘
storcli64 /cx add RAID r 0|1|5|6|10|50|60 Size=<RAID1_Sz>,<RAID2_Sz>,…|*all name=,drives=e:s|e:s-x|e:s-x,y;e:s-x,y,z
例子:
使用默认参数创建的RAID5 读策略为ra: Read ahead 写策略wt io策略为direct 条带大小为256
storcli64 /c0 add RAID r5 size=all name=diskarray01 drives=36:15-16,36:18
设置读写策略条带大小的RAID5
storcli64 /c0 add vd r5 size=all name=diskarray01 drives=50:5-7,50:9 awb ra cached strip=256
在这里插入图片描述

1.6.2 热备

查看磁盘状态:storcli64 /c0 /eall/sall show 磁盘状态为UGOOD空闲盘,磁盘状态为DHS为专属热备,磁盘状态为GHS为全局热备

添加专属热备
  1. 获得dgs号 storcli64 /call/vall show 可看到DG及dgs的值为特定的DG配置热备
  2. 获取空闲磁盘storcli64 /c0 /eall/sall show 磁盘状态为UGOOD

c. 语法storcli64 /cx/ex/sx add hotsparedrive dgs=x

  1. 例:storcli64 /c0/e3/s6 add hotsparedrive dgs=0 背板为3,槽位为6的磁盘做
    dgs为0的RAID的专属热备
添加全局热备

查看空闲磁盘storcli64 /c0 /eall/sall show 磁盘状态为UGOOD
storcli64 /cx/ex/sx add hotsparedrive
如:storcli64 /c0/e3/s6 add hotsparedrive 背板为3,槽位为6的磁盘作为全局热备
删除热备

查看热备盘 storcli64 /c0 /eall/sall show 磁盘状态为DHS,GHS
b. 删除热备盘 storcli /c0/ex/sx delete hotsparedrive

1.6.3 删除RAID

先查看要删除的RAID 查看到对应的VD号 storcli64 /c0/vall show
删除RAID
storcli64 /cx/vx del
例:storcli64 /c0/v1 del 删除虚拟设备号为1的RAID
删除含有用户数据(MBR或者分区信息)的RAID
storcli64 /cx/vx del force

1.6.4 查看RAID

查看控制器上的所有
RAID storcli64 /call/vall show
查看具体的RAID虚拟设备号为1的详细信息
storcli64 /c0/v1 show all

1.6.5 RAID缓存设置

设置写缓存语法:storcli64 /cx/vx set wrcache=wt|wb|awb wt 是关闭缓存wb 在RAID卡没有电池的情况下开启写缓存 awb在RAID卡含有电池的情况下开启写缓存
设置读缓存语法:storcli64 /cx/vx set racache=nora|ra nora不会读缓存里面内容 ra 先读缓存里有的内容
设置io 优先级的语法:storcli64 /cx/vx set iopolicy=direct|cached
开启读缓存
storcli64 /call/v1 set rdcache=ra
开启写缓存
开启写缓存需要先设置IO优先级为缓存 storcli /c0/v1 set iopolicy=cached
storcli64 /call/v1 set wrcache=wb
或者 storcli64 /call/v1 set wrcache=awb
关闭读缓存
storcli64 /call/v1 set rdcache=nora
关闭写缓存
storcli64 /call/v1 set wrcache=wt

1.6.6 RAID初始化

查看快速初始化
storcli64 /cx/vx show init
开启快速初始化
storcli64 /cx/vx start init
开启完全初始化
storcli64 /cx/vx start init full
停止初始化
storcli64 /cx/vx stop init
RAID5(5块以上)和RAID6(6块以上)在进行快速初始化时会转到后台进行初始化
查看后台初始化
storcli64 /cx/vx show bgi
停止初始化
storcli64 /call/v1 stop bgi
挂起初始化
storcli64 /call/v1 suspend bgi

1.6.7 RAID一致性校验

查看初始化
storcli64 /cx/vx show cc
开启初始化
storcli64 /cx/vx start cc
停止初始化
storcli64 /cx/vx stop cc
smartor基本设置下一致性校验 是在特定的时间执行一致性校验,在页面设置即可
LSIRAID卡自带的一致性校验
查看一致性校验执行的具体时间
storcli64 /cx show cc
设置卡自带的一致性校验方式顺序或者并发
storcli64 /cx set consistencycheck=seq|con
关闭卡自带的一致性校验
storcli64 /cx set cc=off

1.6.8 copyback

在这里插入图片描述

1.7 日志

storcli64支持的日志
清除所有日志事件
storcli64 /cx clear events
删除TTY(用于故障定位的固件输出信息) 日志
storcli64 /cx delete termlog
将日志信息保存到指定文件
storcli64 /cx show events file=
查看产生日志文件的历史信息
storcli64 /cx show eventloginfo
查看term log 日志配置或者日志信息
storcli64 /cx show termlog type=config|contents

1.8 异常情况

1.8.1 异常断电对初始化影响

RAID0,RAID1,RAID5(小于5块盘)RAID(小于6块盘)RAID10,RAID50,RAID60在重启之后不会再进行初始化
RAID5(5块以上)和RAID6(6块以上)会停止前台初始化,在后台进行初始化,使用命令 storcli64 /c0 show bgi可以查看到

1.8.2 拔盘热备和1块数据盘恢复

将盘插回去 查看磁盘状态 storcli64 /cx/ex/sall show all 磁盘状态为ubad
设置磁盘状态为good storcli64 /c0/ex/sx set good
查看磁盘状态 storcli64 /cx/ex/sx show 磁盘状态为 UGOOD -F
导入磁盘 storcli64 /cx/fall import
查看磁盘状态 storcli64 /cx/ex/sx show 磁盘状态为 UGOOD -
磁盘为可用状态

1.8.3 RAID 以损坏恢复磁盘可用

卸载已损坏raid上建的文件系统:umount …
删除已顺坏raid上的lvm管理映射:
dmsetup remove /dev/p1/* (p1为raid上存储池名)
echo 1 > /sys/block/sdb/device/delete (sdb为实际区下)
删除损坏的raid: storcli64 /cx/vx del

当更换了磁盘,处于UGood状态,需要把磁盘做raid

参考链接:https://www.cnblogs.com/xkus/p/9529995.html

参考连接:https://blog.csdn.net/weixin_42595012/article/details/124701806
https://blog.csdn.net/wxt_hunxiaozi/article/details/122882526

Linux下查看Raid磁盘阵列信息的方法

https://www.cnblogs.com/276815076/p/3282422.html

  • 9
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 StorCLI 中启用 JBOD 模式并创建 RAID,您可以按照以下步骤进行操作: 1. 确认系统中的适配器编号。可以使用以下命令列出当前系统中的所有适配器: ``` storcli /c all show ``` 2. 进入适配器所在的目录: ``` cd /opt/MegaRAID/storcli/ ``` 3. 进入适配器目录并创建 JBOD 模式: ``` ./storcli /c0 set jbod=on ``` 4. 创建 RAID: ``` ./storcli /c0 add vd type=raid0 drives=252:0,252:1 ``` 其中,`/c0` 是适配器编号,`type=raid0` 表示创建 RAID0,`drives=252:0,252:1` 表示使用编号为 252 的物理驱动器 0 和 1 创建 RAID。 5. 查看 RAID 状态: ``` ./storcli /c0/v0 show ``` 6. 初始化 RAID: ``` ./storcli /c0/v0 start init ``` 这些命令将启用 JBOD 模式并创建 RAID0。请注意,这些命令可能需要根据您的系统和适配器进行调整。 ### 回答2: 在storcli工具中,JBOD模式是指将硬盘配置为无RAID模式,而RAID模式则是指硬盘被组合成一个逻辑单元,在JBOD模式下无法进行RAID配置和管理。 RAID(Redundant Array of Independent Disks)即独立磁盘冗余阵列,它通过将多个硬盘组合成一个逻辑单元,实现数据的冗余和性能的提升。RAID提供了不同的级别,如RAID 0、RAID 1、RAID 5等,每个级别都有不同的特点和适用场景。 而在storcli中,最高级的RAID模式就是将所有硬盘配置成JBOD,即将硬盘设置为无RAID模式。在JBOD模式下,每个硬盘都是单独工作的,没有冗余和性能提升。这种模式主要适用于不需要数据冗余和对性能要求较低的场景,如备份存储、大规模存储等。 要开启JBOD模式,在storcli中可以使用相应的命令进行配置。具体步骤如下: 1. 打开终端或命令提示符,并登录storcli工具的命令行界面。 2. 使用storcli的命令参数设置JBOD模式,比如: storcli /cx set jbod=all 其中,/cx表示要设置的控制器编号,可以根据具体情况进行调整,jbod=all表示将所有硬盘设置为JBOD模式。 3. 等待命令执行完成,确认JBOD模式的设置已经生效。 需要注意的是,在开启JBOD模式后,之前配置RAID模式将被清除,其中的数据将会丢失。因此,在进行JBOD模式配置之前,请务必备份和迁移重要的数据,以免造成不可挽回的损失。 总结来说,storcli jbod模式开启后,硬盘将被设置为无RAID模式,适用于不需要数据冗余和对性能要求较低的存储场景。 ### 回答3: storcli是一款管理LSI/Avago RAID卡的工具,它提供了一系列的命令来配置和管理RAID。在storcli中,JBOD模式被称为RAID最高级,以下是具体解释: JBOD模式是一个RAID模式,它代表“Just a Bunch Of Disks”,可以将多个磁盘组成一个单独的大容量存储设备。与传统的RAID模式相比,JBOD模式不会提供数据冗余和故障容错能力。相反,它只是简单地将所有磁盘组合在一起,使其看起来像是一个较大的磁盘。 当使用storcli开启JBOD模式时,我们可以将一组磁盘配置为一个RAID卷。这个卷可以被操作系统识别和使用,就像是一个普通的磁盘。如果使用的是JBOD模式,没有RAID级别的选择,数据不会被分块或复制。因此,在JBOD模式下,RAID卡将会简单地呈现出一组磁盘,没有其他的数据保护机制。 使用storcli开启JBOD模式的方法是根据具体的操作系统和RAID卡型号而有所不同。通常情况下,我们可以通过以下步骤来完成操作: 1. 安装storcli工具,可以从官方网站下载对应的版本。 2. 打开终端或命令提示符,并登录到RAID卡所在的服务器系统。 3. 运行相应的storcli命令,例如"storcli /c0 add jbod drives=1-4",其中"/c0"表示控制器编号,"add"表示添加操作,"jbod"表示使用JBOD模式,"drives=1-4"表示要添加的磁盘编号。 4. 执行命令后,storcli将会将指定的磁盘组合在一起,并创建一个JBOD卷。在操作完成后,操作系统将会识别JBOD卷,并可以正常使用。 总之,JBOD模式是storcli中的一种RAID模式,它将多个磁盘组合在一起形成一个较大的存储设备,但不提供数据冗余和故障容错能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值