[Hardware][Storage] DELL PERC H710 MiniをCLIで操作する

オンラインでディスクの増設を行いました。

昨日ヤフオクでディスクマウンタ(Dell PowerEdge R320向け)を3つほど買いまして、手持ちの500GB HDDを2本追加して拡張を行いました。今まで実はほとんどPERCを触ったことがなくて、いろいろ戸惑うところが多かったこともあり、備忘録として記事に残すことにしました。

HPEのiLOとは異なり、DELLのiDRACEnterpriseだとある程度ストレージの設定も触れそうなのですが、機能制限がなんぼか入ってるようで、そこに気づくのにけっこうな時間がかかり、苦労しました。  

コマンドライン

PERC CLIのインストール

サポートサイトからダウンロードしてくる。
サポートサイト上では、プラットフォーム毎にダウンロードファイルが提供されており、今回はVMware用のものをダウンロードした。

インストールすると /opt/lsi/perccli ディレクトリにファイルが配置される。そこへ移動したうえで ./perccli コマンドを実行することになる。

ESXiシェルへログインしたうえで、解凍・実装を行う
# tar zxvf PERCCLI_4H10X_7.1327.0_A09_VMware.tar.gz
# esxcli software vib install -v /vmfs/volumes/LOCAL-SUISEN00/patches/ESXI\ 6.7/vmware-perccli-007.1327.vib --no-sig-check

コントローラの状態確認

今回、モジュールとして実装されているコントローラは Ctrl ID = 0 となっている。コントローラは基本的に c0 と表記することになる。その他エンクロージャのパラメータやディスクのパラメータはこのコマンドを使用した出力結果をもとに入力することになる。

./perccli show

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Status Code = 0
Status = Success
Description = None

Number of Controllers = 1
Host Name = suisen
Operating System  = VMkernel 6.7.0
StoreLib IT Version = 07.1400.0200.0800
StoreLib IR3 Version = 16.12-0

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

-------------------------------------------------------------------------
Ctl Model        Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
-------------------------------------------------------------------------
  0 PERCH710Mini     8   6   1     0   1     0 Opt On  All N      0 Opt
-------------------------------------------------------------------------

Ctl=Controller Index|DGs=Drive groups|VDs=Virtual drives|Fld=Failed
PDs=Physical drives|DNOpt=Array NotOptimal|VNOpt=LD NotOptimal|Opt=Optimal
Msng=Missing|Dgd=Degraded|NdAtn=Need Attention|Unkwn=Unknown
sPR=Scheduled Patrol Read|DS=DimmerSwitch|EHS=Emergency Spare Drive
Y=Yes|N=No|ASOs=Advanced Software Options|BBU=Battery backup unit/CV
Hlth=Health|Safe=Safe-mode boot


コントローラ番号がわかったところで、今度はコントローラを明示的に指定してCLIを実行する。
今度はかなり細かい情報が出力される。ここでエンクロージャ番号やディスクスロット番号がわかるようになる。

コントローラ番号がわかったので、コントローラを指定してshowコマンドを実行する。
./perccli /c0 show

Generating detailed summary of the adapter, it may take a while to complete.

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Controller = 0
Status = Success
Description = None

Product Name = PERC H710 Mini
Serial Number = 45507HV
SAS Address =  5b82a720cf446d00
PCI Address = 00:01:00:00
System Time = 07/02/2021 13:31:28
Mfg. Date = 05/10/14
Controller Time = 07/02/2021 13:31:34
FW Package Build = 21.3.4-0001
BIOS Version = 5.42.00.1_4.12.05.00_0x05290003
FW Version = 3.131.05-8147
Driver Name = lsi_mr3
Driver Version = 7.713.07.00
Vendor Id = 0x1000
Device Id = 0x5B
SubVendor Id = 0x1028
SubDevice Id = 0x1F38
Host Interface = PCI-E
Device Interface = SAS-6G
Bus Number = 1
Device Number = 0
Function Number = 0
Domain ID = 0
Drive Groups = 1

TOPOLOGY :
========

-----------------------------------------------------------------------------
DG Arr Row EID:Slot DID Type  State BT       Size PDC  PI SED DS3  FSpace TR
-----------------------------------------------------------------------------
 0 -   -   -        -   RAID5 Optl  N    1.362 TB dflt N  N   dflt N      N
 0 0   -   -        -   RAID5 Optl  N    1.362 TB dflt N  N   dflt N      N
 0 0   0   32:0     0   DRIVE Onln  N  465.250 GB dflt N  N   dflt -      N
 0 0   1   32:1     1   DRIVE Onln  N  465.250 GB dflt N  N   dflt -      N
 0 0   2   32:2     2   DRIVE Onln  N  465.250 GB dflt N  N   dflt -      N
 0 0   3   32:3     3   DRIVE Onln  N  465.250 GB dflt N  N   dflt -      N
