UJP - 技術情報

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

     

RAID運用の多重障害 〜作業内容詳細〜


RAID運用の多重障害

〜作業内容詳細〜


0.改訂履歴

  • 1997.12.08〜09 初版
  • 2000.09.17 会社名を消した

1.はじめに

 このドキュメントでは,ドキュメント「RAID運用の多重障害 〜テープ装置,ハードディスクのトラブル〜」で行なった作業内容などの詳細を記述する.

2.1997.12.08 09.48 aix78xx

デバイス \Device\ScsiPort0 はタイムアウト期間内に応答しませんでした。

 このエラーは,この時点以前から出ている.aix78xxはSCSIアダプタ名称で,テープがテープドライブからイジェクト出来なくなったら定期的に継続的にログが書き出される. たとえば,このエラーはテープのメディアに異常があっても同じメッセージである.

3.1997.12.08 09.49:00 FTDisk

フォールト トレランス セットの一部であるデバイス \Device\Harddisk2\Ft1 は失敗しました。

4.1997.12.08 09:49:58 Application

アプリケーション ポップアップ: システム プロセス - FT の孤児化 : フォールト トレラント ボリュームの一部であるディスクをアクセスできません。

 12月8日昼過ぎに,イベントビューアを手動で監視していて発見する. この時点でRAIDディスク(3台)の1つが異常となっており,18:00からメンテを行なうことをアプリチームと検討の上決定した.

 緊急停止しなかったのは,10月27日に同様の障害が起きており,ディスクの状態を表示する「ディスクアドミニストレータ」というNTのソフトで状態を確認した結果,以前(10.27)と同じく「回復可能」状態であった為である.

 また,14:00にXX通へCEコールを行ない,不安定であるのでテープ装置とハードディスクの交換を申し入れている.

5.1997.12.08 18:00〜 NTのシャットダウン

 通常の方法でシャットダウンし,テープを取り出した.

6.1997.12.08 18:10:54 NTカーネルの再起動確認時間

Event log サービスが開始されました。

 NTを再起動した場合,一番最初にイベントログにかかれるサービスのEventLogを確認した.

7.1997.12.08 18:11:08 FTDisk

フォールト トレランス ドライバは、システムがダーティにシャットダウンされたことを検出しました。

 このエラーはNTが無理にシャットダウンされた場合(たとえばいきなり電源を切る)にロギングされるメッセージで,RAIDの構成情報に誤差が出たという意味である.

 正常な手順でシャットダウン&リブート作業を行なったにも関わらず,このエラーが出ているのはおかしい.

8.1997.12.08 18:11:08 FTDisk

ストライプのパリティ セットとの同期処理が開始しました

 前述のダーティシャットダウン時に失われた構成情報の整合化が行なわれたという通知である.

 「ディスクアドミニストレータ」を開いてフォールトトレランスの再構成を行なおうとしたら,自動的に再構成作業が行なわれていた.

 以前,X1NTサーバで同じく“FT の孤児化 状態になったときは手動で再構成を行なう必要があったが,今回は自動的に実行された.

9.1997.12.08 18:46:42 FTDisk

ストライプのパリティ セットとの同期処理は完了しました。

 この時点では,エラーも報告されず,問題無い様子であった. X2チームでアクセステストを行なってもらい,通常通りネットワーク経由でファイルにアクセス出来ることを確認した後に,X2チームへNTを解放した.

 この時点では作業開始から予定通りの時刻で作業は終了している.

10.1997.12.08 19:02:41 Application Popup

アプリケーション ポップアップ: システム プロセス - 壊れたディスク : ディスクのファイル システム構造が壊れており、使用できません。ボリューム RAID5 に対して CHKDSK ユーティリティを実行してください。

11.1997.12.08 19:02:48 Application Popup

アプリケーション ポップアップ: システム プロセス - ディレイ書き込みデータの紛失 : システムがバッファから \Device\Harddisk2\Partition1\AtsuUser\include\WS_FTP.LOG にファイル データを転送しようとしています。書き込み操作は失敗し、一部のデータだけがファイルに書き込まれました。

 しかし,X2チームから,「ファイルが無くなっている」などの苦情がでるのでイベントログを覗いてみると,以上の様なエラーがロギングされていた.

 イベントログの指示どおり,chkdskを行なうこととした. chkdskは/Fオプションを使用してディスクの修復を試みた. 一応,C,E,F(FがRAID構成)の全てのドライブに対して行なった.

 chkdskはディスクが使用されている場合(ユーザに限らずNTの内部プロセスさえも)行なえないので,NTを再起動した. chkdskを実行する際に,次回再起動時に実行するようスケジュールしている.

 chkdskを行なった通常時と同じく青い画面(NTのウィンドウシステムが稼働する前時点)でchkdskが稼働し始めたが,"deleing XXXX"のようなメッセージが大量に表示される.

 XXXXはファイル名の様である.

12.1997.12.08 19:18:30 NTカーネルの再起動確認時間

Event log サービスが開始されました。

 なにもする手段が無いので,そのままchkdskに処理を任せておくと,約15分程でNTが再起動した.

13.ファイルシステムが破壊されている事を確認

 この時点で,対象となるRAID5で構成されたディスクに次のようなファイルが作成された.

chkdskによってできたファイル
J:\FOUND.000
│  file0000.chk
│  file0001.chk
│  file0002.chk
│  file0003.chk
│  file0004.chk
│  file0005.chk
│  file0006.chk
│  file0007.chk
│  file0008.chk
│  file0009.chk
│  file0010.chk
│  file0011.chk
│  
├─dir0000.chk
│      Mul_SEI.bas
│      saku2.Frm
│      saku2.frx
│      saku2.log

 これは,MS-DOSでもchkdskを行なうと作成される事のある,“クラスタ落ち”をおこしたデータのようなもの・・・であると推測される.

 ディレクトリFOUND.000直下にあるファイルは中身を見ても原型をとどめている物ではなく,また,その下にあるdir0000.chkにあるファイルは,更新日付の古い物であった.

 それらのすべてのファイルの更新日付から,FILExxxx.chkは,12月8日に作成されたファイルでファイルシステムの構成情報を失った物であると考えられる.

 通常は,chkdskを行なうとイベントログにその情報が書き出される. それは次のようなものである.

