Solaris ボリュームマネージャは、RAID-1 (ミラー) および RAID-5 ボリューム内のコンポーネントを 交換したり、有効にしたりできます。
Solaris ボリュームマネージャでは、コンポーネントの交換は、サブミラーまたは RAID-5 ボリューム内のコンポーネントをシステム上で使用可能な他のコンポーネントと交換することを意味します。このプロセスは、コンポーネントの物理的な交換ではなく論理的な交換です。詳細については、「コンポーネントを他の使用可能なコンポーネントで置き換える」を参照してください。
コンポーネントの有効化とは、コンポーネントをアクティブにする (または、コンポーネントをそれ自身で置き換える) ことを意味します。したがって、コンポーネント名は変わりません。詳細については、「コンポーネントの有効化」を参照してください。
ディスクエラーから回復するときは、 /var/adm/messages を調べ、どのような種類のエラーが発生したかを確認してください。エラーが一時的なものであり、ディスク自体に問題がない場合は、コンポーネントを有効にしてみます。また、format コマンドを使ってディスクをテストすることもできます。
コンポーネントを有効にする必要があるのは次のような場合です。
Solaris ボリュームマネージャが物理ディスクにアクセスできない場合。この問題は、たとえば、電源が切断されていたり、ドライブケーブルが外れていることが原因で発生します。この場合、Solaris ボリュームマネージャは、コンポーネントを「保守 (Maintenance)」状態に変更します。この場合には、電源を復旧したり、ケーブルを接続し直したりしてドライブを使用可能にしてから、ボリュームのコンポーネントを有効にする必要があります。
物理ディスクに、ディスクに関連しない一時的な障害があると考えられる場合。コンポーネントが「保守 (Maintenance)」状態であれば、そのコンポーネントを有効にするだけでコンポーネントを修復できる場合があります。コンポーネントを有効にしても問題が解決しない場合は、次のどちらかの作業が必要です。
ディスクドライブを物理的に交換してコンポーネントを有効にする
コンポーネントをシステム上で使用可能な別のコンポーネントと交換する
ディスクを物理的に置き換える場合は、新しいディスクを前のものと同じようにパーティション分割し、各コンポーネント上に十分な領域を確保する必要があります。
交換対象のディスクに状態データベースの複製やホットスペアがないか必ずチェックしてください。「エラー (erred)」状態の状態データベースの複製を削除してから、ディスクを交換する必要があります。さらに、コンポーネントを有効にしてから、同じサイズで状態データベースの複製を作成し直します。ホットスペアについても同じように処理してください。
既存のコンポーネントを他の未使用のコンポーネントで置き換える (または交換する) には、metareplace コマンドを使用します。
このコマンドを使用できるのは、次のような場合です。
ディスクドライブに問題があるが、交換用ドライブがない場合で、なおかつ、システム上に使用可能なコンポーネントがある場合。
どうしても交換する必要があるが、システムを停止したくない場合には、この方法を使用します。
物理ディスク上でソフトエラーが発生した場合。
ミラー、サブミラー、または RAID-5 ボリュームの状態が、Solaris ボリュームマネージャによれば「正常 (Okay)」であるにもかかわらず、物理ディスク上でソフトエラーが報告される場合があります。問題のコンポーネントを他の使用可能なコンポーネントで置き換えると、ハードウェアエラーの発生を防止するための予防的保守を実行できます。
性能の調整を行いたい場合。
コンポーネントを評価する 1 つの方法は、Solaris 管理コンソール内の「拡張ストレージ」から性能監視機能を使用することです。たとえば、RAID-5 ボリュームの特定のコンポーネントが「正常 (Okay)」状態であっても、平均負荷が上昇しているといったことがわかります。その場合には、ボリュームの負荷を均一化するために、このコンポーネントを、これより使用率の低いディスクのコンポーネントで置き換えることができます。このような処理は、ボリュームへのサービスを中断せずにオンラインで行うことができます。
RAID-1 または RAID-5 ボリュームのコンポーネントでエラーが発生すると、Solaris ボリュームマネージャはそのコンポーネントを「保守 (Maintenance)」状態にします。これ以降、「保守 (Maintenance)」状態のコンポーネントには読み書きは実行されません。
コンポーネントは「最後にエラー (Last Erred)」状態になることもあります。RAID-1 ボリュームの場合、このエラーは通常、1 面ミラーで発生します。ボリュームにエラーが発生したとします。しかし、読み取り対象となる冗長コンポーネントはありません。RAID-5 ボリュームでは、あるコンポーネントが「保守 (Maintenance)」状態になり、かつ、別のコンポーネントで障害が発生した場合に、この状態になります。障害の発生した 2 番目のコンポーネントが、「最後にエラー (Last Erred)」状態になります。
RAID-1 ボリュームまたは RAID-5 ボリュームのどちらかに「最後にエラー (LastErred)」状態のコンポーネントがあっても、入出力は引き続き、その「最後にエラー (LastErred)」状態のコンポーネントに対して試行されます。この入出力が試行されるのは、「最後にエラー (Last Erred)」状態のコンポーネントにデータの最後の正常なコピーが含まれていると、Solaris ボリュームマネージャが判断するためです。「最後にエラー (Last Erred)」状態のコンポーネントを含むボリュームは正常なデバイス (ディスク) のように動作し、アプリケーションに入出力エラーを返します。通常、この時点では、データの一部がすでに失われています。
同じボリューム内の他のコンポーネントで次のエラーが発生した場合、そのエラーの処理方法は、ボリュームのタイプによって異なります。
RAID-1 ボリュームでは、多数のコンポーネントが「保守 (Maintenance)」状態になっても、読み取りや書き込みを継続できることがあります。コンポーネントが「保守 (Maintenance)」状態である場合、データは失われていません。コンポーネントをどのような順序で置き換え、有効にしてもかまいません。コンポーネントが「最後にエラー (Last Erred)」状態の場合は、「保守 (Maintenance)」状態のコンポーネントを置き換えてから、このコンポーネントを置き換えます。「最後にエラー (Last Erred)」状態のコンポーネントを交換したり有効にすることは、通常、一部のデータがすでに失われていることを意味します。ミラーを修復したら、必ずデータを検証してください。
RAID-5 ボリュームは、「保守 (Maintenance)」状態のコンポーネントが 1 つであれば許容できます。「保守 (Maintenance)」状態のコンポーネントが 1 つの場合、そのコンポーネントはデータを失うことなく安全に交換できます。ほかのコンポーネントに障害が発生すると、そのコンポーネントは「最後にエラー (Last Erred)」状態になります。この時点で RAID-5 ボリュームは読み取り専用になります。必要な回復処置を行なって、RAID-5 ボリュームを安定状態にし、データ損失の可能性を減らします。RAID-5 ボリュームが「最後にエラー (Last Erred)」状態の場合には、データがすでに失われている可能性が高くなります。RAID-5 ボリュームを修復したあと、必ずデータを検証してください。
必ず「保守 (Maintenance)」状態のコンポーネントを先に交換してから、「最後にエラー (Last Erred)」状態のコンポーネントを交換します。コンポーネントの交換と再同期の実行後、metastat コマンドを使用してコンポーネントの状態を確認します。さらに、データを検証します。
RAID-1 ボリュームまたは RAID-5 ボリュームのコンポーネントを交換する場合は、次の指針に従ってください。
必ず「保守 (Maintenance)」状態のコンポーネントを先に交換してから、「最後にエラー (Last Erred)」状態のコンポーネントを交換します。
コンポーネントの交換と再同期の実行後、metastat コマンドを使用してボリュームの状態を確認します。さらに、データを検証します。「最後にエラー (Last Erred)」状態のコンポーネントを交換したり有効にすることは、通常、一部のデータがすでに失われていることを意味します。ボリュームの修復後に、そのデータが正しいことを必ず確認してください。UFS の場合は、fsck コマンドを実行して、「メタデータ (ファイルシステムの構造)」を検証します。さらに、実際のユーザーデータを確認します(実際には、ユーザーが各自のファイルを確認する必要があります)。データベースなどのアプリケーションは、独自の方法で内部のデータ構造を検証できなければなりません。
コンポーネントを交換する場合は、状態データベースの複製やホットスペアが存在していないか必ずチェックします。「エラー (erred)」状態の状態データベースの複製を削除してから、物理ディスクを交換する必要があります。そして、コンポーネントを有効にする前に、この状態データベースの複製を追加してください。ホットスペアの場合も同じ処理が必要です。
RAID-5 ボリュームでは、コンポーネントの交換時に次のどちらかの方法でデータが回復されます。現在使用中のホットスペアから、またはホットスペアが使用されていない場合は RAID-5 パリティーを使用して、データが回復されます。
RAID-1 ボリュームでコンポーネントを交換した場合は、Solaris ボリュームマネージャがボリュームの他の部分に対して新しいコンポーネントの再同期を自動的に開始します。再同期が終了すると、新しいコンポーネントは読み書きが可能になります。障害の発生したコンポーネントがホットスペアのデータで置き換えられると、そのホットスペアが「使用可能 (Available)」状態になり、ほかのホットスペア交換に使用できるようになります。
新しいコンポーネントのサイズは、古いコンポーネントを置き換えられるだけの大きさでなければなりません。
「最後にエラー (Last Erred)」状態のデバイスを交換する場合は、用心のためにすべてのデータのバックアップを取ってください。