故障したドライブのRAID使用率を診断する

故障したドライブのRAID使用率を診断する

自分がインストールしていないサーバーで問題が発生していますが、以前の担当者はもうここにいないので、私に何も説明してくれません。

ディスク障害と思われる原因でいくつかのプロセスがクラッシュしたため、ログを検索したところ、次のような行が見つかりました/var/log/messages

 kernel: [277146.149980] sd 0:1:0:0: [sda] Sense Key : Medium Error [current] 
 kernel: [277146.149986] sd 0:1:0:0: [sda] Add. Sense: Unrecovered read error

再起動して使用してもfsck問題は解決しませんでした。

ディスクがハードウェア RAID 上にあるかソフトウェア RAID 上にあるかはわかりません。マシンに LVM がインストールされていないことはわかっています。バックアップはここでは問題ではありません。このサーバーにはディスクに関する情報が含まれておらず、重要なデータは NFS 経由でマウントされています。そのため、必要に応じて、ディスクの現在の内容を気にせずにマシンを再インストールできます。

このマシンは、Debian Squeeze 64 ビットを実行している Dell PowerEdge R510 です。製造元 (Dell) の診断ツールは Debian Squeeze では動作しません。とにかくインストールして実行しようとしましたが、動作しませんでした。そのため、手動で診断する必要があります。提供できる情報は次のとおりです。

また、必要に応じてマシンに物理的にアクセスすることができ、ディスクは 3 つだけ (それぞれ 600 GB の SCSI Seagate ディスク 3 つ) 存在することを確認しました。

 # lshw -class disk
  *-disk:0                
       description: SCSI Disk
       product: Virtual Disk
       vendor: Dell
       physical id: 1.0.0
       bus info: scsi@0:1.0.0
       logical name: /dev/sda
       version: 1028
       size: 1675GiB (1798GB)
       capacity: 1675GiB (1798GB)
       capabilities: 15000rpm partitioned partitioned:dos
       configuration: ansiversion=6 signature=cf241336

つまり、600 GB の物理ディスク 3 台を含む 1800 GB の仮想ディスクについて話しているようです。どうやら、仮想ディスクの構成は BIOS を使用して実行できるようです。つまり、新しいディスクを使用してマシン全体を再インストールする必要がある場合、iso/liveCD/PXE を起動する前に BIOS に入る必要があるということですね。正しいですか?

# fdisk -l
Disk /dev/sda: 1798.7 GB, 1798651772928 bytes
3 heads, 52 sectors/track, 22519177 cylinders
Units = cylinders of 156 * 512 = 79872 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xcf241336

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1         421       32812   de  Dell Utility
/dev/sda2   *         434       27320     2097152    c  W95 FAT32 (LBA)
/dev/sda3           27320      277715    19530752   83  Linux
/dev/sda4          277728    22519165  1734832129    5  Extended
/dev/sda5          277728      402918     9764864   82  L

これは、仮想ディスクが 1 つだけあることの確認だと思います。

# smartctl -i /dev/sda
smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

Device: Dell     Virtual Disk     Version: 1028
Device type: disk
Local Time is: Mon Jun 15 10:28:59 2015 CEST
Device does not support SMART

smartctl は仮想ドライブでは動作しないようなので、これは正当なようです。

# cat /proc/scsi/scsi 
Attached devices:
Host: scsi3 Channel: 00 Id: 00 Lun: 00
  Vendor: TEAC     Model: DVD-ROM DV-28SW  Rev: R.2B
  Type:   CD-ROM                           ANSI  SCSI revision: 05
Host: scsi0 Channel: 01 Id: 00 Lun: 00
  Vendor: Dell     Model: Virtual Disk     Rev: 1028
  Type:   Direct-Access                    ANSI  SCSI revision: 06
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: SEAGATE  Model: ST3600057SS      Rev: ES64
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi0 Channel: 00 Id: 01 Lun: 00
  Vendor: SEAGATE  Model: ST3600057SS      Rev: ES64
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi0 Channel: 00 Id: 02 Lun: 00
  Vendor: SEAGATE  Model: ST3600057SS      Rev: ES64
  Type:   Direct-Access                    ANSI  SCSI revision: 05

