ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Oracle Solaris Cluster ソフトウェアのインストール Oracle Solaris Cluster (日本語) |
1. Oracle Solaris Cluster 構成を計画する
2. グローバルクラスタノードへのソフトウェアのインストール
4. Solaris ボリュームマネージャー ソフトウェアの構成
マウント解除できないルート (/) 以外のファイルシステムをミラー化する
5. Veritas Volume Manager をインストールして構成する
8. Oracle Solaris Cluster モジュールの Sun Management Center へのインストール
この節では、クラスタ構成向けにディスクセットを作成する方法を説明します。Oracle Solaris Cluster 環境で Solaris ボリュームマネージャー ディスクセットを作成する場合は、ディスクセットは自動的にタイプ svm のデバイスグループとして Oracle Solaris Cluster ソフトウェアに登録されます。 svm デバイスグループを作成または削除するには、Solaris ボリュームマネージャー コマンドおよびユーティリティーを使用して、デバイスグループの基盤となるディスクセットを作成または削除する必要があります。
次の表に、ディスクセットを作成するときに実行する作業を示します。ここに示す順に従って手順を実行します。
表 4-2 作業マップ: Solaris ボリュームマネージャー ソフトウェアのインストールと構成
|
この手順を実行して、ディスクセットを作成します。
このコマンドは、すべてのノードで同時に実行できます。
phys-schost# cldevice populate
詳細は、cldevice(1CL) のマニュアルページを参照してください。
このコマンドは、1 つのノードからのみ実行されても、リモートからすべてのノードで実行されます。コマンドが処理を終了したかどうかを確認するには、クラスタの各ノードで次のコマンドを実行します。
phys-schost# ps -ef | grep scgdevs
ディスクセットが正確に 2 つのディスク列で構成されている場合、そのディスクセットは、正確に 2 つのノードに接続して、2 つまたは 3 つのメディエータホストを使用する必要があります。 これらのメディエータホストには、ディスクセットを含む格納装置に接続される 2 つのホストが含まれている必要があります。 二重列メディエータを構成する方法の詳細については、「二重列メディエータの構成」を参照してください。
ディスク列を 3 つ以上構成する場合、任意の 2 つのディスク列 S1 と S2 のディスク数の合計が 3 番目のディスク列 S3 のドライブ数よりも多いことを確認します。この条件を式で表すと、count(S1) + count(S2) > count(S3) となります。
手順については、「状態データベースの複製を作成するには」を参照してください。
次のコマンドは、ディスクセットを作成し、そのディスクセットを Oracle Solaris Cluster デバイスグループとして登録します。
phys-schost# metaset -s setname -a -h node1 node2
ディスクセット名を指定します。
ディスクセットを追加 (作成)します。
ディスクセットをマスターとする主ノードの名前を指定します。
ディスクセットをマスターとする二次ノードの名前を指定します。
注 - クラスタ上に Solaris ボリュームマネージャー デバイスグループを構成する metaset コマンドを実行すると、デフォルトで 1 つの二次ノードが指定されます。デバイスグループの二次ノードの希望数は、デバイスグループが作成されたあと、clsetup ユーティリティーを使用して変更できます。numsecondaries プロパティーを変更する方法の詳細については、『Oracle Solaris Cluster システム管理』の「デバイスグループの管理」を参照してください。
phys-schost# cldevicegroup sync device-group-name
データの複製については、『Oracle Solaris Cluster システム管理』の第 4 章「データ複製のアプローチ」を参照してください。
phys-schost# metaset -s setname
phys-schost# cldevicegroup set -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 Table of Contents、VTOC) ラベル付きデバイスでは、スライス 7 が使われます。拡張可能ファームウェアインターフェース (Extensible Firmware Interface、EFI) ラベル付きデバイスでは、スライス 6 が使われます。各ドライブの残りの領域は、スライス 0 に配置されます。
ディスクセットにディスクドライブが追加されると、ターゲットスライスが正しく構成されていない場合にのみ、ドライブのパーティションが再分割されます。
パーティションの再分割によって、ドライブ上の既存のデータはすべて失われます。
ターゲットスライスがシリンダ 0 から始まり、ドライブのパーティションに状態データベースの複製を格納するための十分な領域がある場合、ドライブの再分割は行われません。
始める前に
ディスクセットが作成済みであることを確認します。手順については、「ディスクセットを作成するには」を参照してください。
phys-schost# cldevice show | grep Device
ディスクセットをマスターする (またはマスターする可能性がある) クラスタノードによって共有されているドライブを選択します。
ディスクセットにドライブを追加する際は、/dev/did/rdsk/dN の形式の完全な 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 …
phys-schost# cldevicegroup switch -n node devicegroup
デバイスグループの所有権を取得するノードを指定します。
デバイスグループ名を指定します。これはディスクセット名と同じです。
完全な DID パス名を使用します。
phys-schost# metaset -s setname -a /dev/did/rdsk/dN
デバイスグループ名と同じである、ディスクセット名を指定します。
ディスクセットにドライブを追加します。
注 - ディスクセットにドライブを追加するときは、下位デバイス名 ( cNtX dY) は使用しないでください。下位レベルデバイス名はローカル名であり、クラスタ全体で一意ではないため、この名前を使用するとディスクセットがスイッチオーバーできなくなる可能性があります。
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 Table of Contents、VTOC) ラベル付きデバイスでは、スライス 7 が使われます。拡張可能ファームウェアインターフェース (Extensible Firmware Interface、EFI) ラベル付きデバイスでは、スライス 6 が使われます。各ドライブの残りの領域は、スライス 0 に配置されます。ドライブの使用効率を向上させるためには、この手順を使ってディスクのレイアウトを変更して下さい。VTOC スライス 1 から 6 または EFI スライス 1 から 5 に領域を割り当てることで、Solaris ボリュームマネージャー ボリュームを設定するときにこれらのスライスを使用できるようになります。
ドライブのパーティションを再分割する際は、次の条件を満たすことで、metaset(1M) コマンドでドライブのパーティションを再分割できないようにする必要があります。
状態データベースの複製を維持するのに十分な大きさの、シリンダ 0 で始まるスライス 7 (VTOC の場合) またはスライス 6 (EFI の場合) を作成します。Solaris ボリュームマネージャー の管理者ガイドを参照して、使用のバージョンのボリューム管理ソフトウェア用の状態データベース複製のサイズを判定します。
ターゲットスライスの Flag フィールドを wu (読み書き可能、マウント不可) に設定します。読み取り専用には設定しないでください。
ターゲットスライスがドライブ上のほかのスライスとオーバーラップしないでください。
詳細については、format(1M) のマニュアルページを参照してください。
次の手順
md.tab ファイルを使って、ボリュームを定義します。「md.tab ファイルを作成する」に進みます。
クラスタ内の各ノードごとに /etc/lvm/md.tab ファイルを作成します。md.tab ファイルを使用して、作成したディスクセットの Solaris ボリュームマネージャー ボリュームを定義します。
注 - ローカルボリュームを使用している場合は、ローカルボリューム名がディスクセットを構成するために使用されているデバイス ID 名と異なることを確認してください。たとえば、ディスクセットで /dev/did/dsk/d3 というデバイス ID 名が使用されている場合は、ローカルボリュームに /dev/md/dsk/d3 という名前は使用しないでください。この要件は、命名規則 /dev/md/setname/{r}dsk/d# を使用する共有ボリュームには適用されません。
下位デバイス名 (cN tXdY) の代わりに md.tab ファイル内では、完全な DID デバイス名を使用してください。DID デバイス名は、/dev/did/rdsk/dN の形式を取ります。
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 …
注 - サブミラーに使用するドライブにデータがすでに存在している場合は、ボリュームを設定する前にデータのバックアップを作成する必要があります。その後、データをミラーに復元します。
クラスタ環境内のさまざまなノード上のローカルボリューム間での混乱を避けるため、クラスタ全体で各ローカルボリューム名が固有となるような命名規則を使用してください。たとえば、ノード 1 については、d100 から d199 の間で名前を選択します。ノード 2 については、d200 から d299 の間の名前を使用します。
md.tab ファイルを作成する方法の詳細については、Solaris ボリュームマネージャー ドキュメントおよび 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 ファイルは、次のように構築されています。
先頭行では、デバイス d0 をボリューム d10 と d20 のミラーとして定義しています。-m は、このデバイスがミラーデバイスであることを示します。
dg-schost-1/d0 -m dg-schost-1/d0 dg-schost-1/d20
2 行目では、d0 の最初のサブミラーであるボリューム d10 を一方向のストライプとして定義しています。
dg-schost-1/d10 1 1 /dev/did/rdsk/d1s0
3 行目では、d0 の 2 番目のサブミラーであるボリューム d20 を一方向のストライプとして定義しています。
dg-schost-1/d20 1 1 /dev/did/rdsk/d2s0
次の手順
md.tab ファイルで定義したボリュームを起動します。「ボリュームを起動する」に進みます。
この手順を実行して、md.tab ファイルで定義されている Solaris ボリュームマネージャー ボリュームを起動します。
phys-schost# cldevicegroup switch -n node devicegroup
所有権を取得するノードを指定します。
ディスクセット名を指定します。
phys-schost# metainit -s setname -a
ディスクセット名を指定します。
md.tab ファイル内のすべてのボリュームを起動します。
必要に応じて、ドライブに接続できる別のノードから metainit(1M) コマンドを実行します。クラスタ化ペアトポロジでは、すべてのノードがドライブにアクセスできるわけではないため、この手順が必要になります。
phys-schost# metastat -s setname
詳細については、metastat(1M) のマニュアルページを参照してください。
phys-schost# prtvtoc /dev/rdsk/cNtXdYsZ > filename
このファイルをクラスタ外の場所に保存します。ディスク構成を変更する場合は、このコマンドをもう一度実行して、変更した構成をキャプチャします。ディスクに障害が発生し、交換が必要な場合は、この上方を使用してディスクパーティション構成を復元できます。詳細については、prtvtoc(1M) のマニュアルページを参照してください。
クラスタ構成のバックアップを保存しておけば、クラスタ構成の回復がより簡単になります。詳細は、『Oracle Solaris Cluster システム管理』の「クラスタ構成をバックアップする」を参照してください。
例 4-9 md.tab ファイル内のボリュームの起動
次の例では、md.tab ファイルでディスクセット dg-schost-1 で定義されているすべてのボリュームを起動します。
phys-schost# metainit -s dg-schost-1 -a
次の手順
クラスタに正確に 2 つのディスク格納装置と 2 つのノードがある場合は、二重列メディエータを追加します。「二重列メディエータの構成」に進みます。
それ以外の場合は、「クラスタファイルシステムを追加する」に進んでクラスタファイルシステムを作成します。