ノンストップデータベース HiRDB Version 9 システム運用ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

26.2.9 ClusterPerfectに関する準備

クラスタソフトウェアにClusterPerfectを使用している場合にこの項をお読みください。

なお,ClusterPerfectの環境設定方法の詳細については,ClusterPerfectのマニュアルを参照してください。

<この項の構成>
(1) 系切り替えができないシステム構成
(2) ネットワーク構成例
(3) シナリオの準備
(4) HiRDB用のシナリオ設定で使用するシェル

(1) 系切り替えができないシステム構成

ClusterPerfectを使用した系切り替え機能には次に示す前提条件があります。

(a) 系切り替えができるシステム構成

系切り替えができるシステム構成を次の図に示します。

図26-41 系切り替えができるシステム構成

[図データ]

〔説明〕
共有ディスク装置(CR80)にある二つファイバーケーブルに,各サーバマシンのファイバーケーブルを接続しています。このシステム構成では排他制御が正しく動作します。
(b) 系切り替えができないシステム構成

系切り替えができないシステム構成を次の図に示します。

図26-42 系切り替えができないシステム構成(その1)

[図データ]

〔説明〕
CR80とサーバマシンの間に光HUBを設置すると,サーバマシン1がリザーブ状態でも,サーバマシン2を再起動するとリザーブが外れてしまいます。これはサーバマシン2が生成するLIPがサーバマシン1に影響しているためです。

図26-43 系切り替えができないシステム構成(その2)

[図データ]

〔説明〕
  • HUBを利用しているため,システム再起動時に生成されるLIPによって排他制御が外れてしまい正しく動作しません。
  • SWITCHの場合はLIPがそれぞれ独立するため,正しく動作します。
  • Fiber-HUBを利用する場合は,LIPの影響によって排他制御に不具合が発生します。
    注意
    LIPはloopに接続している機器すべてに対して有効になります。したがって,CR80を2台接続している場合や,複数のサーバマシンとCR80がHUB経由となっている場合は,排他制御が正しく行われないことがあります。

(2) ネットワーク構成例

(a) IPアドレスを引き継ぐ場合

IPアドレスを引き継ぐ場合は,論理IPアドレスと論理IPアドレスに対応するホスト名(IPタイプリソースに設定するIPアドレスのホスト名)を設定します。また,この論理IPアドレスは系切り替え機能によって複数のサーバマシン上で再配置できるように設定してください。IPアドレスを引き継ぐ場合のネットワーク構成例を次の図に示します。

図26-44 IPアドレスを引き継ぐ場合のネットワーク構成例(ClusterPerfect使用時)

[図データ]

〔説明〕
  • 論理IPアドレス(Service IP:192.168.1.1.)と論理IPアドレスに対応するホスト名(logicalhost)を設定します。
  • サーバマシン1とサーバマシン2にはHiRDBがインストールされています。
  • MMCのマシンにはサーバマシン1とサーバマシン2を監視するClusterPerfectがインストールされています。
  • /mirror1はマウントポイントです。
  • 共有ディスク装置(/mirror1)にはHiRDBのシステムファイルを作成します。
(b) IPアドレスを引き継がない場合

IPアドレスを引き継がない場合は,現用系と予備系とで異なるIPアドレス及びホスト名を設定します。したがって,HiRDBのシステム共通定義のpdunit -cオペランドに予備系のホスト名を指定する必要があります。IPアドレスを引き継がない場合のネットワーク構成例を次の図に示します。

図26-45 IPアドレスを引き継がない場合のネットワーク構成例(ClusterPerfect使用時)

[図データ]

〔説明〕
  • サーバマシン1とサーバマシン2にはHiRDBがインストールされています。
  • MMCのマシンにはサーバマシン1とサーバマシン2を監視するClusterPerfectがインストールされています。
  • /mirror1はマウントポイントです。
  • 共有ディスク装置(/mirror1)にはHiRDBのシステムファイルを作成します。

(3) シナリオの準備

