ナビゲーションリンクをスキップ
印刷ビューの終了
| Oracle Solaris Cluster ソフトウェアのインストール Oracle Solaris Cluster 3.3 3/13 (日本語)

検索範囲:

- このドキュメント
- ライブラリ全体

## クラスタ内でのディスクセットの作成

このセクションでは、クラスタ構成向けにディスクセットを作成する方法を説明します。Oracle Solaris Cluster 環境で Solaris Volume Manager ディスクセットを作成する場合は、ディスクセットは自動的にタイプ `svm` のデバイスグループとして Oracle Solaris Cluster ソフトウェアに登録されます。 `svm` デバイスグループを作成または削除するには、Solaris Volume Manager コマンドおよびユーティリティーを使用して、デバイスグループの基盤となるディスクセットを作成または削除する必要があります。

次の表に、ディスクセットを作成するときに実行するタスクを示します。ここに示す順に従って手順を実行します。

表 4-2 タスクマップ: Solaris Volume Manager ソフトウェアのインストールと構成

タスク | 手順
--- | ---
`metaset` コマンドを使用してディスクセットを作成 | 「ディスクセットを作成するには」
ディスクセットにドライブを追加 | 「ディスクセットにドライブを追加するには」
(オプション) ディスクセット内のドライブのパーティションを再分割して、さまざまなスライスに空間を割り当てる | 「ディスクセット内のドライブのパーティションを再分割する方法」
デバイス ID 擬似デバイスのマッピングを表示し、`/etc/lvm/md.tab` ファイルにボリュームを定義。 | 「`md.tab` ファイルを作成する方法」
`md.tab` ファイルを初期化 | 「ボリュームを起動する方法」

## ディスクセットを作成するには

次の手順を実行して、ディスクセットを作成します。

始める前に

作成する予定のディスクセットが次の条件の 1 つに適合する必要があります。

- ディスクセットが正確に 2 つのディスク列で構成されている場合、そのディスクセットは、正確に 2 つのノードに接続して、2 つまたは 3 つのメディエータホストを使用する必要があります。 これらのメディエータホストには、ディスクセットを含む格納装置に接続される 2 つのホストが含まれている必要があります。 二重列メディエータを構成する方法の詳細については、「二重列メディエータの構成」を参照してください。

- ディスク列を 3 つ以上構成する場合、任意の 2 つのディスク列 S1 と S2 のディスク数の合計が 3 番目のディスク列 S3 のドライブ数よりも多いことを確認します。この条件を式で表すと、count(S1) + count(S2) > count(S3) となります。

1. クラスタ内の各ノードで、`devfsadm`(1M) コマンドを実行します。

   このコマンドは、すべてのノードで同時に実行できます。

2. クラスタの 1 つのノードから、グローバルデバイス名前空間を更新します。

       phys-schost# cldevice populate

   詳細については、`cldevice`(1CL) のマニュアルページを参照してください。

3. ディスクセットを作成する前に、各ノードでコマンドが処理を完了したことを確認します。

   このコマンドは、1 つのノードからのみ実行されても、リモートからすべてのノードで実行されます。コマンドが処理を終了したかどうかを確認するには、クラスタの各ノードで次のコマンドを実行します。

       phys-schost# ps -ef | grep scgdevs

4. ローカル状態データベースの複製が存在することを確認します。

   手順については、「状態データベースの複製を作成するには」を参照してください。

5. ディスクセットをマスターする予定のクラスタノード上でスーパーユーザーになります。
6. ディスクセットを作成します。

   次のコマンドは、ディスクセットを作成し、そのディスクセットを Oracle Solaris Cluster デバイスグループとして登録します。

       phys-schost# metaset -s setname -a -h node1 node2

   `-s setname`

     ディスクセット名を指定します。

   `-a`

     ディスクセットを追加 (作成)します。

   `-h` node1

     ディスクセットをマスターとするプライマリノードの名前を指定します。

   node2

     ディスクセットをマスターとするセカンダリノードの名前を指定します。

   注 - クラスタ上に Solaris Volume Manager デバイスグループを構成する `metaset` コマンドを実行すると、デフォルトで 1 つのセカンダリノードが指定されます。デバイスグループのセカンダリノードの希望数は、デバイスグループが作成されたあと、`clsetup` ユーティリティーを使用して変更できます。`numsecondaries` プロパティーを変更する方法の詳細については、『Oracle Solaris Cluster システム管理』の「デバイスグループの管理」 を参照してください。

