イベントログを眺めていたところ、ディスク書き込みキャッシュに関する
エラーが出ていたため、調査・対応した時のメモ。
■環境
- WindowsServer2008 R2
- ActiveDirectoryのドメインコントローラー
- DELL RAIDコントローラー H700 を使用
- DELL OpenManageをインストール済
- UPS付
■イベントログ
レベル | 警告 |
ソース | NtFrs |
イベントID | 13512 |
ファイル レプリケーション サービスはコンピューター <コンピュータ名> のディレクトリ <ディレクトリ名> を含むドライブに、 ディスク書き込みキャッシュが有効になっていることを検出しました。 ドライブの電源が切れて重要な更新が失われた場合、 ファイル レプリケーション サービスによる回復が行われない場合があります。
■原因
エラーメッセージ通り、ディスク書き込みキャッシュが無効になっていないため。
関係するKBは、以下。
Microsoft KB942402 - Windows Server をドメイン コントローラに昇格した後、システム起動時に Disk 警告イベント ID 32 などが記録される
無効になっているかどうかの確認は、
デバイスマネージャー
>ディスクドライブ
>該当のディスク上で右クリック、プロパティ
>ポリシータブ
>「□デバイス書き込みキャッシュを有効にする」
にて。
今回は、チェックボックスがONとなっていた。
■対応
調査したところ、以下の理由で対応は行わなくてよいと判断。
- H700にバッテリバックアップユニット(BBU)が搭載されていた
DELLのマニュアルを参考にしたところ、H700にはBBUがあるとのこと。
表記の揺れが気になったが、基本は搭載されている?
DELL - Dell PowerEdge RAID コントローラ(PERC)H700 および H800 ユーザーズガイド
DELL - Dell PowerEdge RAID コントローラ(PERC)H700 および H800 ユーザーズガイド
DELL - Dell PowerEdge RAID Controller (PERC)
satospo - DELLサーバのRAIDコントローラ〜その2〜
OpenManageで確認したところ、BBUは搭載されているっぽい。
の状況が「準備完了」となっており、「不在」ではなかった。
(OpenManage上の「ヘルプ」を参照*1
- BBU搭載ならば、書込みポリシー「ライトバック」でもたぶん大丈夫
H700ユーザーズガイドによると、BBU搭載であれば
データ消失の可能性がある「ライトバック」でもたぶん大丈夫とのこと。
なお、DELLの場合の「ライトスルー」と「ライトバック」の違いについても
同資料に記載あり。
DELL H700 ユーザーズガイド - 仮想ディスクの書き込みキャッシュポリシー
- UPS付
バッテリ駆動となった場合はシャットダウンさせているため、
さらに大丈夫か(要自己責任)。
本気で安全をとるなら、書込みポリシーを「ライトスルー」の上、
Windows上でプロパティ変更をする必要あり。
(今回はそこまでするよりもパフォーマンスを求めた)
■参考
以下のBlogがまとまっています。
DELLの資料中「ディスクサブシステム」が「RAID」を指すとの記載もあり。
CLUBPC security Beta - ハードディスクの「拡張処理能力を有効にする」
*1:ちなみに、その中のバッテリのタスク「評価サイクルの開始」は通常自動で行われるため、不要。やってしまうと、「バッテリの評価サイクルはコントローラバッテリを放電してから充電します。」だそうで、停電を食らうと大変なことに・・・。