1. 程式人生 > 其它 >【工具相關】LSI MegaRAID卡配置管理

【工具相關】LSI MegaRAID卡配置管理

一、前言

官方手冊說明:StorCLI Reference Manual
華為伺服器操作維護說明:華為V2&V3伺服器 RAID控制卡 使用者指南 49

目前市面常見的RAID卡主要是LSI MegaRAID和PMC Adaptec,前者使用命令列工具為storcli,後者使用命令列工具為arcconf
示例使用的RAID卡為LSI MegaRAID,基於storcli工具介紹raid卡配置管理實踐過程。
注:如不清楚RAID卡型別,可通過lspci |grep -i "raid"查詢

二、安裝

由於LSI於2013年被Broadcom收購,相關軟體下載可從Broadcom官網產品支援頁面

搜尋下載
示例使用Latest StorCLI MR7.20軟體版本,壓縮包包含了Storcli所支援的所有系統軟體包

  • 下載storcli軟體包
wget https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/007.2007.0000.0000_Unified_StorCLI.zip
unzip 007.2007.0000.0000_Unified_StorCLI.zip
  • 根據當前使用的作業系統(示例使用CentOS7.6),安裝對應軟體包
cd Unified_storcli_all_os/
rpm -ivh Linux/storcli-007.2007.0000.0000-1.noarch.rpm
ln -s /opt/MegaRAID/storcli/storcli64 /usr/bin/storcli
  • 檢視storcli版本號
[root@node127 ~]# storcli -v

      StorCli SAS Customization Utility Ver 007.2007.0000.0000 Feb 11, 2022

    (c)Copyright 2022, Broadcom Inc. All Rights Reserved.

三、部署使用

1、基礎語法

storcli基礎語法為:storcli <[object identifier]> <verb><[adverb | attributes | properties] > <[key=value]></verb>

  • 引數表1(object identifier)
object identifier description

當引數為空時,該命令為系統命令
/cx 控制器(RAID卡)特定指令(/controller x),當伺服器存在多張raid卡時,可通過指定不同控制器ID切換不同raid卡配置
/cx/vx 虛擬磁碟特定指令(/controller x/virtual driver x),可以選擇指定控制器下的指定虛擬磁碟
/cx/ex 機箱面板特定指令(/controller x/enclosure x),可以選擇指定控制器下的指定機箱面板
如36盤位服務通常有兩個機箱面板,前面板一根SAS線拖24塊盤,後面板一根SAS線拖12塊盤
/cx/ex/sx 插槽/物理磁碟特定指令(/controller x/enclosure x/slot x),可以選擇指定控制器下的指定機箱面板的指定磁碟
/cx/fx 外部配置特定指令(/controller x/foreign configuration x),可以選擇指定控制器下的指定外部配置
如磁碟殘留有之前的RAID配置資訊,可以選擇對應磁碟進行配置清理或者匯入操作

注:x代表數字編號,當x為all時表示所有,如/c0/vall表示控制器0下所有的虛擬磁碟

  • 引數表2(verb)
verb description
add 增加配置,如虛擬磁碟(VD)、熱備盤(spare)等
del 刪除配置,如虛擬磁碟(VD)、熱備盤(spare)等
set 為屬性設定特定值
show 檢視選定物件所有的屬性資訊
start 開始一個操作
pause 暫停正在進行的操作
resume 恢復已暫停的操作
suspend 中止正在進行的操作,已中止的操作不能恢復
compare 比較輸入值與系統值差異
flush 下刷控制器或者磁碟快取
import 將外部配置匯入到驅動器
expand 擴充套件虛擬磁碟容量

2、系統檢視命令

  • storcli show help
    檢視命令幫助資訊
  • storcli show [all]
    該命令顯示系統的控制器以及控制器相關摘要資訊,包括控制器個數、主機名、作業系統資訊和現有配置概述
[root@node174 ~]# storcli show
Status Code = 0
Status = Success
Description = None

Number of Controllers = 2
Host Name = node174
Operating System  = Linux3.10.0-1160.62.1.el7.x86_64

System Overview :
===============

-------------------------------------------------------------------------------------
Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU  sPR DS  EHS ASOs Hlth 
-------------------------------------------------------------------------------------
  0 AVAGOMegaRAIDSAS9361-8i     8  36   6     0   6     0 Msng On  1&2 Y      3 Opt  
  1 AVAGOMegaRAIDSAS9361-8i     8  36   6     0   6     0 Msng On  1&2 Y      3 Opt  
-------------------------------------------------------------------------------------

輸出資訊對照表

