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

第 8 章 RAID 0 (ストライプ方式および連結方式) ボリューム (作業)

この章では、RAID 0 ボリュームに関連する作業について説明します。 関連する概念については、第 7 章「RAID 0 (ストライプ方式および連結方式) ボリューム (概要)」を参照してください。

RAID 0 ボリューム (作業マップ)

次の表に、Solaris ボリュームマネージャの RAID 0 ボリュームを管理するのに必要な作業を示します。

作業 

説明 

参照先 

RAID 0 (ストライプ方式) ボリュームの作成 

metainit コマンドを使って新しいボリュームを作成します。 RAID 0 (ストライプ方式) ボリュームを作成するには

RAID 0 (連結方式) ボリュームの作成  

metainit コマンドを使って新しいボリュームを作成します。

RAID 0 (連結方式) ボリュームを作成するには

記憶領域の拡張 

metainit コマンドを使って既存のファイルシステムを拡張します。 既存のデータの記憶領域を拡張するには

既存のボリュームの拡張 

metattach コマンドを使って既存のボリュームを拡張します。

既存の RAID 0 ボリュームを拡張するには

RAID 0 ボリュームの削除 

metaclear コマンドを使ってボリュームを削除します。

RAID 0 ボリュームを削除するには

RAID 0 (ストライプ方式) ボリュームの作成


注意 – 注意 –

既存のファイルシステムまたはデータからストライプを作成しないでください。 作成するとデータが破壊されます。 既存のデータからストライプを作成する場合は、データのバックアップをとり、それをボリュームに復元する必要があります。



注意 – 注意 –

32 ビットカーネルの Solaris オペレーティング環境、または Solaris 9 4/03 より前のバージョンの Solaris オペレーティング環境を実行する予定がある場合は、1T バイトを超えるボリュームを作成しないでください。Solaris ボリュームマネージャでの大容量ボリュームのサポートについては、Solaris ボリュームマネージャの大容量ボリュームのサポートについての概要を参照してください。


RAID 0 (ストライプ方式) ボリュームを作成するには

  1. Solaris ボリュームマネージャコンポーネントを作成するための前提条件RAID 0 ボリュームを作成するための背景情報 を確認します。

  2. 次のどちらかの方法でストライプを作成します。

    • Solaris 管理コンソール内の「拡張ストレージ」から「ボリューム (Volumes)」ノードを開きます。 「アクション (Action)」、「ボリュームを作成 (Create Volume)」の順に選択し、ウィザードの指示に従います。 詳細は、オンラインヘルプを参照してください。

    • 次の形式の metainit コマンドを使用します。

      metainit {volume-name} {number-of-stripes} {components-per-stripe} {component-names…} [-i interlace-value]
      • volume-name は、作成するボリュームの名前です。

      • number-of-stripes には、作成するストライプの数を指定します。

      • components-per-stripe には、個々のストライプを構成するコンポーネントの数を指定します。

      • component-names には、使用する個々のコンポーネントの名前を指定します。

      • -iwidth には、ストライプに使用する飛び越し幅を指定します。

      詳細は、次の例と metainit(1M) のマニュアルページを参照してください。

例 — 3 つのスライスからなるストライプを作成する


# metainit d20 1 3 c0t1d0s2 c0t2d0s2 c0t3d0s2
d20: Concat/Stripe is setup

ボリューム d20 は 1 つのストライプ (数字の 1) からなり、ストライプは 3 つのスライス (数字の 3) からなります。 このストライプには飛び越し値が指定されていないため、デフォルト値の 16K バイトが使用されます。 最後に、ボリュームが設定されたことを示すメッセージが出力されます。

例 — 32K バイトの飛び越し値を持つ 2 つのスライスからなる RAID 0 (ストライプ方式) ボリュームを作成する


# metainit d10 1 2 c0t1d0s2 c0t2d0s2 -i 32k
d10: Concat/Stripe is setup

ボリューム d10 は 1 つのストライプ (数字の 1) からなり、ストライプは 2 つのスライス (数字の 2) からなります。 -i オプションでは、飛び越し値として 32K バイトを設定します。 (飛び越し値は 8K バイト以上、100M バイト以下でなければなりません。) 最後に、ボリュームが設定されたことを示すメッセージが出力されます。

次の作業

新たに作成したストライプにファイルシステムを作成する場合は、『Solaris のシステム管理 (基本編)』の「ファイルシステムの作成 (手順)」を参照してください。 データベースなど、raw デバイスを使用するアプリケーションは、独自の方法で raw デバイスにアクセスできなければなりません。

RAID 0 (連結方式) ボリューム

RAID 0 (連結方式) ボリュームを作成するには


注意 – 注意 –