-----------------------------------------------------------------------------

DG=Disk Group Index|Arr=Array Index|Row=Row Index|EID=Enclosure Device ID
DID=Device ID|Type=Drive Type|Onln=Online|Rbld=Rebuild|Optl=Optimal|Dgrd=Degraded
Pdgd=Partially degraded|Offln=Offline|BT=Background Task Active
PDC=PD Cache|PI=Protection Info|SED=Self Encrypting Drive|Frgn=Foreign
DS3=Dimmer Switch 3|dflt=Default|Msng=Missing|FSpace=Free Space Present
TR=Transport Ready

Virtual Drives = 1

VD LIST :
=======

-------------------------------------------------------------
DG/VD TYPE  State Access Consist Cache Cac sCC     Size Name
-------------------------------------------------------------
0/0   RAID5 Optl  RW     Yes     RWBD  -   OFF 1.362 TB VD0
-------------------------------------------------------------

VD=Virtual Drive| DG=Drive Group|Rec=Recovery
Cac=CacheCade|OfLn=OffLine|Pdgd=Partially Degraded|Dgrd=Degraded
Optl=Optimal|dflt=Default|RO=Read Only|RW=Read Write|HD=Hidden|TRANS=TransportReady|B=Blocked|
Consist=Consistent|R=Read Ahead Always|NR=No Read Ahead|WB=WriteBack|
AWB=Always WriteBack|WT=WriteThrough|C=Cached IO|D=Direct IO|sCC=Scheduled
Check Consistency

Physical Drives = 6

PD LIST :
=======

------------------------------------------------------------------------------------
EID:Slt DID State DG       Size Intf Med SED PI SeSz Model                  Sp Type
------------------------------------------------------------------------------------
32:0      0 Onln   0 465.250 GB SATA HDD N   N  512B WDC WD5000LPCX-16VHAT1 U  -
32:1      1 Onln   0 465.250 GB SATA HDD N   N  512B WDC WD5000LPCX-16VHAT1 U  -
32:2      2 Onln   0 465.250 GB SATA HDD N   N  512B WDC WD5000LPVX-08V0TT5 U  -
32:3      3 Onln   0 465.250 GB SATA HDD N   N  512B WDC WD5000LPCX-16VHAT1 U  -
32:4      4 UGood  - 465.250 GB SATA HDD N   N  512B ST500LT012-9WS142      U  -
32:5      5 UGood  - 465.250 GB SATA HDD N   N  512B ST500LT012-1DG142      U  -
------------------------------------------------------------------------------------

EID=Enclosure Device ID|Slt=Slot No.|DID=Device ID|DG=DriveGroup
DHS=Dedicated Hot Spare|UGood=Unconfigured Good|GHS=Global Hotspare
UBad=Unconfigured Bad|Sntze=Sanitize|Onln=Online|Offln=Offline|Intf=Interface
Med=Media Type|SED=Self Encryptive Drive|PI=Protection Info
SeSz=Sector Size|Sp=Spun|U=Up|D=Down|T=Transition|F=Foreign
UGUnsp=UGood Unsupported|UGShld=UGood shielded|HSPShld=Hotspare shielded
CFShld=Configured shielded|Cpybck=CopyBack|CBShld=Copyback Shielded
UBUnsp=UBad Unsupported|Rbld=Rebuild

Enclosures = 1

Enclosure LIST :
==============

--------------------------------------------------------------------
EID State Slots PD PS Fans TSs Alms SIM Port# ProdID VendorSpecific
--------------------------------------------------------------------
 32 OK        8  6  0    0   0    0   0 00 x1 BP12G+ 42M1572
--------------------------------------------------------------------

EID=Enclosure Device ID |PD=Physical drive count |PS=Power Supply count|
TSs=Temperature sensor count |Alms=Alarm count |SIM=SIM Count ||ProdID=Product ID


BBU_Info :
========

----------------------------------------------
Model State   RetentionTime Temp Mode MfgDate
----------------------------------------------
BBU   Optimal 0 hour(s)     49C  -    0/00/00
----------------------------------------------

ディスク情報・状態の確認

ディスク単体の情報を知るには以下のようなコマンドを実行する。エンクロージャ番号とディスクスロット番号が必要になる。ディスクの状態を知るには「Drive /cX/eXX/sX State」を確認するとよい。

./perccli /c0/e32/s4 show all

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Controller = 0
Status = Success
Description = Show Drive Information Succeeded.


Drive /c0/e32/s4 :
================

-------------------------------------------------------------------------------
EID:Slt DID State DG       Size Intf Med SED PI SeSz Model             Sp Type
-------------------------------------------------------------------------------
32:4      4 Onln  -  465.250 GB SATA HDD N   N  512B ST500LT012-9WS142 U  -
-------------------------------------------------------------------------------