引數 解釋
Ctrl 控制器索引,一個編號對應一個RAID卡,編號從0開始
Model RAID卡型號
PDs 物理驅動器,表示當前RAID卡連線硬碟個數
DGs 驅動器組,表示當前驅動器組個數,一般與VDs個數一致
VDs 虛擬驅動器,表示當前虛擬驅動器個數
  • storcli /cx show [all]
    檢視控制器相關配置資訊
    注:x為控制器索引,如需檢視第一個控制器配置資訊,可執行命令storcli /c0 show;當x為all時表示為所有,如檢視所有控制器配置資訊,則執行命令storcli /call show
  • storcli /cx/vx show [all]
    檢視/指定控制器/指定虛擬驅動器配置資訊
[root@node174 ~]# storcli /c0/vall show
Controller = 0
Status = Success
Description = None


Virtual Drives :
==============

--------------------------------------------------------------
DG/VD TYPE  State Access Consist Cache Cac sCC      Size Name 
--------------------------------------------------------------
0/0   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
1/1   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
2/2   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
3/3   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
4/4   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
5/5   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
--------------------------------------------------------------

輸出資訊對照表

引數 解釋
DG/VD 磁碟組編號/虛擬驅動器編號
TYPE 虛擬驅動器型別,可選引數為JBODRAID0RAID1RAID5RAID6
State 虛擬驅動器狀態,可選引數為Optl(Optimal,表示正常狀態)、Dgrd(Degraded,表示降低狀態,如虛擬驅動器出現磁碟損壞)
  • storcli /cx/ex/sx show [all]
    檢視/指定控制器/指定機箱面板/指定磁碟插槽配置資訊
[root@node174 ~]# storcli /c0/eall/sall show
Controller = 0
Status = Success
Description = Show Drive Information Succeeded.


Drive Information :
=================

-------------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model               Sp Type 
-------------------------------------------------------------------------------
6:1      21 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:2     104 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
10:1    231 Onln   2 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
10:2    158 Onln   2 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    

輸出資訊對照表

引數 解釋
EID:Slt 機箱面板編號:磁碟插槽編號
State 磁碟狀態,可選引數為Onln(磁碟上線,即加入RAID組)、Offln(磁碟離線,即脫離RAID組)、JBOD(磁碟直通)、
UGood(此狀態下可用於建立RAID或熱備盤) 、UBad(磁碟存在其他RAID配置,需手動設定為UGood狀態)、
Rbld(此狀態下磁碟處於重建狀態)
DG 磁碟組編號,表示哪些磁碟屬於同一組RAID
Size 磁碟容量大小
Intf 磁碟介面型別,可選引數為SATASAS
Med 磁碟儲存介質型別,可選引數為HDDSSD
SeSz 磁碟扇區大小
Model 磁碟型號

3、RAID配置

3.1、處理異常狀態

RAID配置之前,涉及磁碟需還原為初始狀態(State為UGood,DG為-)

  • 磁碟State為RAIDx
    手動刪除所有的虛擬驅動器:storcli /cx/vx del
  • 磁碟State為Ubad
    手動更改指定磁碟狀態為UGood:storcli /cx/ex/sx set good
storcli /c0/e10/s14 set good

-------------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model               Sp Type 
-------------------------------------------------------------------------------
10:14   233 UGood  F 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
-------------------------------------------------------------------------------
  • 磁碟State為UGood,DG為F
    手動刪除所有磁碟外部配置:storcli /cx/fall del
storcli /c0/fall del

-------------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model               Sp Type 
-------------------------------------------------------------------------------
10:14   233 UGood  - 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
-------------------------------------------------------------------------------

3.2、配置RAID模式

  • 手動建立RAID:storcli /cx add vd type=raid[0|1|5|6|10|50|60][Size=,,..|*all][name=,..] drives=e:s|e:s-x|e:s-x,y;e:s-x,y,z
storcli /c0 add vd type=raid5  drives=6:11-12,10:1-3
3.2.1、邏輯磁碟管理
  • 顯示邏輯磁碟資訊:storcli /cx/vx show
  • 顯示更詳細的邏輯磁碟資訊:storcli /cx/vx show all
  • 手動刪除邏輯磁碟:storcli /cx/vx del
  • 設定邏輯磁碟寫策略:storcli /cx/vx set wrcache=wt/wb/awb
    注:預設為RWTD模式,參考華為文件:開啟RAID卡Cache
