Solaris ボリュームマネージャで作成できるコンポーネントの基本的なタイプは、ボリューム、ソフトパーティション、ディスクセット、状態データベースの複製、ホットスペア集合の 5 つです。次の表に、Solaris ボリュームマネージャの機能の概要を示します。
表 3–1 Solaris ボリュームマネージャの機能の要約
「ボリューム」とは、単一の論理デバイスとしてシステムに認識される物理スライスの集合です。 実際には、ボリュームは標準 UNIX® の擬似または仮想デバイスと同義です。
これまで、Solstice DiskSuiteTM 製品ではこのような論理デバイスを「メタデバイス」と呼んでいましたが、このマニュアルでは、簡潔性と標準化のために「ボリューム」と呼びます。
ボリュームは、RAID-0 (連結方式またはストライプ方式) ボリューム、RAID-1 (ミラー) ボリューム、RAID-5 ボリューム、 またはソフトパーティションとして作成します。
ボリュームの作成や管理には、Solaris 管理コンソール内の「拡張ストレージ」かコマンド行ユーティリティーを使用します。
表 3–2 ボリュームクラス
ボリューム |
説明 |
---|---|
そのまま使用することも、ミラーの基本的な構築ブロックとして使用することもできます。RAID-0 ボリューム自体にはデータの冗長性はありません。 |
|
複数のコピーを保持することによってデータを複製します。RAID-1 ボリュームは、サブミラーと呼ばれる 1 つまたは複数の RAID-0 ボリュームから構成されます。 |
|
パリティー情報を使ってデータを複製します。ディスクに障害が発生すると、利用可能なデータとパリティー情報から失われたデータが復元されます。RAID-5 ボリュームは、通常、複数のスライスで構成されています。1 スライスに相当する領域がパリティー情報に割り当てられますが、パリティーは RAID-5 ボリュームのすべてのスライスに分散されます。 |
|
ソフトパーティション |
スライスまたは論理ボリュームをより小さい 1 つまたは複数の拡張可能ボリュームに分割します。 |
ボリュームを使用すると、記憶領域を拡張したり、性能やデータの可用性を高めたりできます。状況によっては、ボリュームを使用すると、入出力性能が向上することもあります。機能的には、ボリュームとスライスは同じように動作します。エンドユーザーや、アプリケーション、ファイルシステムからは、ボリュームとスライスは同じように見えます。物理デバイスと同じように、ボリュームはブロックまたは raw デバイス名を使ってアクセスされます。ボリューム名は、ブロックデバイスを使用するか raw デバイスを使用するかによって異なります。ボリューム名の詳細については、「ボリューム名」を参照してください。
ボリューム上では、mkfs、mount、 umount、ufsdump、ufsrestore など、ファイルシステムのほとんどのコマンドを使用できます。ただし、format コマンドは使用できません。ボリューム上にマウント済みのファイルシステムが存在すれば、ボリュームとの間でファイルの読み取り、書き込み、コピーを行うことができます。
図 3–2 に、Disk A のスライス 1 つと Disk B のスライス 1 つの合計 2 つのスライスからなるボリュームを示します。アプリケーションや UFS は、このボリュームを 1 つの物理ディスクであるかのように扱います。ボリュームにさらに多くのスライスを追加すれば、記憶容量を増やすことができます。
Solaris ボリュームマネージャでは、ボリュームにスライスを追加することによってボリュームを拡張できます。既存のボリュームにスライスを追加するには、Solaris 管理コンソール内の「拡張ストレージ」かコマンド行インタフェースを使用します。
ボリュームに含まれているUFS ファイルシステムは、マウントされているかどうかに関係なく、システムを停止したりバックアップを取らなくても拡張できます。ただし、どのような場合でも、データのバックアップを取ることを推奨します。ボリュームを拡張したあとは、growfs コマンドを使用してファイルシステムを拡張します。
いったん拡張したファイルシステムを縮小することはできません。ファイルシステムを縮小できないことが UFS の制約です。同じように、いったん拡張した Solaris ボリュームマネージャのパーティションを縮小することはできません。
raw ボリュームを使用するアプリケーションやデータベースは、独自の方法で領域を拡張し、それを認識できなければなりません。Solaris ボリュームマネージャには、この機能はありません。
ボリュームのディスク領域を拡張するには、次の方法を利用できます。
RAID-0 ボリュームに 1 つまたは複数のスライスを追加する
RAID-1 ボリュームのすべてのサブミラーに 1 つまたは複数のスライスを追加する
growfs コマンドは、サービスの中断やデータを失うことなく、UFS ファイルシステムを拡張します。ただし、growfs コマンドが実行している間は、ボリュームへの書き込みアクセスはできません。ファイルシステムは、それを格納しているスライスまたはボリュームのサイズまで拡張できます。
追加ディスク領域の一部だけを使ってファイルシステムを拡張する場合は、growfs コマンドに -s size オプションを指定します。
ミラーを拡張すると、ミラーを構成しているすべてのサブミラーに領域が追加されます。growfs コマンドは RAID-1 ボリューム上で実行されます。一般的な規則としては、ボリュームを構成するデバイスに領域を追加してから、最上位のデバイスに対して growfs コマンドを実行します。
物理スライスと同じように、ボリュームにも、ファイルシステムで使用される論理名があります。論理ボリューム名は、/dev/md/dsk ディレクトリ (ブロックデバイスの場合) または /dev/md/rdsk ディレクトリ (raw デバイスの場合) に作成されます。meta* コマンドでは、/dev/md/dsk/volume-name のような完全なボリューム名を指定する代わりに、d1 のような省略形のボリューム名を使用することができます。名前を変更しようとするボリュームが現在使用されておらず、かつ、新しい名前がほかのボリュームで使用されていなければ、ボリューム名はいつでも変更できます。詳細については、「ボリューム名の交換」を参照してください。
以前は、ボリューム名は「d」で始まり、そのあとに数字が続く形式にする必要がありました (たとえば、d0)。この形式は現在も使用可能です。次に、「d*」命名構文を使用するボリューム名の例を示します。
ブロック型ボリューム d0
ブロック型ボリューム d1
raw ボリューム d126
raw ボリューム d127
ボリューム名を標準化すると、管理が容易になるだけでなく、ボリュームタイプが一目でわかるようになります。次の推奨事項を考慮してください。
ボリュームタイプごとに範囲を使用します。たとえば、RAID-1 ボリュームには 0 から 20、RAID-0 ボリュームには 21 から 40、などのように割り当てます。
ミラーの名前を相互に関連付けます。たとえば、ミラーの名前を 0 で終わる数字にし、サブミラーの名前を 1 や 2 で終わる数字にします。これに従えば、最初のミラーは d10、そのサブミラーは d11 と d12 になります。さらに、次のミラーは d20、そのサブミラーは d21、 d22、 d23、d24 になります。
スライス番号とディスク番号がボリューム番号に対応するような命名方法を使用します。
「状態データベース 」は、Solaris ボリュームマネージャの構成の状態に関する情報を格納するデータベースです。状態データベースは、構成に対して加えられた変更を記録および管理します。Solaris ボリュームマネージャは、構成や状態に変化があると、状態データベースを自動的に更新します。たとえば、新しいボリュームの作成は構成の変更であり、サブミラーの障害は状態の変化を意味します。
状態データベースは、実際には複製された複数のデータベースコピーの集まりです。各コピーは、状態データベースの複製と呼ばれ、データベース内のデータが常に有効であることを保証します。状態データベースのコピーを複数持つことにより、単一点障害からデータを保護することができます。状態データベースは、既知の状態データベースの複製の格納場所と状態をすべて記録しています。
状態データベースとその状態データベースの複製が作成されるまで、Solaris ボリュームマネージャは動作できません。Solaris ボリュームマネージャ構成には、正常に動作する状態データベースが必要です。
構成を設定するときは、状態データベースの複製を次のどちらかに配置できます。
専用のスライス上
後でボリュームの一部となるスライス上
Solaris ボリュームマネージャは、状態データベースの複製が割り当てられているスライスを認識し、そのスライスがボリューム内で使用されている場合には、その複製部分を自動的にスキップします。状態データベースの複製用に予約されているスライスの部分を、他の目的に使用することはできません。
複数の状態データベースのコピーを 1 つのスライス上に置くこともできますが、そのようにすると、システムは単一点障害に対して脆弱になります。
すべての状態データベースの複製が削除された場合でも、Solaris オペレーティングシステムは正常に動作します。しかし、状態データベースの複製がディスク上にまったくない状態でシステムをリブートすると、すべての Solaris ボリュームマネージャの構成データが失われます。
「ホットスペア集合」は、障害のあるコンポーネントと自動的に交換できるように、Solaris ボリュームマネージャが予約しているスライス (「ホットスペア」) の集合です。ホットスペアは、サブミラーまたは RAID-5 ボリュームのどちらでも使用できます。RAID-1 ボリュームと RAID-5 ボリュームでは、ホットスペアを使用することによってデータの可用性が向上します。ホットスペア集合は、Solaris 管理コンソール内の「拡張ストレージ」とコマンド行インタフェースのどちらでも作成できます。
コンポーネントエラーが発生すると、Solaris ボリュームマネージャは、障害のあるコンポーネントと同じかそれより大きいサイズのホットスペアを探します。該当するホットスペアが見つかると、Solaris ボリュームマネージャは自動的にそのコンポーネントを交換して、データの再同期をとります。適切なサイズのスライスがホットスペア集合にないと、サブミラーまたは RAID-5 ボリュームは使用不能とみなされます。詳細については、 第 16 章「ホットスペア集合 (概要)」を参照してください。
ディスクセットとは、論理ボリュームとホットスペアを含む物理的な記憶領域ボリュームの集まりのことです。ボリュームやホットスペア集合は、そのディスクセット内のドライブだけで構成される必要があります。ディスクセットに作成したボリュームは、物理スライスと同じように使用できます。
クラスタ環境では、ディスクセットの使用によってデータの可用性が向上します。一方のホストに障害が発生しても、そのディスクセットを他方のホストが引き継ぐことができます。このタイプの構成は「フェイルオーバー構成」と呼ばれます。さらに、ディスクセットを使用することにより、Solaris ボリュームマネージャの名前空間の管理や、ネットワーク接続されている記憶装置へのアクセスが容易になります。
詳細については、第 18 章「ディスクセット (概要)」を参照してください。