Jump to content 日本-日本語

製品  >  ソフトウェア  >  HP-UX   >  Knowledge-on-Demand

HP Serviceguard クラスター構築手順

HP-UX/Integrityサーバー お問い合せ
コンテンツに進む

7. 共有ディスク上のファイルシステムの作成

共有ディスクは、論理ボリュームとして構成される必要があります。その際利用できる形態として、HP LVMとVERITAS VxVMの2種類があります。ここではHP LVMを使用して共有ボリュームを作成することにします。具体的には、LVMを使用して共有ディスク上に論理ボリュームを作成し、その上にファイルシステムを作成するという作業を行います。

先に4.1節で、各ノードから共有ディスクに接続されているHBAが2枚あるのでioscanによりディスクが2重に見えていることを述べました。今回のServiceguardクラスターでは、これら 2 系統の共有ディスクに対する接続をHP PV-link機能により、プライマリ、スタンバイとして設定します。これにより、通常はプライマリの接続を使用してI/Oを行い、プライマリの接続に故障が発生してI/Oを行うことが不可能になった場合には、自動的にスタンバイ側の接続を使用してI/Oが継続されるようになります。

共有ディスク上にボリュームグループを作成するためには、大きくわけて以下の3段階の作業が必要になります。

  1. PV-link によるディスクアレイ上のボリュームグループの作成
  2. 他のノードへのボリュームグループ情報の配布
  3. 追加ボリュームグループの作成
HP Serviceguard クラスター構築手順
はじめに
1.システム構成
2.OSのインストール
3.OSボリュームのミラー化
4.データディスクの設定
5.Serviceguard クラスターの構築
6.ネットワークタイムプロトコルの使用
7.共有ディスク上のファイルシステムの作成
8.クラスターの構成
9.パッケージの作成
10.クラスターの管理
11.リソースの場所

7.1. PV-linkによるディスクアレイ上のボリュームグループの作成

共有ディスクアレイ上の大容量記憶装置を使用するボリュームグループを構成している場合は、各ノードから冗長I/Oチャネルを使用して、アレイ上の別々のポートに接続する必要があります。このようにすると、アレイ上に定義したLUNまたは論理ディスクへの代替リンク(PV-link)を定義できます。

以下の例では、LVM コマンドを使用して代替リンクを構成します。この例では、次のようなディスク構成を想定しています。

0/6/0/0.1.0.42.0.0.0 /dev/dsk/c4t0d0  /* I/O Channel 4 (0/6/0) SCSI address 0 LUN 0 */
0/6/0/0.1.0.42.0.0.1 /dev/dsk/c4t0d1  /* I/O Channel 4 (0/6/0) SCSI address 0 LUN 1 */
0/6/0/0.1.0.42.0.0.2 /dev/dsk/c4t0d2  /* I/O Channel 4 (0/6/0) SCSI address 0 LUN 2 */
0/6/0/0.1.0.42.0.0.3 /dev/dsk/c4t0d3  /* I/O Channel 4 (0/6/0) SCSI address 0 LUN 3 */

0/6/2/0.1.0.39.0.0.0 /dev/dsk/c6t0d0  /* I/O Channel 6 (0/6/2) SCSI address 0 LUN 0 */
0/6/2/0.1.0.39.0.0.1 /dev/dsk/c6t0d1  /* I/O Channel 6 (0/6/2) SCSI address 0 LUN 1 */
0/6/2/0.1.0.39.0.0.2 /dev/dsk/c6t0d2  /* I/O Channel 6 (0/6/2) SCSI address 0 LUN 2 */
0/6/2/0.1.0.39.0.0.3 /dev/dsk/c6t0d3  /* I/O Channel 5 (0/6/2) SCSI address 0 LUN 3 */

このように構成されたディスクアレイに対して、ioscanコマンドを実行すると、同じLUN(論理ディスク: この場合0番)に対して以下のデバイスファイルが表示されます。