32 ビットカーネルの Solaris オペレーティング環境、または Solaris 9 4/03 より前のバージョンの Solaris オペレーティング環境を実行する予定がある場合は、1T バイトを超えるボリュームを作成しないでください。Solaris ボリュームマネージャでの大容量ボリュームのサポートについては、Solaris ボリュームマネージャの大容量ボリュームのサポートについての概要を参照してください。


  1. Solaris ボリュームマネージャコンポーネントを作成するための前提条件RAID 0 ボリュームを作成するための背景情報 を確認します。

  2. 次のどちらかの方法で連結を作成します。

    • Solaris 管理コンソール内の「拡張ストレージ」から「ボリューム (Volumes)」ノードを開きます。 「アクション (Action)」、「ボリュームを作成 (Create Volume)」の順に選択し、ウィザードの指示に従います。 詳細は、オンラインヘルプを参照してください。

    • 次の形式の metainit コマンドを使用します。

      metainit {volume-name } {number-of-stripes} {[components-per-stripe]| [component-names]…}
      • volume-name は、作成するボリュームの名前です。

      • number-of-stripes には、作成するストライプの数を指定します。

      • components-per-stripe には、個々のストライプを構成するコンポーネントの数を指定します。

      • component-names には、使用する個々のコンポーネントの名前を指定します。

      詳細は、次の例と metainit(1M) のマニュアルページを参照してください。

例 — 1 つのスライスからなる連結を作成する


# metainit d25 1 1 c0t1d0s2
d25: Concat/Stripe is setup

この例では連結方式ボリューム d25 を作成します。このボリュームは 1 つのストライプ (最初の 1) からなり、ストライプは 1 つのスライス (2 番目の 1) からなります。 最後に、ボリュームが設定されたことを示すメッセージが出力されます。

この例は、既存のデータを安全にカプセル化できる連結の例です。

例 — 4 つのスライスからなる連結を作成する


# metainit d40 4 1 c0t1d0s2 1 c0t2d0s2 1 c0t2d0s3 1 c0t2d1s3
d40: Concat/Stripe is setup

この例では d40 という名前の連結を作成します。ボリュームは 4 つの「ストライプ」(数字の 4) からなり、各ストライプは 1 つのスライス (各スライスの前の数字 1) からなります。 最後に、ボリュームが設定されたことを示すメッセージが出力されます。

次の作業

新たに作成した連結にファイルシステムを作成する方法については、『Solaris のシステム管理 (基本編)』の「ファイルシステムの作成 (手順)」を参照してください。

記憶領域の拡張

ファイルシステムに領域を追加する場合は連結を作成し、 既存のストライプに領域を追加する場合はストライプを連結します。

既存のデータの記憶領域を拡張するには


注意 – 注意 –

32 ビットカーネルの Solaris オペレーティング環境、または Solaris 9 4/03 より前のバージョンの Solaris オペレーティング環境を実行する予定がある場合は、1T バイトを超えるボリュームを作成しないでください。Solaris ボリュームマネージャでの大容量ボリュームのサポートについては、Solaris ボリュームマネージャの大容量ボリュームのサポートについての概要を参照してください。


  1. Solaris ボリュームマネージャコンポーネントを作成するための前提条件RAID 0 ボリュームを作成するための背景情報 を確認します。

  2. ファイルシステムをマウント解除します。


    # umount /filesystem
    
  3. 次のどちらかの方法で連結を作成します。

    • Solaris 管理コンソール内の「拡張ストレージ」から「ボリューム (Volumes)」ノードを開きます。 「アクション (Action)」、「ボリュームを作成 (Create Volume)」の順に選択し、ウィザードの指示に従います。 詳細は、オンラインヘルプを参照してください。

    • 次の形式の metainit コマンドを使用します。

      metainit {volume-name } {number-of-stripes} {[components-per-stripe]| [component-names]…}
      • volume-name は、作成するボリュームの名前です。

      • number-of-stripes には、作成するストライプの数を指定します。

      • components-per-stripe には、個々のストライプを構成するコンポーネントの数を指定します。

      • components には、使用する個々のコンポーネントの名前を指定します。

      詳細は、metainit(1M) のマニュアルページを参照してください。

  4. /etc/vfstab を編集して、このファイルシステムが連結の名前を参照するようにします。

  5. ファイルシステムを再びマウントします。


    # mount /filesystem
    

例 — 連結を作成してファイルシステムを拡張する

この例では、2 つのスライス、/dev/dsk/c0t1d0s2 (/docs にマウントされたファイルシステムが格納されている) と /dev/dsk/c0t2d0s2 から d25 という名前の連結を作成します。 ファイルシステムは、最初にマウント解除する必要があります。


# umount /docs
# metainit d25 2 1 c0t1d0s2 1 c0t2d0s2
d25: Concat/Stripe is setup
(/etc/vfstab ファイルを編集して、このファイルシステムがスライス c0t1d0s2 の代わりにボリューム d25 を参照するようにします。)
# mount /docs

metainit コマンドに指定する最初のスライスは、ファイルシステムが格納されているスライスでなければなりません。 そうでないと、データが破壊されます。

次に、/etc/vfstab ファイルにあるファイルシステムのエントリを、この連結を参照するように変更します (初めての場合は、入力します)。 たとえば、次の行を見てください。


