|
|
OSをRAID構成でインストール
|
RAIDを構築するRAIDについて諸々ハードRAIDとソフトRAIDRAIDの種類と選択についてRAIDでOSをインストール(〜CentOS5)RAIDでOSをインストール(CentOS6)起動設定とメンテナンスハードディスクの交換RAID再構築の準備RAIDの再構築(raidtools)RAIDの再構築(mdadm) |
初期設定ファイル"/etc/mdadm.conf"についてWBEL4 、 CentOS4 及びCentOS5の インストール を行うときに RAID の構築を行うと、自動的に mdadm が用いられてRAIDが構築されます。 mdadmの設定ファイルは、 デフォルト では "/etc/mdadm.conf" となっています。 ただこの/etc/mdadm.confは、raidtoolsで扱う設定ファイル "/etc/raidtab" と意味が異なる点に注意してください。
raidtoolsの設定ファイル/etc/raidtabはRAIDの仕様を絶対的に規定するもので、記述されていない構成のRAIDは構築できないようになっています。つまり/etc/raidtabはRAIDの構築にあたっては前もって必ず準備しておかなければなりません
一方mdadmにおける/etc/mdadm.confにはそういう「ガチガチ」の制約があるわけではなく、 「必要ならばそれを参照してRAIDを構築しなければならないような扱い方もできるし、不要ならば全く無視してRAID構築を行うこともできる。」 という柔軟な仕様になっています。もちろん、自由な操作が可能であることと引き換えに、操作ミスによる失敗の危険も高いということですが...。 このパートでは 「破損したRAIDを元の状態に戻す。」 という作業を行うだけですから、/etc/mdadm.confを利用する必要はありません。
ちなみに
"mdadm"
を使ったRAIDデバイスの追加や修復、解除の方法についてはこちら
しかし既存のシステムに新しいRAIDを追加したり、RAIDの構成を変更したり、という作業を行う場合には、操作を間違えないように予め/etc/mdadm.confを記述(作成)しておき、これを「RAID構成を規定する設定ファイル」として利用すべきでしょう。 試しに、この コンテンツ で 構築中のLinuxサーバー の "/etc/mdadm.conf" を実際に見てみましょう。
以下は、WBEL4、CentOS4及びCentOS5のインストール後の設定
|
|||||||||||
|
|
SSHクライアントなどから適当な
ユーザーアカウント
で
構築中のLinuxサーバー
に
ログイン
このセクションで行う作業はあくまで RAID構成を元の状態に戻す だけですから、この/etc/mdadm.confの内容を書き換える必要はありません。 そこで、誤って内容を書き換えてしまわないように一般のユーザーアカウントから参照するようにしましょう。 WBEL4及びCentOS4では、大体次のような内容になっています。
↓
CentOS5は以下のような内容です。
先頭の オレンジ の行にコメント行で、 「"mdadm.conf"は"anaconda"によって書き出された。」 記述されていますが、実は "anaconda" というのはWBEL及びCentOSの OS のインストールプログラムのことです。 つまりこの/etc/mdadm.confは、WBEL4やCentOS4、CentOS5のインストール作業中にインストールプログラム自身が記述したことを表しています。 ただご覧のとおり、WBEL4やCentOS4ではその内容は非常に簡素な「覚え書き」に過ぎませんから、ここでもう少し詳しい設定情報を記録しておくと後々便利です。 詳しいRAID情報を見るためには、 root アカウント からmdadm コマンド を実行する必要がありますので、 su コマンドで ユーザーアカウント をrootに変更してから以下のようにコマンドを実行してください。 |
|||||||||||
"mdadm --datail --scan"を実行すると、"/etc/mdstat"の情報
を元にして現在稼働中の詳細なRAID情報を出力します。
|
ちなみにこれは障害の発生していない状態での出力結果です。 "/dev/hdb" に障害があって認識されていないようなときは、以下のようになります。
先に説明したとおり、この出力内容は「障害のあるRAIDを元に戻す」という作業だけであれば必要なものではありませんが、RAID構成の変更などを行いたい場合には重要な情報になることがありますので、出力のリダイレクト
これで現在のRAID構成の設定は "/root/mdadm.conf.web1" として保存されました。 CentOS5の場合には最初から正常稼動時の "mdadm --detail --scan" の出力結果が "/etc/mdadm.conf" に記録されていますので、特に保存しておく必要はないでしょう。
関連セクション・
OSにRAIDデバイスを追加
|
|||||||||||
RAIDを再構築する
ここで改めて
|
||||||||||||
"mdadm"
を使ったRAIDデバイスの追加や修復、解除の方法についてはこちら
のセクションで詳しく説明していますので、合わせてご覧ください。
|
すると、 「"/dev/hda?"と"/dev/hdb?"から構成されていた"/dev/md?"から、"/dev/hdb?"が欠損してデグレーデッドの動作をしている。」 |
|||||||||||
|
|
ということが確認できるはずです。 すると、この コンテンツ の内容に従って 構築中のLinuxサーバー の場合であれば、 「/dev/hda?だけでデグレーデッドの動作をしている/dev/md?に、/dev/hdb?を追加してRAID1を再構築する。」 という手順を、 「?=1〜3,5〜9(4は拡張 パーティション なので作業不要)」 について実行すれば良いことがわかるはずです。
既に前のステップの
この場合mdadmコマンドは、 mdadm --manage [RAIDデバイス名] --add [追加するパーティション名] Enter と実行します。 コマンドの実行は root アカウント から行います。 では早速実行してみましょう。
一見何事も起こっていないようですが、このように "mdadm: hot added /dev/hdb1" とメッセージが表示されればバックグラウンドでRAIDの再構築が行われますから、何もエラーが出なければ大丈夫です。 |
|||||||||||
|
SSHクライアント
上では表示されませんが、RAIDの構築が終わると実機の画面上に大量のメッセージが表示されます。
「エラーが起こったのでは!。」と驚くかもしれませんが、大丈夫です。 実機上で何かキー操作を行えば、ちゃんと プロンプト に戻ることができます。 |
RAIDが再構築される様子は、リアルタイムに /proc/mdstat に出力されてますから、 cat コマンドなどで状況を確認することができます。
どれか一つのRAIDで再構築がうまくいったら、他のRAIDデバイスでも同様に再構築を行います。
再構築指示は、前に実行したRAIDの再構築が終了していなくても次々に実行してかまいません。 RAIDの再構築は一つずつしか行われませんが、システムがきちんと整理して「予約」という形で再構築コマンドを受け付け、順々に処理を実行してくれるからです。 再構築するRAIDデバイスの容量にもよりますが、数十 GB 、数百GBのRAIDデバイスの再構築には数十分ないし数時間を要します。 この再構築の間でも、 構築中のLinuxサーバー のシステムは基本的に通常どおりの動作を行うことができますから、基本的には通常どおり稼動させてかまいません。 |
|||||||||||
|
|
もちろん、RAIDの再構築はそれなりに
ホスト機
に動作負荷を与えていますので、再構築がすべて終了するまでは、できればプログラムの
アップデート
作業
LinuxOS の ソフトウェア RAIDは意外に「タフ」で、例えばこの再構築中にホスト機の再起動を行うことも可能ですし、停電でいきなり電源が落ちてしまってもかなりの確率できちんと元に戻ることができます。 もちろん、できるだけこういうシチュエーションは避けたほうが良いことはいうまでもありません。
さて、後はお茶でも飲みながら、
/proc/mdstat
が元の状態
ところで、
"mdadm"
を使ったRAIDデバイスの追加や修復、解除の方法についてはこちら
関連セクション・
OSにRAIDデバイスを追加
|
|||||||||||
ブートローダーのインストールを忘れずにRAID の再構築が終わったら、忘れずに行わなければならない作業が ブートローダ の インストール です。 新しく追加した側の ハードディスク には、当然ブートローダーはインストールされていませんので、これを忘れてしまうと、次に反対側のハードディスクが故障してしまったときに ホスト機 が起動できなくなってしまいます。 |
||||||||||||
| 作業は SSHクライアント からリモート接続した状態でも行うことができます。 |
方法は
関連セクション・
OSにRAIDデバイスを追加
|
|
|
RAIDの再構築(raidtools)
<<Previous
|
| このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。 |
| ”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。 |