7. 複製された Solaris Volume Manager デバイスグループを構成する場合は、そのデバイスグループの複製プロパティーを設定します。

       phys-schost# cldevicegroup sync device-group-name

   データの複製については、『Oracle Solaris Cluster システム管理』の第 4 章「データ複製のアプローチ」を参照してください。

8. 新しいディスクセットのステータスを確認します。

       phys-schost# metaset -s setname

9. 必要に応じて、デバイスグループのプロパティーを設定します。

       phys-schost# cldevicegroup set -p name=value devicegroup

   `-p`

     デバイスグループのプロパティーを指定します。

   name

     プロパティーの名前を指定します。

   value

     プロパティーの値または設定を指定します。

   devicegroup

     デバイスグループの名前を指定します。デバイスグループ名は、ディスクセット名と同じです。

   デバイスグループのプロパティーの詳細については、`cldevicegroup`(1CL)を参照してください。

例 4-6 ディスクセットを作成する

次のコマンドでは、2 つのディスクセット `dg-schost-1` と `dg-schost-2` が作成され、ノード `phys-schost-1` と `phys-schost-2` が潜在的プライマリノードとして指定されます。

    phys-schost# metaset -s dg-schost-1 -a -h phys-schost-1 phys-schost-2
    phys-schost# metaset -s dg-schost-2 -a -h phys-schost-1 phys-schost-2

次の手順

ディスクセットにドライブを追加します。「ディスクセットへのドライブの追加」に進みます。

### ディスクセットへのドライブの追加

ディスクセットにドライブを追加すると、ボリューム管理ソフトウェアは、次のようにドライブのパーティションを再分割して、ディスクセットの状態データベースをドライブに配置できるようにします。

- 各ドライブの小さな領域が Solaris Volume Manager ソフトウェアで使用するために予約されます。ボリュームの目次 (VTOC) ラベル付きデバイスでは、スライス 7 が使われます。拡張可能ファームウェアインタフェース (Extensible Firmware Interface、EFI) ラベル付きデバイスでは、スライス 6 が使われます。各ドライブの残りの領域は、スライス 0 に配置されます。

- ディスクセットにディスクドライブが追加されると、ターゲットスライスが正しく構成されていない場合にのみ、ドライブのパーティションが再分割されます。

- パーティションの再分割によって、ドライブ上の既存のデータはすべて失われます。

- ターゲットスライスがシリンダ 0 から始まり、ドライブのパーティションに状態データベースの複製を格納するための十分な領域がある場合、ドライブの再分割は行われません。

### ディスクセットにドライブを追加するには

始める前に

ディスクセットが作成済みであることを確認します。手順については、「ディスクセットを作成するには」を参照してください。

1. スーパーユーザーになります。
2. DID マッピングを表示します。

       phys-schost# cldevice show | grep Device

   - ディスクセットをマスターする (またはマスターする可能性がある) クラスタノードによって共有されているドライブを選択します。

   - ディスクセットにドライブを追加する際は、`/dev/did/rdsk/d` N の形式の完全な DID デバイス名を使用してください。

   次の例では、DID デバイス `/dev/did/rdsk/d3` のエントリは、ドライブが `phys-schost-1` および `phys-schost-2` によって共有されていることを示しています。

       === DID Device Instances ===
       DID Device Name:                                /dev/did/rdsk/d1
         Full Device Path:                               phys-schost-1:/dev/rdsk/c0t0d0
       DID Device Name:                                /dev/did/rdsk/d2
         Full Device Path:                               phys-schost-1:/dev/rdsk/c0t6d0
       DID Device Name:                                /dev/did/rdsk/d3
         Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
         Full Device Path:                               phys-schost-2:/dev/rdsk/c1t1d0
       …

3. ディスクセットの所有者になります。

       phys-schost# cldevicegroup switch -n node devicegroup

   `-n` node

     デバイスグループの所有権を取得するノードを指定します。

   devicegroup

     デバイスグループ名を指定します。これはディスクセット名と同じです。

4. ディスクセットにドライブを追加します。

   完全な DID パス名を使用します。

       phys-schost# metaset -s setname -a /dev/did/rdsk/dN

   `-s` setname

     デバイスグループ名と同じである、ディスクセット名を指定します。

   `-a`

     ディスクセットにドライブを追加します。

   注 - ディスクセットにドライブを追加するときは、下位デバイス名 (`c` N `t` X `d` Y) は使用しないでください。下位レベルデバイス名はローカル名であり、クラスタ全体で一意ではないため、この名前を使用するとディスクセットがスイッチオーバーできなくなる可能性があります。

