Solaris ボリュームマネージャの管理

ホットスペア集合とホットスペアの概要

ホットスペア集合 とは、RAID 1 (ミラー) や RAID 5 ボリュームのデータ可用度を高めるために Solaris ボリュームマネージャが使用するスライスの集合 (ホットスペア) です。 サブミラーまたは RAID 5 ボリュームのスライスに障害が発生すると、Solaris ボリュームマネージャはそのスライスをホットスペアで自動的に置き換えます。


ホットスペアは、RAID 0 ボリュームや 1 面ミラーには適用されません。 交換を自動的に行うためには、冗長データが必要です。


アイドル状態のホットスペアにデータや状態データベースの複製を格納することはできません。 ホットスペアは、対応付けられているボリューム内のスライスに障害が発生した場合には、ただちに使用できる状態でなければなりません。 したがって、ホットスペアを使用するためには、システムが通常の動作を行うのに必要なディスクに加え、予備のディスクを用意しておく必要があります。

ホットスペア

ホットスペアとは、動作しているが、使用されていないスライス (ボリュームでない) のことです 。 ホットスペアは、サブミラーや RAID 5 ボリュームのスライスに障害が発生したときに、ただちに交換できる予備のスライスとして用意されています。

ホットスペアはボリュームをハードウェア障害から保護します。RAID 1 や RAID 5 ボリュームのスライスに障害が発生すると、スライスは自動的にホットスペアで置き換えられ、同期が取られます。 ホットスペアは、サブミラーや RAID 5 ボリュームのスライスが修復されるか交換されるまで一時的に使用されるスライスです。

ホットスペアはホットスペア集合内に作成します。 同じホットスペアを複数のホットスペア集合に登録することができます。 たとえば、サブミラーとホットスペアが 2 つずつあるとします。 この場合、これらのホットスペアを 2 つのホットスペア集合に登録し、それぞれの集合の中でホットスペアの優先順位を変えておくこともできます。 これによって、最初に使用するホットスペアを指定でき、またホットスペアの数を増やしておけばデータの可用性を向上させることもできます。

サブミラーや RAID 5 ボリュームの不良スライスの代わりに使用できるホットスペアのサイズは、そのスライスと同じかそれ以上でなければなりません。 たとえば、サブミラーの容量が 1G バイトであれば、サブミラー用のホットスペアの容量は 1G バイト以上でなければなりません。

ホットスペアの仕組み

サブミラーや RAID 5 ボリュームのスライスに障害が発生すると、そのスライスの代わりに、対応付けられているホットスペア集合内のスライスが使用されます。 Solaris ボリュームマネージャは、ホットスペア集合内でホットスペアを、登録させている順に探します。 適切なサイズをもつ最初に見つかったホットスペアが不良スライスの置き換えに使用されます。 ホットスペア集合内でのホットスペアの順序は、置き換えの後も変わりません。


ヒント

ホットスペア集合にホットスペアを追加するときは、小さいものから順に追加してください。 これによって、小さいスライスの置き換えのために「大きい」スライスがむだに使用されることを防げます。


スライスで入出力エラーが発生すると、そのスライスは「障害 (Broken)」状態になります。 この状態から回復するためには、まず、不良スライスを修理または交換し、次に Solaris 管理コンソール内の「拡張ストレージ」または metahs -e コマンドを使って、スライスを「使用可能 (Available)」状態に戻す必要があります。

サブミラーや RAID 5 ボリュームの不良スライスの代わりにホットスペアが使用されているときに、不良スライスを有効にするか交換すると、そのホットスペアはホットスペア集合内で「使用可能 (Available)」状態に戻り、再びホットスペアとして使用可能になります。

ホットスペア集合

ホットスペア集合は、ホットスペアの順序付きリスト (集合) です。

ホットスペアを複数のホットスペア集合に登録することによって、最小数のスライスで最大限の柔軟性と安全性を達成できます。 つまり、ホットスペアとして使用する 1 つのスライスを複数のホットスペア集合に割り当てれば、個々のホットスペア集合でさまざまなスライスや特性をもつことができます。 個々のホットスペア集合は、任意の数のサブミラーボリュームや RAID 5 ボリュームに割り当てることができます。


同じホットスペア集合を複数のサブミラーボリュームや RAID 5 ボリュームに割り当てることはできますが、 個々のサブミラーボリュームや RAID 5 ボリュームは 1 つのホットスペア集合しか割り当てることはできません。


入出力エラーが発生すると、Solaris ボリュームマネージャは、障害のあるスライスとサイズが同じかそれ以上のサイズの最初のホットスペアをホットスペア集合から探します。 適切なホットスペアが見つかると、Solaris ボリュームマネージャはそのホットスペアを「使用中 (In-Use)」の状態にして、データの同期化を自動的に開始します。 ホットスペアの同期化には、サブミラーの場合は有効なサブミラーのデータが使用され、 RAID 5 ボリュームの場合は、同じボリュームの他のスライスが使用されます。 十分な大きさのホットスペアがホットスペア集合にないと、障害が発生したサブミラーや RAID 5 ボリュームはエラー状態となり、ホットスペアは使用されません。 この場合、サブミラーではデータを完全に複製することができなくなり、 RAID 5 ボリュームではデータの冗長性が失われます。

例 ホットスペア集合

図 161 に、ミラー d1 のサブミラー d11d12 に対応付けられているホットスペア集合 hsp000 を示します。 どちらかのサブミラーのスライスに障害が発生すると、そのスライスは自動的にホットスペアで置き換えられます。 ホットスペア集合自体はミラーではなく、個々のサブミラーボリュームに対応付けられています。 必要であれば、このホットスペア集合を他のサブミラーや RAID 5 ボリュームに対応付けることもできます。

図 161 ホットスペア集合の例

サブミラーのコンポーネントに障害発生後、ホットスペアがコンポーネントの代わりに使用されます。