「HDDが壊れた?」と焦る前に。インフラ初心者のための ssacli 基本コマンドとRAID状態の読み解き方

サーバー

概要

サーバの動作がおかしい。急なシャットダウン。load averageが常時天井張り付き、もしかして「サーバのHDDが壊れたかも!」と思ったとしても、まずは何をすればいいか分からない… 。そんなインフラ初心者でも安心して対処できるよう、今回はRAIDコントローラーである ssacli の使い方を実際のコマンド出力をもとに解説します。

RAID管理ツール

サーバーに搭載されているHDDは、1本ずつバラバラに動いているわけではありません。多くの場合、RAIDコントローラーという専用チップが複数のHDDをまとめて管理しています。

・ssacli

HPE Smart Array コントローラー専用。ProLiantサーバーで使う。

・storcli

Broadcom(旧LSI)MegaRAID系。Dell・Lenovo・Supermicroなどに多い。

どのツールか分からないときは?

#lspci | grep -i raid

上記コマンドで搭載されているRAIDコントローラーの名前が表示されます。
「Smart Array」と出たらssacli、「MegaRAID」と出たらstorcliです。

ssacliのインストール方法

まずはインストールから。

リポジトリを追加

cat > /etc/yum.repos.d/hpe-mcp.repo << 'EOF'
[hpe-mcp]
name=HPE Management Component Pack
baseurl=https://downloads.linux.hpe.com/SDR/repo/mcp/centos/$releasever/$basearch/current/
enabled=1
gpgcheck=1
gpgkey=https://downloads.linux.hpe.com/SDR/hpPublicKey2048.pub
EOF

インストール

# dnf install ssacli

コマンド一覧

コントローラーの確認

# ssacli ctrl all show

例:

# ssacli ctrl all show

Smart Array P420i in Slot 0 (Embedded)    (sn: 00143802765DB10)

論理ドライブの確認

# ssacli ctrl slot=0 ld all show status

例:

# ssacli ctrl slot=0 ld all show status

   logicaldrive 1 (931.48 GB, RAID 1): OK

物理ドライブ(実際のHDD)の確認

# ssacli ctrl slot=0 pd all show status

例:

# ssacli ctrl slot=0 pd all show status

   physicaldrive 1I:1:1 (port 1I:box 1:bay 1, 1 TB): OK
   physicaldrive 1I:1:2 (port 1I:box 1:bay 2, 1 TB): OK

設定詳細の確認

# ssacli ctrl all show config detail

実際の出力を読んでみよう

実際の弊社の実際のサーバーで設定詳細確認コマンドを実行して取得した情報を一つひとつ解説します。

コントローラー情報

Smart Array P420i in Slot 0 (Embedded)
   Controller Status: OK
   Firmware Version: 8.32
   Cache Board Present: False
   Controller Temperature (C): 40

コントローラー自体は OK です。温度も40°Cで問題なし。キャッシュボードは未搭載です

物理ドライブ(HDD)の状態

physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SATA HDD, 1 TB, OK)
   Status: OK
   Model: ATA     *********
   Current Temperature (C): 24
   Serial Number: *********

physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SATA HDD, 1 TB, OK)
   Status: OK
   Model: ATA     *********
   Current Temperature (C): 24
   Serial Number: *********

2本のHDD、どちらも OK、温度24°Cで健全な状態です。
1I:1:1 の読み方は「ポート1I → ボックス1 → ベイ1」。
ドライブの場所を特定するときに使います。

論理ドライブ(RAID構成)の状態

Logical Drive: 1
   Size: 931.48 GB
   Fault Tolerance: 1
   Status: OK
   Disk Name: /dev/sda
   Mirror Group 1: physicaldrive 1I:1:1
   Mirror Group 2: physicaldrive 1I:1:2

Fault Tolerance: 1 は RAID1(ミラーリング) を意味します。2本のHDDに同じデータを書いているので、1本が壊れてもデータは失われません。現在ステータスは OK。安心です。
ただしこれは問題解決後のサーバの状態です。

サーバが不安定なときの出力

論理ドライブ(RAID構成)の状態は以下の通り

physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SATA HDD, 1 TB, Rebuilding)
Status: Rebuilding
Logical Drive: 1
  Status: Recovering, 3.27% complete
  Fault Tolerance: 1 

  Mirror Group 1: physicaldrive 1I:1:1
  Mirror Group 2: physicaldrive 1I:1:2

一時的にHDDが故障し、必死に自動でリビルドがかかっていました。

IMLログ(Integrated Management Log)を確認するとこのドライブは2度もアレイから脱落した履歴があり、2度脱落しているため、近いうちに physicaldrive 1I:1:1 のHDD交換が必要と判断しました。

ec | 04/23/2026 | 03:11:32 | Drive Slot / Bay #0x3b | Drive Fault        ← 障害発生
ed | 04/23/2026 | 04:02:24 | Drive Slot / Bay #0x3b | In Failed Array    ← アレイから脱落

注意:リビルド完了前にHDDを交換しないこと。リビルド中に残り1本のHDDも抜いてしまうと、データが完全に失われます。必ず Status: OK になってから交換作業を行ってください。

まとめ

古くて情報が少ないHPEサーバーでも、ssacli があればSSH経由でRAIDの状態を把握できます。現地作業の前に一通り情報を揃えておくだけで、作業効率が大きく変わります。