5. 新しいディスクセットとドライブのステータスを検査します。

       phys-schost# metaset -s setname

例 4-7 ディスクセットへのドライブの追加

`metaset` コマンドによって、ディスクドライブ `/dev/did/rdsk/d1` と `/dev/did/rdsk/d2` がディスクセット `dg-schost-1` に追加されます。

    phys-schost# metaset -s dg-schost-1 -a /dev/did/rdsk/d1 /dev/did/rdsk/d2

次の手順

ボリュームで使用するためにドライブのパーティションを再分割するには、「ディスクセット内のドライブのパーティションを再分割する方法」に進みます。

それ以外の場合は 「`md.tab` ファイルを作成する方法」に進み、`md.tab` ファイルを使用してメタデバイスまたはボリュームを定義します。

## ディスクセット内のドライブのパーティションを再分割する方法

`metaset`(1M) コマンドは、ディスクセット内のドライブのパーティションを再分割し、各ドライブの小さな領域を Solaris Volume Manager ソフトウェアで使用するために予約します。ボリュームの目次 (VTOC) ラベル付きデバイスでは、スライス 7 が使われます。拡張可能ファームウェアインタフェース (Extensible Firmware Interface、EFI) ラベル付きデバイスでは、スライス 6 が使われます。各ドライブの残りの領域は、スライス 0 に配置されます。ドライブの使用効率を向上させるためには、この手順を使ってディスクのレイアウトを変更して下さい。VTOC スライス 1 から 6、または EFI スライス 1 から 5 に領域を割り当てると、Solaris Volume Manager ボリュームを設定するときにこれらのスライスを使用できます。

1. スーパーユーザーになります。
2. `format` コマンドを使用し、ディスクセット内の各ドライブのディスクパーティションを変更します。

   ドライブのパーティションを再分割するときには、`metaset`(1M) コマンドがドライブのパーティションを再分割しないように、次の条件を満たす必要があります。

   - 状態データベースの複製を維持するのに十分な大きさの、シリンダ 0 で始まる VTOC のスライス 7 または EFI のスライス 6 を作成します。Solaris Volume Manager の管理者ガイドを参照して、使用のバージョンのボリューム管理ソフトウェア用の状態データベース複製のサイズを判定します。

   - ターゲットスライスの `Flag` フィールドを `wu` (読み書き可能、マウント不可) に設定します。これを読み取り専用に設定しないでください。

   - ターゲットスライスがドライブ上のほかのスライスとオーバーラップしないでください。

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

次の手順

`md.tab` ファイルを使って、ボリュームを定義します。「`md.tab` ファイルを作成する方法」に進みます。

## `md.tab` ファイルを作成する方法

クラスタ内の各ノードごとに `/etc/lvm/md.tab` ファイルを作成します。`md.tab` ファイルを使用して、作成したディスクセットの Solaris Volume Manager ボリュームを定義します。

注 - ローカルボリュームを使用する場合は、ローカルボリューム名が、ディスクセットを構成するために使用されているデバイス ID 名と異なることを確認します。たとえば、ディスクセットで `/dev/did/dsk/d3` というデバイス ID 名が使用されている場合は、ローカルボリュームに `/dev/md/dsk/d3` という名前を使用しないでください。この要件は、命名規則 `/dev/md/setname/{r}dsk/d #` を使用する共有ボリュームには適用されません。

1. スーパーユーザーになります。
2. `md.tab` ファイルを作成するときの参照用として、DID マッピングの一覧を表示します。

   下位デバイス名 (`c` N `t` X `d` Y) の代わりに `md.tab` ファイル内では、完全な DID デバイス名を使用してください。DID デバイス名は、`/dev/did/rdsk/d` N の形式を取ります。

       phys-schost# cldevice show | grep Device

       === DID Device Instances ===
       DID Device Name:                                /dev/did/rdsk/d1
         Full Device Path:                               phys-schost-1:/dev/rdsk/c0t0d0
       DID Device Name:                                /dev/did/rdsk/d2
         Full Device Path:                               phys-schost-1:/dev/rdsk/c0t6d0
       DID Device Name:                                /dev/did/rdsk/d3
         Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
         Full Device Path:                               phys-schost-2:/dev/rdsk/c1t1d0
       …

