web-dev-qa-db-ja.com

RAIDアレイの再構築

RAIDアレイを再構築するにはどうすればよいですか? RAID 1を使用しています。データセンターで修正が必要だと言われました。最初は、smartmoontoolsのスキャン結果が原因でHDDに障害があると思いましたが、そうではありません。

コマンド:

cat/proc/mdstat

出力:

Personalities : [raid1] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb1[1] sda1[0]
      2096064 blocks [2/2] [UU]

md1 : active raid1 sda2[0]
      524224 blocks [2/1] [U_]

md2 : active raid1 sda3[0]
      729952192 blocks [2/1] [U_]

unused devices: <none>

私はする必要がありますか:

# mdadm /dev/md1 -r /dev/sdb2
# mdadm /dev/md2 -r /dev/sdb3
# mdadm /dev/md3 -r /dev/sdb4

その後

# mdadm /dev/md1 -a /dev/sdb2
# mdadm /dev/md2 -a /dev/sdb3
# mdadm /dev/md3 -a /dev/sdb4 

データが失われるのでしょうか、それともサーバーがオフラインになるのでしょうか?

これがfdisk-lの出力です

Disk /dev/sda: 750.1 GB, 750156374016 bytes
64 heads, 32 sectors/track, 715404 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               2        2048     2096128   fd  Linux raid autodetect
/dev/sda2            2049        2560      524288   fd  Linux raid autodetect
/dev/sda3            2561      715404   729952256   fd  Linux raid autodetect

Disk /dev/sdb: 750.1 GB, 750156374016 bytes
64 heads, 32 sectors/track, 715404 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               2        2048     2096128   fd  Linux raid autodetect
/dev/sdb2            2049        2560      524288   fd  Linux raid autodetect
/dev/sdb3            2561      715404   729952256   fd  Linux raid autodetect

Disk /dev/md2: 747.4 GB, 747471044608 bytes
2 heads, 4 sectors/track, 182488048 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/md2 doesn't contain a valid partition table

Disk /dev/md1: 536 MB, 536805376 bytes
2 heads, 4 sectors/track, 131056 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/md1 doesn't contain a valid partition table

Disk /dev/md0: 2146 MB, 2146369536 bytes
2 heads, 4 sectors/track, 524016 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Disk /dev/md0 doesn't contain a valid partition table

これがsmartctl-A/dev/sdbの出力です

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   111   100   006    Pre-fail  Always       -       38042073
  3 Spin_Up_Time            0x0003   100   100   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       7
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   073   060   030    Pre-fail  Always       -       24494887
  9 Power_On_Hours          0x0032   091   091   000    Old_age   Always       -       7935
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       7
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   099   000    Old_age   Always       -       4
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   062   052   045    Old_age   Always       -       38 (Min/Max 34/41)
194 Temperature_Celsius     0x0022   038   048   000    Old_age   Always       -       38 (0 26 0 0 0)
195 Hardware_ECC_Recovered  0x001a   032   026   000    Old_age   Always       -       38042073
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       101494372179726
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       3317006641
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       2924590852
1
Luka

そのドライブsdbは、失敗することはそう遠くないように見えます。 公式にまだ失敗していませんが、あまり生命が残っていません。

195 Hardware_ECC_Recovered  0x001a   032   026   000    Old_age   Always       -       38042073

このドライブには、多数の回復可能読み取りエラーがありました。これは、エラー訂正を使用してデータを正常に再構築したことを意味します。ただし、間もなく回復不能読み取りエラーが発生する可能性が高くなり、ディスクの損傷したセクションまたは障害が発生したセクションのデータを正常に再構築できなくなります。その時点でできることは何もないので、ドライブを交換する必要があります。

同じ場所で再構築が停止し続ける場合は、プラッターのその時点でドライブがすでに故障していて、それを報告していない可能性があります。デスクトップクラスのドライブは、最初に障害が発生した場合、停止して数分または数時間で特定のセクターの読み取りを試みます。これにより、このようなことが起こります。そして、あなたはおそらくこの「サーバー」にそのようなドライブを持っています...

この時点で、ドライブはすぐに故障するため、事前に交換する必要があります。

4
Michael Hampton

鏡の半分だけが欠けているようです。したがって、問題はないはずですが、問題は、なぜサンビラー(sdbX)が欠落しているのかということです。たぶん、鏡に到達する前にそれらをチェックするのは良い考えでしょう。

mdadm --manage /dev/md1 --add /dev/sdb2
mdadm --manage /dev/md2 --add /dev/sdb3
mdadm --manage /dev/md3 --add /dev/sdb4
4
b13n1u

RAID1を使用してミラーリングされた2つのボリュームがある場合、各コピーには、コピー内で何かが変更されたときに更新される「アクティビティカウンター」があります。これにより、システムは、クラッシュまたはクラッシュの場合にどちらが最新であるかを認識できます。 2つのうちの1つを破壊する他のもの。

再同期とは、最新のものが古いものにコピーされ、「同期が失われた」ことを意味します。したがって、オフラインのハードドライブまたは欠陥のあるハードドライブは、アレイを強制的に「劣化モード」にします(オンラインで1コピーのみ、冗長性なし)。

劣化モードからは、アクティブなパーティションのみが作業に戻したパーティションに複製されるように再同期を強制するか、欠陥のあるディスクを交換してアレイに新しいスペースを提供し、同じパーティションに複製することで回復できます。前に説明した方法。

どちらの方法でも、構成またはまだ存続している「適切な」パーティションに対して不適切な処理を行わない限り、データはそのまま保持されます=)

RAID構成をいじる前に、RAID構成をバックアップすることをお勧めします=)

SMARTの値に関しては、他の返信でも説明されているHardware_ECC_Recoveredを除いて、私にはまったく問題がないようです。

とにかく、そこに表示される単一の値を考慮することは避け、どのペースで変化しているかを確認してください。私はかつてドライブに奇妙な値を持っていましたが、それらは最悪にはならず、安定していました。一方、良いSMART値は、完全なディスクの証明ではありません。私の意見では、使用/経年によるディスクの摩耗をチェックするのは良いことですが、突然の障害を防ぐことはほとんどできません。 (たとえば、機械的ストレス、過熱などによって引き起こされるもの。-サーバールームのクーラーの故障について考えてみてください。)

幸運を! =)

0
Luke