/dev/dsk/c4t0d0
/dev/dsk/c6t0d0

このLUNをvgdataという新しく作成するボリュームグループ配下のlvol1という論理ボリュームとして構成します。手順は以下のとおりです。作業は、クラスター内のノードの1つの上で行います。ここでは、クラスターとして構成する2つのノード、fred、gingerのうちfredの上で作業を行うものとします。

  1. まず/dev/vgdataというディレクトリを作成します。

    # mkdir /dev/vgdata

  2. 次に、/dev/vgdataディレクトリにgroupという制御ファイルを作成します。

    # mknod /dev/vgdata/group c 64 0xhh0000

    メジャー番号は常に64で、16進のマイナー番号は以下の形式になります。

    0xhh0000

    hhは、作成するボリュームグループに固有でなくてはなりません。すでに構成されているボリュームグループの番号のより後ろにあり、システムで次に使用できる番号を16進にして使用します。構成済みボリュームグループのリストを表示するには、次のコマンドを使用します。

    # ls -l /dev/*/group

  3. LUNに関連したデバイスファイルのうちの1つに対してpvcreateコマンドを使用してLVMの物理ボリュームとしてLUNを定義します。

    # pvcreate /dev/rdsk/c4t0d0

    これでうまくいかない場合には -f オプション (force オプション) を指定して pvcreate を実行してみてください。LUNに関連したデバイスファイル(/dev/dsk/c4t0d0、/dev/dsk/c6t0d0)のうちの1つに対してのみこの処理を行う必要があります。

  4. 次のコマンドを使ってボリュームグループを作成し、物理ボリュームを追加します。

    # vgcreate /dev/vgdata /dev/dsk/c4t0d0
    # vgextend /dev/vgdata /dev/dsk/c6t0d0
    

    vgdisplay -v コマンドを入力すると、一次リンクと代替リンクが表示されます。この時点でLVMは、/dev/dsk/c4t0d0で示されるI/Oチャネルを一次リンクとして認識しています。一次リンクに障害が発生すると、LVMは自動的にリンクを/dev/dsk/c6t0d0で示される代替I/Oチャネルに切り替えます。

論理ボリュームを作成する
論理ボリュームを作成するには、次のコマンドを使用します。(例では/dev/vgdataの論理ボリューム)

# lvcreate -L 120 /dev/vgdata

このコマンドは、lvol1という120MBの論理ボリュームを作成します。このボリューム名は、コマンドでボリューム名が省略されたときのデフォルトのボリューム名です。

ファイルシステムを作成する
上で作成した論理ボリューム/dev/vgdata/lvol1をファイルシステムとして使用する場合は、この論理ボリューム上にファイルシステムを作成します。そして、作成したファイルシステムをマウントするディレクトリを定義します。手順は以下のとおりです。
  1. 新しく作成した論理ボリューム上に、ファイルシステムを作成します。

    # newfs -F vxfs /dev/vgdata/rlvol1

    ここでは、論理ボリュームの raw デバイスファイルを使用しています。

  2. ディスクをマウントするディレクトリを作成します。
    ここでは/mnt1というディレクトリ名にしていますが、環境に合わせて適宜変更してください。

    # mkdir /mnt1

  3. ここまでの作業を確認するために、ディスクをマウントします。

    # mount /dev/vgdata/lvol1 /mnt1

    mountコマンドでは、論理ボリュームのブロック型デバイスファイルを使用しています。

  4. 以下のコマンドを使用して、構成を確認します。

    # vgdisplay -v /dev/vgdata

7.2.他のノードへのボリュームグループの配布

クラスターデータ用のボリュームグループを作成した後、作成したボリュームグループを他のクラスター内のノードからもアクティブ化して使用できるように、ボリュームグループを配布します。