3. `/etc/lvm/md.tab` ファイルを作成し、任意のテキストエディタで編集します。

   注 - サブミラーに使用するドライブにデータがすでに存在している場合は、ボリュームを設定する前にデータのバックアップを作成する必要があります。その後、データをミラーに復元します。

   クラスタ環境内のさまざまなノード上のローカルボリューム間での混乱を避けるため、クラスタ全体で各ローカルボリューム名が固有となるような命名規則を使用してください。たとえば、ノード 1 については、`d100` から `d199` の間で名前を選択します。またノード 2 については、`d200` から `d299` を使用します。

   `md.tab` ファイルを作成する方法の詳細については、Solaris Volume Manager のドキュメントおよび `md.tab`(4) のマニュアルページを参照してください。

例 4-8 `md.tab` のサンプルファイル

次の `md.tab` のサンプルファイルでは、`dg-schost-1` という名前でディスクセットを定義しています。`md.tab` ファイル内の行の順序は重要ではありません。

    dg-schost-1/d0 -m dg-schost-1/d10 dg-schost-1/d20
        dg-schost-1/d10 1 1 /dev/did/rdsk/d1s0
        dg-schost-1/d20 1 1 /dev/did/rdsk/d2s0

サンプル `md.tab` ファイルは、次のように構築されています。

1. 先頭行では、デバイス `d0` をボリューム `d10` と `d20` のミラーとして定義しています。`-m` は、このデバイスがミラーデバイスであることを示します。

       dg-schost-1/d0 -m dg-schost-1/d0 dg-schost-1/d20

2. 2 行目では、`d0` の最初のサブミラーであるボリューム `d10` を一方向のストライプとして定義しています。

       dg-schost-1/d10 1 1 /dev/did/rdsk/d1s0

3. 3 行目では、`d0` の 2 番目のサブミラーであるボリューム `d20` を一方向のストライプとして定義しています。

       dg-schost-1/d20 1 1 /dev/did/rdsk/d2s0

次の手順

`md.tab` ファイルで定義したボリュームを起動します。「ボリュームを起動する方法」に進みます。

## ボリュームを起動する方法

この手順を実行して、`md.tab` ファイルで定義されている Solaris Volume Manager ボリュームを起動します。

1. スーパーユーザーになります。
2. `md.tab` ファイルが `/etc/lvm` ディレクトリに置かれていることを確認します。
3. コマンドを実行するノードで、ディスクセットの所有権を持っていることを確認します。
4. ディスクセットの所有権を取得します。

       phys-schost# cldevicegroup switch -n node devicegroup

   `-n` node

     所有権を取得するノードを指定します。

   devicegroup

     ディスクセット名を指定します。

5. `md.tab` ファイルで定義されたディスクセットのボリュームを起動します。

       phys-schost# metainit -s setname -a

   `-s` setname

     ディスクセット名を指定します。

   `-a`

     `md.tab` ファイル内のすべてのボリュームを起動します。

6. クラスタ内のディスクセットごとに、手順 3 から手順 5 を繰り返します。

   必要に応じて、ドライブに接続できる別のノードから `metainit`(1m) コマンドを実行します。クラスタペアトポロジでは、すべてのノードがドライブにアクセスできるわけではないため、この手順が必要になります。

7. ボリュームのステータスを確認します。

       phys-schost# metastat -s setname

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

8. (省略可能) あとで参考にするために、ディスクのパーティション分割情報を捕獲しておきます。

       phys-schost# prtvtoc /dev/rdsk/cNtXdYsZ > filename

   このファイルをクラスタ外の場所に保存します。ディスク構成を変更する場合は、このコマンドをもう一度実行して、変更した構成をキャプチャします。ディスクに障害が発生し、交換が必要な場合は、この上方を使用してディスクパーティション構成を復元できます。詳細については、`prtvtoc`(1M) のマニュアルページを参照してください。

9. (省略可能) クラスタ構成のバックアップを取ります。

   クラスタ構成のバックアップを保存しておけば、クラスタ構成の回復がより簡単になります。詳細は、『Oracle Solaris Cluster システム管理』の「クラスタ構成をバックアップする方法」を参照してください。

例 4-9 `md.tab` ファイル内のボリュームの起動

次の例では、`md.tab` ファイルでディスクセット `dg-schost-1` で定義されているすべてのボリュームを起動します。

    phys-schost# metainit -s dg-schost-1 -a

次の手順

クラスタに正確に 2 つのディスク格納装置と 2 つのノードがある場合は、二重列メディエータを追加します。「二重列メディエータの構成」に進みます。

それ以外の場合は、「クラスタファイルシステムを追加する方法」に進んでクラスタファイルシステムを作成します。

Copyright © 2000, 2013, Oracle and/or its affiliates. All rights reserved. 著作権について |