chkdsk実行時のイベントログサンプル(1997.12.01実行分)
CHKDSK is running on volume F:.
CHKDSK detected and fixed minor inconsistencies on the drive.

  4192896 kilobytes total disk space.
  1578812 kilobytes in 41584 user files.
     8032 kilobytes in 4358 indexes.
   202568 kilobytes in use by the system.
  2403484 kilobytes available on disk.

     4096 bytes in each allocation unit.
  1048224 total allocation units on disk.
   600871 allocation units available on disk.

 今回のchkdsk作業では,NTが何を行なったのかは全くログにかかれていないので,判らない.

 これらの不確定要素から推測できることは,幾つかのファイルが正しく保存できなかった事で,FILExxx.CHKファイルが作成されているという事. そして,依然NTのハードディスクは見た目(NT標準の管理プログラム)では正しく稼働しているように見えているが,いつ再発するか判らないという事をX2チームに伝えた.

14.テープのバックアップの確認

 ハードディスクの中身が信頼できない状態になっているので,バックアップテープの中身の確認を行なった. 結果以下のとおりである.

曜日/テープ テープの月日 状態
12.02
12.03
12.04
12.05 ×
12.01 ×

 イベントビューアを見ると,最新のバックアップ成功日は12月5日であった.

 しかし,このテープは“金曜日”のテープと入れ換えられておらず,よってテープドライブ不調時にドライブに挿入されており,バックアップにて上書きされようとしたがドライブが異常状態になったことによってテープのデータが破壊されてしまい,12月5日早朝に行なったバックアップ内容が消去されてしまっていた.

 よって,最新版の完全なバックアップは水曜日のテープ(12月4日早朝,つまり実質12月3日深夜までの作業分)となる.

15.修復の方針

 この障害から復旧するため,以下の方法をX2チームと相談の上決定した.

  • 現状のNT上のデータをバックアップする.
  • ハードを修復する.
  • NTには水曜日(12月4日早朝時点)のデータをリストアする.

 その後,X2チームの方で,12月4日早朝以降に追加・変更された日付を持つファイルをピックアップしてもらい,別のNTサーバへと退避した.

 さらに,NT上のデータを復旧したX2NTのテープ装置を用いてバックアップを行ない,必要であれば,ファイルを取り出せるようにする.

 この時点でXX通CEと連絡が付いており,部品調達に時間がかかるため即日修復はできないため,9日午後13:00からのCE作業となる事で同意している.

16.1997.12.08 20:23:15 NTBackup

 新しいDATを用いて,ドライブFのバックアップを開始した.

17.1997.12.08 21:38:00 4mmdat

デバイス \Device\Tape0 に不良なブロックがあります。

 X2NTのテープドライブでのバックアップが2G程終了した時点でにドライブかテープのエラーが出た.

 X2NTのテープドライブも信頼できないので,ネットワーク経由で別のNTサーバにバックアップを行なうことにした.

18.1997.12.09 06:00頃 ネットワークバックアップ終了

 容量が大きいので,X2NTの現状のデータを色々なNTサーバに振り分けを行ない,終了した.

19.1997.12.09 06:10頃 12月4日のテープをリストア開始

 RAID構成にしているハードディスクを再フォーマットし,バックアップテープからリストアを行なった.

 リストアが順調に行なわれている事を確認したので,新内は一旦家に帰った.Zzzz...

20.1997.12.09 13:10頃 CEさん到着

 X2NTを見てもらったが,NTのログからは該当するハードディスクがどれだかと規定できない状態.

 詳細なログファイルは無く,さらにロギング表示されているデバイスとマッチできるデバイス名を表示するようなツールが無い.

 とりあえず,NTをシャットダウンし,SCSIコントローラが持っているSCSIユーティリティを稼働しその機能にある検査(ベリファイ)をすべてのディスク(3本)に実施.

21.1997.12.09 14:10頃 ディスク障害確認

 RAID5構成の3番目ハードディスク(NTで管理しているIDでは4番目)のディスクでセクタのベリファイにてエラーが発生をCEが確認.

 「そのブロックを使わないようにするかい?(英文)」を実行して再度ベリファイを行なうとエラーがでなかった.

 これらの事から,該当ハードディスクが壊れかけている状態になりかけであると判断できるので,ハードディスクの交換を新内の独断で指示.

22.1997.12.09 14:30 RAID5の再構成

 CEのハードディスク交換作業が終了し,NTを再起動.

23.1997.12.09 14:33:56 Ftdisk

ストライプのパリティ セットとの再生成が開始しました

 RAIDが1つエラー状態になっており,昨日のように自動的に再生成されないので,手動で再生成を実行.(本来これが正しい動き)

24.1997.12.09 14:52:45 Ftdisk

ストライプのパリティ セットとの再生成は完了しました。

 「ディスクアドミニストレータ」で正常稼働であることを確認.

 RAIDが1つエラー状態になっており,昨日のように自動的に再生成されないので,手動で再生成を実行.(本来これが正しい動き)

25.1997.12.09 15:30 ユーザ解放

 RAIDの再構成が20分程度で終了した. その後,イベントビューアにてエラーを確認し,各種サービスの稼働状況を確認した.

 とりあえず問題ないことを確認した上で,X2チームに解放した.



広告スペース
Google