ということで、これが私がこれまでに得た情報です。新しいディスクを購入してマシンを再インストールする必要があると思います。そこで知りたいのは、このマシンに RAID が構成されているかどうかです。どうすればわかるのでしょうか。現在の構成を正確に再現したいからです。必要な場合は、喜んでさらに情報を提供します。

[編集] 以下は lspci コマンドの出力です。

# lspci
00:00.0 Host bridge: Intel Corporation 5500 I/O Hub to ESI Port (rev 13)
00:01.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 (rev 13)
00:03.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 3 (rev 13)
00:07.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 (rev 13)
00:09.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 9 (rev 13)
00:0a.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 10 (rev 13)
00:14.0 PIC: Intel Corporation 5520/5500/X58 I/O Hub System Management Registers (rev 13)
00:14.1 PIC: Intel Corporation 5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (rev 13)
00:14.2 PIC: Intel Corporation 5520/5500/X58 I/O Hub Control Status and RAS Registers (rev 13)
00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.3 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller
00:1f.2 IDE interface: Intel Corporation 82801JI (ICH10 Family) 4 port SATA IDE Controller #1
00:1f.5 IDE interface: Intel Corporation 82801JI (ICH10 Family) 2 port SATA IDE Controller #2
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet (rev 20)
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
03:00.0 InfiniBand: QLogic Corp. InfiniPath QME7342 QDR HCA (rev 02)
06:03.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200eW WPCM450 (rev 0a)

[編集2] 利用可能なコントローラーの数を確認するには:

# megacli -adpCount                 
Controller Count: 0.
Exit Code: 0x00

コントローラーのすべての情報を印刷するには:

# megacli -adpallinfo -aALL
Exit Code: 0x00

つまり、ハードウェア RAID が存在しないということでしょうか?

[編集3]

# ls -l /dev/disk/by-path
total 0
lrwxrwxrwx 1 root root  9 Jun 12 12:19 pci-0000:00:1f.5-scsi-0:0:0:0 -> ../../sr0
lrwxrwxrwx 1 root root  9 Jun 15 13:40 pci-0000:02:00.0-scsi-0:1:0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 12 12:21 pci-0000:02:00.0-scsi-0:1:0:0-part6 -> ../../sda6

# megaclisas-status
-- Controller informations --
-- ID | Model

-- Arrays informations --
-- ID | Type | Size | Status | InProgress

-- Disks informations
-- ID | Model | Status

[編集4] コマンドはsas2ircu役に立ちました(このページ)。

最終的に、RAID が使用されているかどうかを確認できました。サーバーを再起動し、構成ユーティリティ メニュー (Ctrl + C) に入り、RAID0 が構成されていることを確認します。ディスクに対して smartctl コマンドを使用しました/dev/sg*(smartctl は では機能していませんでした/dev/sda*)。

smartctl -t long /dev/sg2
smartctl -l selftest /dev/sg2

最終的に、どのディスクに障害セグメントがあったかが表示されます。これで問題は解決しました。

答え1

このメッセージは、3 台のディスクのうち 1 台以上が故障しているか、コントローラ/ケーブルが故障していることを示しています。セットアップ全体は 3 台のディスクの RAID0 のようですが、これは非常に危険な構成です。私なら次のようにします。データをバックアップし (必要な場合)、RAID を解体して JBOD を取得します。各ディスクを個別にテストします。故障している部分を特定します。それを交換して RAID 1 を構成します。システムを復元/再インストールします。

答え2

lspci 出力:

02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)

HW RAID カードが存在することを示します。

この種のカードを管理する正しいツールは、sas2ircuです。

詳しい情報はこちらをご覧ください:

http://hwraid.le-vert.net/wiki/LSIFusionMPTSAS2

関連情報