ボリュームグループの非アクティブ化
ボリュームグループを作成した時点で、そのボリュームグループは、構成ノード(fred)上でアクティブになっています。もう一方のノード(ginger)で使用するためにボリュームグループをセットアップする前に、まずボリュームグループにあるファイルシステムのすべてのマウントを外し、それから非アクティブ化しなければなりません。なお、クラスターの実行時には、ボリュームグループのアクティブ化とファイルシステムのウントは、パッケージコントロールスクリプトで行われます。(パッケージコントロールスクリプトについては後述します。)
前項の例に続き、fred 上で次のように実行します。

# umount /mnt1
# vgchange -a n /dev/vgdata

LVMコマンドを使用してボリュームグループを配布する
同じボリュームグループを他のクラスターノード上にセットアップするには、次のコマンドを使用します。この例のコマンドでは、gingerに新しいボリュームグループをセットアップして、fredで作成した物理ボリュームを使用できるようにします。

ginger上にボリュームグループをセットアップするには、以下の手順に従います。
  1. fred上で、指定したファイルにボリュームグループのマッピングのコピーを作成します。これによりfred上に/tmp/vgdata.mapというファイルが作成されます。このファイルをマップファイルと呼びます。

    # vgexport -p -s -m /tmp/vgdata.map /dev/vgdata

  2. fred上で、マップファイルをgingerへコピーします。

    # rcp /tmp/vgdata.map ginger:/tmp/vgdata.map

  3. ginger 上で、ボリュームグループのディレクトリを作成します。

    # mkdir /dev/vgdata

  4. ginger 上で、/dev/vgdataディレクトリにgroupという制御ファイルを作成します。

    # mknod /dev/vgdata/group c 64 0xhh0000

    メジャー番号は常に64で、16進のマイナー番号は次の形式になります。

    0xhh0000

    hhは、生成するボリュームグループに固有でなくてはなりません。可能な場合は、fred上のgroupファイルと同じ番号を使用してください。ボリュームグループのリストを表示するには、次のコマンドを使用します。

    # ls -l /dev/*/group

  5. マップファイルを使用して、ノードfredからボリュームグループのデータをインポートします。そのためにはノードginger上で、次のように入力します。

    # vgimport -s -m /tmp/vgdata.map /dev/vgdata

    ginger上のディスクデバイス名は、fred上のディスクデバイス名と異なる場合があるので注意します。クラスター内で物理ボリューム名に矛盾がないことを確かめてください。

    # strings /etc/lvmtab

  6. fredのボリュームグループを非アクティブ化したことを確認してから、gingerのボリュームグループを使用可能にします。

    # vgchange -a y /dev/vgdata

  7. ディスクをマウントするディレクトリを作成します。

    # mkdir /mnt1

  8. gingerのボリュームグループをマウントして、確認します。

    # mount /dev/vgdata/lvol1 /mnt1

  9. gingerのボリュームグループのマウントを外します。

    # umount /mnt1

  10. gingerのボリュームグループを非アクティブ化します。

    # vgchange -a n /dev/vgdata

7.3. 追加ボリュームグループの作成

前項では、Serviceguardで使用するボリュームグループと論理ボリュームを作成する一般的な方法について説明しました。さらにボリュームグループを追加するには、ボリュームグループ名、論理ボリューム名、物理ボリューム名を他の名前に置き換えて同様の手順を繰り返し、必要なだけボリュームグループを作成してください。ただしディスクデバイス名には注意が必要です。例えば、あるノード上では/dev/dsk/c0t2d0という名前のディスクデバイスが、他のノード上でも同じ名前であるとは限りません。

トップへ戻る 前のページへ 次のページへ

お問い合わせ

ご購入前のお問い合わせ


ご購入後のお問い合わせ

HPEサポートセンター
製品の標準保証でご利用いただける無償のサービスです。

ショールーム

ショールーム 導入をご検討のお客様へ
業務アプリケーションの継続・標準化・開発性とシステム担当者様、システム開発者様が抱える悩み・疑問に対する解決策実体験して頂けます。
印刷用画面へ
プライバシー ご利用条件・免責事項