name: perc-raid description: "PERC H710 RAID セットアップ。VNC スクリーンショット + キーストロークで PERC BIOS を操作し、VD 作成・削除を行う。7-9号機対応。" argument-hint: "<subcommand: enter|screenshot|create|delete|status>"
PERC RAID スキル
Dell PowerEdge R320 (7-9号機) の PERC H710 Mini RAID コントローラを VNC 経由で操作する。 KVM スクリーンショット + キーストロークのインタラクティブ方式で PERC BIOS Configuration Utility を操作する。
| サブコマンド | 用途 |
|---|---|
enter <server> |
サーバを再起動し、POST 中に Ctrl+R で PERC BIOS に入る |
screenshot <server> |
現在の VNC 画面をスクリーンショット |
create <server> |
新規 VD を作成 |
delete <server> |
VD を削除 |
status <server> |
racadm で現在の RAID 構成を確認 |
前提条件
VNC ビデオキャプチャのリセット
iDRAC7 VNC はセッション切断後にビデオキャプチャが停止し、再接続しても SYSTEM IDLE または黒画面になる。
操作前に必ず racadm racreset で iDRAC をリセットすること。
# Step 1: racreset (90-120秒で復帰)
./oplog.sh ssh -F ssh/config idrac8 racadm racreset
# Step 2: SSH 復帰を待機
# ホスト鍵が変わる場合がある
ssh-keygen -R $BMC_IP -f ssh/known_hosts
# SSH 接続テスト (2分程度待つ)
ssh -F ssh/config idrac8 racadm getsysinfo
racreset 後は VNC 接続が安定し、独立した接続でもスクリーンショットが正常に取れる。
VNC 接続パラメータ
| 項目 | 値 |
|---|---|
| ポート | 5901 |
| パスワード | Claude1 |
| プロトコル | RFB 3.008 |
| 解像度 (POST) | 800x600 |
| 解像度 (PERC BIOS) | 738x414 |
対象サーバ
| サーバ | iDRAC IP | SSH ホスト | PERC |
|---|---|---|---|
| 7号機 | 10.10.10.27 | idrac7 | PERC H710 Mini |
| 8号機 | 10.10.10.28 | idrac8 | PERC H710 Mini |
| 9号機 | 10.10.10.29 | idrac9 | PERC H710 Mini |
ツール
idrac-kvm-interact.py — VNC 操作
# スクリーンショット撮影
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP screenshot tmp/<sid>/perc.png
# キー送信 (最終結果のみ撮影)
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP sendkeys Ctrl+r x20 \
--wait 2000 --screenshot tmp/<sid>/result.png --post-wait 1000
# キー送信 (各キー後にスクリーンショット)
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP sendkeys ArrowDown Enter \
--wait 300 --screenshot-each tmp/<sid>/nav --post-wait 500
# テキスト入力
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP type "vd_name" \
--screenshot tmp/<sid>/typed.png
racadm — RAID 状態確認
ssh -F ssh/config idrac8 racadm raid get vdisks -o -p Layout,Size,Name,State
ssh -F ssh/config idrac8 racadm raid get pdisks -o -p Size,State,MediaType
ssh -F ssh/config idrac8 racadm raid get controllers
PERC BIOS 進入手順
POST タイミング (power cycle 後)
| 経過秒 | 画面 |
|---|---|
| 0-10 | Configuring Memory |
| 10-15 | Dell BIOS ロゴ |
| 15-20 | "Press <Ctrl><R> to Run Configuration Utility" |
| 20-30 | F/W Initializing → PERC BIOS 進入 |
進入手順
# 1. Power cycle
./oplog.sh ipmitool -I lanplus -H $BMC_IP -U claude -P Claude123 chassis power cycle
# 2. 20秒待機
sleep 20
# 3. Ctrl+R を 20回送信 (2秒間隔, screenshot なし)
# screenshot-each はつけない (解像度変更で接続が切れるため)
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP --timeout 60 \
sendkeys Ctrl+r x20 --wait 2000
# 4. 新しい接続でスクリーンショット確認
python3 ./scripts/idrac-kvm-interact.py \
--bmc-ip $BMC_IP screenshot tmp/<sid>/perc_entered.png
重要: Ctrl+R の送信中に --screenshot-each をつけないこと。POST → PERC BIOS で解像度が 800x600 → 738x414 に変わり、フレームバッファ要求の不整合で VNC 接続が切れる。
VNC 接続の制約
- 解像度変更: POST (800x600) → PERC BIOS (738x414) の遷移で VNC 接続が切れることがある。再接続で回復する
- タイムアウト: 長時間キーを送り続けると接続がタイムアウトする場合がある
- 対策: 操作を短いバッチに分け、各バッチで独立した VNC 接続を使う
PERC BIOS メニュー構造
タブ
| タブ | 切替キー | 内容 |
|---|---|---|
| VD Mgmt | (デフォルト) | VD/DG ツリー表示、VD 作成・削除 |
| PD Mgmt | Ctrl+N | PD 一覧、状態確認 |
| Ctrl Mgmt | Ctrl+N x2 | コントローラ設定 |
| Properties | Ctrl+N x3 | コントローラプロパティ |
タブ切替: Ctrl+N (Next) / Ctrl+P (Prev)
VD Mgmt タブの操作キー
| キー | 機能 |
|---|---|
| F1 | Help |
| F2 | Operations メニュー (カーソル位置で内容が変わる) |
| F5 | Refresh |
| Ctrl+N | 次のタブ |
| Ctrl+P | 前のタブ |
| ArrowUp/Down | ツリー内移動 |
| Enter | 展開/折りたたみ |
| Escape | PERC BIOS 終了確認 |
F2 Operations メニュー
コントローラ行 (ルート) で F2 (初期カーソル = Create New VD):
- Create New VD — VD 新規作成
- Clear Config — 全 VD 一括削除 (VD0 含む全 VD が消える!)
- Foreign Config →
- Manage Preserved Cache
- Security Key Management →
- Create CacheCade Virtual Disk
Clear Config: F2 → ArrowDown → Enter → Tab (YES) → Enter。VD0 (OS) も削除されるため、再構築が必要。
VD 行で F2:
- Initialization →
- Consistency Check →
- Delete VD
- Properties
- Expand VD size
VD 作成手順
Create New VD フォーム
RAID Level 選択後、ArrowDown で PD リストに移動し、Space で各 PD をトグル選択する。
フォームのナビゲーション:
- RAID Level → ArrowDown → PD リスト (ArrowDown で移動、Space で選択) → Tab → VD Size → VD Name → OK/CANCEL
- PD リストは Tab ではなく ArrowDown で到達する
- PD 選択は Space でトグル (選択時
[X]、未選択時[ ]) - 選択済み PD の
#列に数字が表示される
操作シーケンス (検証済み):
1. ルート行で F2 → Enter (Create New VD)
2. RAID Level: Enter → ArrowDown x N → Enter (RAID レベル選択)
- RAID-0: デフォルト (変更不要)
- RAID-1: ArrowDown x1
- RAID-5: ArrowDown x2
- RAID-6: ArrowDown x3
- RAID-10: ArrowDown x4
3. PD 選択: ArrowDown → Space (1本目、カーソル自動で次PD), Space (2本目), ...
- Space は PD を選択し、カーソルを自動的に次の PD に移動する
- ArrowDown + Space ではなく、連続 Space で複数 PD を選択
4. **Tab x4** → Enter (OK)
Tab 順序: (1) VD Size → (2) VD Name → (3) Advanced Settings → **(4) OK** → (5) CANCEL → (6) Secure VD
5. 初期化スキップ確認: Tab → Enter (OK を選択)
注意: OK は Tab x4 (PD リストから)。Tab x5 は CANCEL。初期化確認ダイアログの初期フォーカスは Cancel。Tab で OK に移動して Enter。
サポートされる RAID レベル
| RAID | 最小 PD | 容量効率 |
|---|---|---|
| RAID-0 | 1 | 100% |
| RAID-1 | 2 | 50% |
| RAID-5 | 3 | (N-1)/N |
| RAID-6 | 4 | (N-2)/N |
| RAID-10 | 4 | 50% |
VD 削除手順 (検証済み)
- VD Mgmt タブで対象 VD の ID 行 ("ID: N, ...") にカーソル移動
- F2 → ArrowUp x5 (メニュー先頭へ) → ArrowDown x2 → Enter (Delete VD)
- F2 メニューの初期カーソル位置は VD 状態によって変わる(不安定)
- 安全な方法: ArrowUp x5 で先頭 (Initialization) に移動、ArrowDown x2 で Delete VD
- 確認ダイアログ: Tab (YES に移動) → Enter
- 初期フォーカスは NO。Tab で YES に移動
注意: F2 メニュー初期カーソルは不定。ArrowDown x1 では Properties が開くことがある。 必ず ArrowUp x5 で先頭に移動してから ArrowDown x2 を使うこと。
PERC BIOS 終了
Escape → "Are you sure you want to exit?" → OK (Enter)
8号機の物理ディスク構成
| Bay | Disk ID | Size | Vendor / Model | 用途 |
|---|---|---|---|---|
| 0 | 00:01:00 | 558.37 GB | HP EG0600JETKA | VD0 (system, RAID-1) |
| 1 | 00:01:01 | 558.37 GB | HGST HUC101860CSS204 | VD0 (system, RAID-1) |
| 2 | 00:01:02 | 837.75 GB | HITACHI HUC109090CSS600 | VD1 (RAID-0) |
| 3 | 00:01:03 | 837.75 GB | NETAPP X423 TAL13900A10 | Blocked (使用不可) |
| 4 | 00:01:04 | 837.75 GB | SEAGATE ST900MM0168 | VD2 (RAID-0) |
| 5 | 00:01:05 | 837.75 GB | HITACHI HUC109090CSS600 | VD3 (RAID-0) |
| 6 | 00:01:06 | 837.75 GB | SEAGATE ST900MM0168 | VD4 (RAID-0) |
Bay 3 注意: NETAPP X423 TAL13900A10 は PERC H710 と互換性がなく、Blocked 状態から変更不可。racadm createvd は受理されるがジョブ実行時に PR21 で失敗する。Instant Secure Erase もグレーアウトで使用不可。別のコントローラに接続してフォーマットするか、ディスクを交換する必要がある。
racadm 経由の VD 作成 (推奨)
VNC PERC BIOS 操作よりも racadm コマンドラインの方が確実。ただし PERC H710 は RealtimeConfigurationCapability = Incapable のため、設定適用に再起動が必要。
VD 作成手順
# 1. VD 作成コマンド (受理のみ、まだ適用されない)
ssh -F ssh/config idrac8 racadm raid createvd:RAID.Integrated.1-1 -rl r0 \
-pdkey:Disk.Bay.6:Enclosure.Internal.0-1:RAID.Integrated.1-1
# 2. ジョブ作成 + 再起動で適用
ssh -F ssh/config idrac8 racadm jobqueue create RAID.Integrated.1-1 -s TIME_NOW -r pwrcycle
# 3. 3-5分待機 (LC 初期化 + ジョブ実行)
sleep 300
# 4. ジョブ結果確認
ssh -F ssh/config idrac8 racadm jobqueue view -i JID_xxxxx
# Status=Completed なら成功、Status=Failed なら失敗
# 5. VD 状態確認
ssh -F ssh/config idrac8 racadm raid get vdisks -o -p Layout,Size,Name,State
複数の createvd を続けて実行し、1回の jobqueue create + 再起動でまとめて適用できる。
VD 削除
ssh -F ssh/config idrac8 racadm raid deletevd:Disk.Virtual.4:RAID.Integrated.1-1
ssh -F ssh/config idrac8 racadm jobqueue create RAID.Integrated.1-1 -s TIME_NOW -r pwrcycle
STOR023 エラー (committed config が残る問題)
racadm jobqueue delete --all でジョブを削除しても、pending 設定が "committed" 状態で残り、次の createvd が STOR023: Configuration already committed エラーになることがある。
解決方法: racadm serveraction powercycle で再起動すると pending 設定がクリアされ、新規 createvd が可能になる。
PD Mgmt タブの F2 メニュー
PD Mgmt タブで物理ディスクを選択して F2 を押すと操作メニューが開く。メニュー項目はディスクの State によって異なる。グレーアウト項目は ArrowDown でスキップされる。
Online ディスク (VD 所属)
| ArrowDown | 項目 |
|---|---|
| 初期 | Rebuild → |
| Down 1 | Replace Member → |
| Down 2 | Force Online |
| Down 3 | Force Offline |
Blocked ディスク
| ArrowDown | 項目 | 備考 |
|---|---|---|
| 初期 | Rebuild → | |
| Down 1 | Replace Member → | |
| Down 2 | Force Online | |
| Down 3 | Force Offline | ここで止まる |
| — | LED Blinking | グレーアウト |
| — | Make Global HS | グレーアウト |
| — | Remove Hot Spare | グレーアウト |
| — | Instant Secure Erase | グレーアウト |
注意: Blocked ディスクでは Instant Secure Erase が使用不可。ローレベルフォーマットは別のコントローラに接続して行う必要がある。
既知の制約
VNC ビデオキャプチャの停止と stale framebuffer
iDRAC7 VNC は一度ビデオキャプチャが停止すると、同一セッション外からは回復不可能。 停止後の VNC 接続は最後にキャプチャされたフレーム(stale)を返し続ける。
VNCServer.Enableの Disable/Enable → 効果なし- Ctrl キー (wake) → 効果なし
- ArrowDown+ArrowUp → 効果なし
- F5 (Refresh) → PERC BIOS は再描画するが BMC がキャプチャしない
- racadm racreset → 唯一の回復手段 (90-120 秒)
VNC 操作の鉄則
- racreset 後の最初の VNC セッションでのみスクリーンショットが信頼できる
- 同一セッション内のスクリーンショットは常に正しい(BMC がアクティブにキャプチャ中)
- セッション切断→再接続後のスクリーンショットは stale になる可能性が高い
- 複数ステップの PERC BIOS 操作は 1 つの VNC セッション内で完結させること
- 操作結果の最終確認は racadm (PERC BIOS 終了後) で行う
- VNC は約 80 秒で接続が切れることがある。
safe_key()で自動再接続すること - 再接続後もキー入力は正常に動作する(PERC BIOS の状態は VNC と無関係)
- 再接続後のスクリーンショットは stale だが、操作自体は成功している
推奨ワークフロー
1. racadm racreset → 120秒待機
2. power cycle → sleep 25
3. 単一 VNC セッションで: Ctrl+R → PERC BIOS 操作 → Escape で終了
4. POST 完了後に racadm raid get vdisks で結果確認
VNC 解像度変更
POST (800x600) → PERC BIOS (738x414) の遷移で VNC 接続が切れることがある。
Ctrl+R 送信中は --screenshot-each をつけず、PERC BIOS 進入後に新しい接続でスクリーンショットを取る。
Create New VD フォームの Tab 順序 (検証済み、スクリーンショットで確認)
PD 選択後の Tab 順序:
PD リスト → (Tab1) VD Size → (Tab2) VD Name → (Tab3) Advanced Settings
→ (Tab4) OK → (Tab5) CANCEL → (Tab6) Secure VD → (Tab7, wraps) RAID Level
OK は PD リストから Tab x4 (Tab x5 は CANCEL)。 初期化確認ダイアログ: 初期フォーカスは Cancel → Tab → Enter で OK。
Tab 4 の OK ボタンはオレンジ色にハイライトされるので視覚的に確認可能。
VD Mgmt ツリーのラッピング
ArrowUp/Down はツリーの先頭/末尾で循環する(ラップ)。 ルートからさらに ArrowUp すると最後のアイテムに移動する。 正確なアイテム数に依存するため、ArrowUp x N の N は慎重に選ぶこと。
F2 メニューの初期カーソル位置
| F2 の対象 | メニュー | 初期カーソル |
|---|---|---|
| ルート行 | Create New VD, Clear Config, ... | Create New VD (1番目) |
| VD ID 行 | Initialization, Consistency Check, Delete VD, ... | Consistency Check (2番目) |
PERC BIOS と Lifecycle Controller
電源サイクル後の POST で "Lifecycle Controller: Collecting System Inventory..." が表示され、2-5 分かかることがある。この間は Ctrl+R が受け付けられない。LC 初期化が完了してから再度 power cycle して Ctrl+R を送る。
PD の Blocked 状態
Bay 3 (00:01:03, NETAPP X423 TAL13900A10) は "Blocked" 状態。PERC H710 との互換性問題でありForeign Config ではない (ForeignKeyIdentifier = null)。
- Create VD の PD リストに表示されない
- racadm createvd は受理されるがジョブ実行時に PR21 (Job failed) で失敗
- racadm converttoraid → STOR013 エラー
- racadm converttononraid → STOR058 (非サポート)
- PERC BIOS PD Mgmt の Instant Secure Erase → グレーアウト (使用不可)
- 対処: 別のコントローラに接続してフォーマットするか、ディスクを交換する
VNC Create VD フォームの PD 選択
VNC の個別接続 (idrac-kvm-interact.py) で Create VD フォームを操作すると、ArrowDown → Space での PD 選択が不安定になる場合がある(接続間でフォーカス位置が保持されない)。
推奨: VD 作成は racadm コマンドラインを使用する。VNC PERC BIOS は状態確認やスクリーンショット取得に限定し、VD 作成・削除は racadm 経由で行うこと。
参照
- idrac7 スキル — iDRAC7 基本操作
- Dell PERC H710 User's Guide