/dev/dsk/c0t1d0s2 /dev/rdsk/c0t1d0s2 /docs ufs 2 yes -

上記の行を次のように変更します。


/dev/md/dsk/d25 /dev/md/rdsk/d25 /docs ufs 2 yes -

最後にファイルシステムをマウントし直します。

次の作業

UFS ファイルシステムの場合は、連結に対して growfs コマンドを実行します。 詳細は、ファイルシステムを拡張するにはを参照してください。

データベースなど、raw 連結を使用するアプリケーションは、独自の方法でこのボリュームを認識し、領域を拡張できなければなりません。

既存の RAID 0 ボリュームを拡張するには

ストライプを連結することによって、既存のストライプを拡張できます。 たとえば、ストライプの領域が足りなくなった場合は、ストライプを連結することによって、領域を拡張できます。データのバックアップや復元は必要ありません。

この手順では、既存のストライプに別のストライプを追加するものとします。


注意 – 注意 –

32 ビットカーネルの Solaris オペレーティング環境、または Solaris 9 4/03 より前のバージョンの Solaris オペレーティング環境を実行する予定がある場合は、1T バイトを超えるボリュームを作成しないでください。Solaris ボリュームマネージャでの大容量ボリュームのサポートについては、Solaris ボリュームマネージャの大容量ボリュームのサポートについての概要を参照してください。


  1. Solaris ボリュームマネージャコンポーネントを作成するための前提条件RAID 0 ボリュームを作成するための背景情報 を確認します。

  2. 次のどちらかの方法でストライプ連結を作成します。

    • Solaris 管理コンソール内の「拡張ストレージ」から「ボリューム (Volumes)」ノードを開きます。 「アクション (Action)」、「ボリュームを作成 (Create Volume)」の順に選択しウィザードの指示に従います。 詳細は、オンラインヘルプを参照してください。

    • コマンド行から既存のストライプを連結する場合は、次の形式の metattach コマンドを使用します。

      metattach {volume-name} {component-names…}
      • volume-name は、拡張するボリュームの名前です。

      • components には、使用する個々のコンポーネントの名前を指定します。

      詳細は、例 — 1 つのスライスを追加してストライプ連結を作成する 例 — いくつかのスライスを追加してスライス連結を作成する および metattach(1M) のマニュアルページを参照してください。

例 — 1 つのスライスを追加してストライプ連結を作成する


# metattach d2 c1t2d0s2
d2: components are attached

この例では、既存のスライス d2 にスライスを追加します。 スライスが追加されたことを示すメッセージが表示されます。

例 — いくつかのスライスを追加してスライス連結を作成する


# metattach d25 c1t2d0s2 c1t2d1s2 c1t2d3s2
d25: components are attached

この例では、既存の 3 面ストライプ d25 に別の 3 面ストライプを連結します。 これら 3 つのスライスには飛び越し値が指定されていないので、d25 に設定された値が使用されます。 最後に、ボリュームが設定されたことを示すメッセージが出力されます。

次の作業

UFS の場合は、ボリュームに対して growfs コマンドを実行します。 詳細は、ファイルシステムを拡張するにはを参照してください。

データベースなど、raw ボリュームを使用するアプリケーションは、独自の方法でこのボリュームを認識したり、追加領域を拡張したりできなければなりません。

新たに作成したストライプ連結にファイルシステムを作成する方法については、『Solaris のシステム管理 (基本編)』の「ファイルシステムの作成 (手順)」を参照してください。

RAID 0 ボリュームの削除

RAID 0 ボリュームを削除するには

  1. すべてのデータの最新のバックアップを取っているか確認します。また、この操作にはルート権限が必要です。

  2. このボリュームを本当に削除しても問題がないか確認します。

    ストライプまたは連結を削除し、そのボリュームの一部として使用されているスライスを再使用すると、ボリュームのすべてのデータが失われます。

  3. 必要であれば、ファイルシステムをマウント解除します。


    # umount /filesystem
    
  4. 次のどちらかの方法でボリュームを削除します。

    • Solaris 管理コンソール内の「拡張ストレージ」から「ボリューム (Volumes)」ノードを開きます。 「編集」、「削除」の順に選択してから、指示に従います。 詳細は、オンラインヘルプを参照してください。

    • 次の形式の metaclear コマンドを使ってボリュームを削除します。

      metaclear {volume-name}

      詳細は、次の例と metaclear(1M) のマニュアルページを参照してください。

例 — 連結を削除する


# umount d8
# metaclear d8
d8: Concat/Stripe is cleared
(/etc/vfstab ファイルを編集します)

この例では、マウントされたファイルシステムが格納されている連結 d8 を削除します。 ボリュームを削除する場合は、あらかじめファイルシステムをマウント解除する必要があります。 連結の削除が完了すると、そのことを示すメッセージが表示されます。 /etc/vfstab ファイルにこのボリュームのエントリがある場合は、このエントリを削除する必要があります。 これによって、存在しないボリュームにファイルシステムをマウントするのを回避できます。