EID=Enclosure Device ID|Slt=Slot No.|DID=Device ID|DG=DriveGroup
DHS=Dedicated Hot Spare|UGood=Unconfigured Good|GHS=Global Hotspare
UBad=Unconfigured Bad|Sntze=Sanitize|Onln=Online|Offln=Offline|Intf=Interface
Med=Media Type|SED=Self Encryptive Drive|PI=Protection Info
SeSz=Sector Size|Sp=Spun|U=Up|D=Down|T=Transition|F=Foreign
UGUnsp=UGood Unsupported|UGShld=UGood shielded|HSPShld=Hotspare shielded
CFShld=Configured shielded|Cpybck=CopyBack|CBShld=Copyback Shielded
UBUnsp=UBad Unsupported|Rbld=Rebuild


Drive /c0/e32/s4 - Detailed Information :
=======================================

Drive /c0/e32/s4 State :
======================
Shield Counter = 0
Media Error Count = 0
Other Error Count = 0
Drive Temperature =  30C (86.00 F)
Predictive Failure Count = 0
S.M.A.R.T alert flagged by drive = No


Drive /c0/e32/s4 Device attributes :
==================================
SN = W0VBNJYF
Manufacturer Id = ATA
Model Number = ST500LT012-9WS142
NAND Vendor = NA
WWN = 5000C50069FC2ACB
Firmware Revision = 0001SDM1
Raw size = 465.761 GB [0x3a386030 Sectors]
Coerced size = 465.250 GB [0x3a280000 Sectors]
Non Coerced size = 465.261 GB [0x3a286030 Sectors]
Device Speed = 3.0Gb/s
Link Speed = 3.0Gb/s
NCQ setting = N/A
Write Cache = N/A
Logical Sector Size = 512B
Physical Sector Size = 512B
Connector Name = 00


Drive /c0/e32/s4 Policies/Settings :
==================================
Enclosure position = 1
Connected Port Number = 0(path0)
Sequence Number = 2
Commissioned Spare = No
Emergency Spare = No
Last Predictive Failure Event Sequence Number = 0
Successful diagnostics completion on = N/A
FDE Type = None
SED Capable = No
SED Enabled = No
Secured = No
Cryptographic Erase Capable = No
Sanitize Support = Not supported
Locked = No
Needs EKM Attention = No
PI Eligible = No
Certified = No
Wide Port Capable = No

Port Information :
================

-----------------------------------------
Port Status Linkspeed SAS address
-----------------------------------------
   0 Active 3.0Gb/s   0x4433221100000000
-----------------------------------------


Inquiry Data =
5a 0c ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00
00 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20
30 57 42 56 4a 4e 46 59 00 00 00 80 04 00 30 30
31 30 44 53 31 4d 54 53 30 35 4c 30 30 54 32 31
39 2d 53 57 34 31 20 32 20 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20 20 20 20 20 20 20 10 80
00 40 00 2f 00 40 00 02 00 02 07 00 ff 3f 10 00
3f 00 10 fc fb 00 10 01 ff ff ff 0f 00 00 07 00

ドライブ再構成

HPE SmartArrayとかでは、ディスク追加の際は「Arrayへの追加」「RAIDボリュームの切り出し・あるいは拡張」を行うものだったが、PERCは少し異なっていて、Virtual Driveを再構成するというイメージになるようだ。そのため、以下コマンドを見るとわかるように、既存Arrayと同一のRAIDレベルを指定し、ドライブスロット4-5を追加してデータ移行をするコマンドという風に見える。

なお、このコマンドを実行した時点では、「開始しました」しか出てこない。状況は show migrateコマンドで行う。

./perccli /c0/v0 start migrate type=r5 option=add drives=32:4-5

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Controller = 0
Status = Success
Description = Start VD Operation Success

状況確認

migrateコマンドを実行すると以下のようになる。

./perccli /c0/v0 show migrate

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Controller = 0
Status = Success
Description = None


VD Operation Status :
===================

-------------------------------------------------------
VD Operation Progress% Status      Estimated Time Left
-------------------------------------------------------
 0 Migrate           0 In progress 23 Hours 6 Minutes
-------------------------------------------------------

再構成完了

無事再構成されると以下のようにジョブなしの状態になる。

./perccli /c0/v0 show migrate

CLI Version = 007.1327.0000.0000 July 27, 2020
Operating system = VMkernel 6.7.0
Controller = 0
Status = Success
Description = None


VD Operation Status :
===================

-----------------------------------------------------------
VD Operation Progress% Status          Estimated Time Left
-----------------------------------------------------------
 0 Migrate   -         Not in progress -
-----------------------------------------------------------

なお、ディスクを足して再構成が終わった時点で、Logical Unitも拡張済みの状態になる。別途手動でExpandする必要はないようだ。

PAGE TOP