ClusterPerfectのDNCWARE設計支援システムで,異常停止,開始,停止,及びテイクオーバのシナリオを作成して登録します。シナリオの作成及び登録方法については,ClusterPerfectのマニュアルを参照してください。ここでは,シナリオの内容概略について説明します。

(a) 異常停止のシナリオの内容

異常停止のシナリオの内容概略を次に示します。

1:プロセス4(enddb)非同期呼び出し
2:ディスク1(CR80)切り離し
3:サービスIP1(serviceIP)切り離し
(b) 開始のシナリオの内容

開始のシナリオの内容概略を次に示します。

1:サービスIP1(serviceIP)組み込み
2:ディスク1(CR80) 組み込み
3:プロセス3(startdb)非同期呼び出し
(c) 停止のシナリオの内容

停止のシナリオの内容概略を次に示します。

1:プロセス4(enddb)非同期呼び出し
2:ディスク1(CR80)切り離し
3:サービスIP1(serviceIP)切り離し
(d) テイクオーバのシナリオの内容

テイクオーバのシナリオの内容概略を次に示します。

1:サービスIP1(serviceIP)組み込み
2:プロセス10(mount1)非同期呼び出し
3:プロセス3(startdb)非同期呼び出し

(4) HiRDB用のシナリオ設定で使用するシェル

HiRDB用のシナリオ設定で使用するシェルの例について説明します。

(a) HiRDB/シングルサーバの場合

HiRDB/シングルサーバ用のシナリオ設定で使用するシェルの例を次に示します。

●開始

#!/bin/sh
PDDIR=/hirdb_x
PATH=/bin:/usr/bin:/usr/ucb:$PDDIR/bin
PDCONFPATH=$PDDIR/conf
SHLIB_PATH=$PDDIR/lib
LD_LIBRARY_PATH=$PDDIR/lib
export PATH PDDIR PDCONFPATH SHLIB_PATH LD_LIBRARY_PATH
# single
$PDDIR/bin/pdstart
exit 0

●終了

#!/bin/sh
PDDIR=/hirdb_x
PATH=/bin:/usr/bin:/usr/ucb:$PDDIR/bin
PDCONFPATH=$PDDIR/conf
SHLIB_PATH=$PDDIR/lib
LD_LIBRARY_PATH=$PDDIR/lib
export PATH PDDIR PDCONFPATH SHLIB_PATH LD_LIBRARY_PATH
# single
$PDDIR/bin/pdstop -f
exit 0

●共有ディスクのマウント

#!/bin/sh
/usr/local/DNCWARE/bin/genresv /dev/sdb
sleep 10
/usr/local/DNCWARE/bin/hadkresv /dev/sdb
mount /mirror1
(b) HiRDB/パラレルサーバの場合

HiRDB/パラレルサーバ用のシナリオ設定で使用するシェルの例を次に示します。

●開始

#!/bin/sh
PDDIR=/hirdb_x
PATH=/bin:/usr/bin:/usr/ucb:$PDDIR/bin
PDCONFPATH=$PDDIR/conf
SHLIB_PATH=$PDDIR/lib
LD_LIBRARY_PATH=$PDDIR/lib
export PATH PDDIR PDCONFPATH SHLIB_PATH LD_LIBRARY_PATH
# parallel
$PDDIR/bin/pdstart -q
exit 0

●終了

#!/bin/sh
PDDIR=/hirdb_x
PATH=/bin:/usr/bin:/usr/ucb:$PDDIR/bin
PDCONFPATH=$PDDIR/conf
SHLIB_PATH=$PDDIR/lib
LD_LIBRARY_PATH=$PDDIR/lib
export PATH PDDIR PDCONFPATH SHLIB_PATH LD_LIBRARY_PATH
# parallel
$PDDIR/bin/pdstop -z
exit 0

●共有ディスクのマウント

#!/bin/sh
/usr/local/DNCWARE/bin/genresv /dev/sdb
sleep 10
/usr/local/DNCWARE/bin/hadkresv /dev/sdb
mount /mirror1