3.2.2、熱備盤管理
  • 設定磁碟為全域性熱備盤:storcli /cx/ex/sx add hotsparedrive
  • 刪除某塊全域性熱備盤:storcli /cx/ex/sx del hostsparedrive
  • 設定磁碟為某個磁碟組的區域性熱備盤:storcli /cx/ex/sx add hotsparedrive dgs=x
  • 刪除某個磁碟組的某塊區域性熱備盤:storcli /cx/ex/sx del hostsparedrive dgs=x

3.3、配置JBOD模式

  • 開啟RAID卡直通功能:storcli /cx set jbod=on
    檢視配置是否設定成功:storcli /c0 show jbod
  • 手動設定控制器所有磁碟為JBOD模式:storcli /cx/eall/sall set jbod
  • 取消JBOD模式設定:storcli /cx/eall/sall set good force

4、RAID重構

  • 設定RAID重構速率:storcli /cx set rebuildrate=x
    注:以百分比為單位,取值範圍為0~100
  • 檢視RAID重構速率:storcli /cx show rebuildrate
  • 檢視某塊磁碟的重構情況:storcli /cx/ex/sx show rebuild
    注:當RAID降級,對應RAID組冗餘磁碟會啟動資料重構操作,可通過storcli /c0/eall/sall show | grep -i Rbld查詢處於重構狀態磁碟的插槽ID
  • 暫停某塊磁碟的重構任務:storcli /cx/ex/sx pause rebuild

5、硬碟定位

點亮硬碟定位指示燈:storcli /cx/ex/sx start locate
關閉硬碟定位指示燈:storcli /cx/ex/sx stop locate
注:執行以上操作,需要先找到磁碟對應插槽位置ID,可通過以下方式查詢

5.1、RAID模式

  • 查詢磁碟對應scsi_id
    可通過lsscsi --scsi_id -g查詢磁碟對應scsi_id,如示例sda磁碟scsi_id為600062b007a78de229f4c51c4adff9b7
[root@node174 ~]# lsscsi  --scsi_id -g | grep sda
[0:2:0:0]    disk    AVAGO    MR9361-8i        4.68  /dev/sda   3600062b007a78de229f4c51c4adff9b7  /dev/sg2 
  • 查詢scsi_id對應RAID組及所屬磁碟列表
    可通過storcli /call/vall show all檢視所有RAID組的SCSI NAA Id,如示例sda磁碟scsi_id為600062b007a78de229f4c51c4adff9b7,所屬raid組為/c0/v0,所屬磁碟插槽為6:1-6
[root@node174 ~]# storcli /call/vall show all 
/c0/v0 :
======

--------------------------------------------------------------
DG/VD TYPE  State Access Consist Cache Cac sCC      Size Name 
--------------------------------------------------------------
0/0   RAID6 Optl  RW     No      RWTD  -   OFF 21.830 TB      
--------------------------------------------------------------
PDs for VD 0 :
============

-------------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model               Sp Type 
-------------------------------------------------------------------------------
6:1      21 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:2     104 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:3      20 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:4     123 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:5      23 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
6:6      84 Onln   0 5.457 TB SATA HDD N   N  512B ST6000NM0115-1YZ110 U  -    
-------------------------------------------------------------------------------
VD0 Properties :
==============
Strip Size = 256 KB
Number of Blocks = 46879735808
VD has Emulated PD = Yes
Span Depth = 1
Number of Drives Per Span = 6
Write Cache(initial setting) = WriteBack
Disk Cache Policy = Disk's Default
Encryption = None
Data Protection = Disabled
Active Operations = None
Exposed to OS = Yes
Creation Date = 22-04-2022
Creation Time = 01:45:00 AM
Emulation type = default
Cachebypass size = Cachebypass-64k
Cachebypass Mode = Cachebypass Intelligent
Is LD Ready for OS Requests = Yes
SCSI NAA Id = 600062b007a78de229f4c51c4adff9b7

5.2、JBOD模式

  • 檢視磁碟對應SN號
    可通過smartctl -a /dev/sdx | grep -i "Serial Number"查詢磁碟對應SN號,如示例磁碟SN號為ZAD1C133
[root@node174 ~]# smartctl -a /dev/sda  | grep -i "Serial Number"
Serial Number:    ZAD1C133
  • 檢視SN號對應磁碟插槽ID
    可通過storcli /call/eall/sall show all | grep -B 2 '{Serial Number}'查詢對應SN號所屬磁碟插槽ID,如示例磁碟SN號ZAD1C133所屬插槽ID為6:3
[root@node174 ~]# storcli /call/eall/sall show all | grep -B 2 'ZAD1C133'
Drive /c0/e6/s3 Device attributes :
=================================
SN =             ZAD1C133