スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

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

26.9.5 サービスの作成と登録

ここでは,Sun Clusterのサービス制御方式の概要と,Sun Cluster制御スクリプトを使用してHiRDBをSun Cluster環境にデータサービスとして登録する方法について説明します。

<この項の構成>
(1) Sun Clusterのサービス制御の仕様
(2) メソッド
(3) HiRDBデータサービス制御スクリプト(Sun Cluster制御スクリプト)
(4) HiRDBデータサービスの登録

(1) Sun Clusterのサービス制御の仕様

HA-APIを使用して,Sun Cluster環境にHiRDBをデータサービスとして登録します。APIにはデータサービス登録(hareg),クラスタ状態確認(haget)などがあります。詳細については,Sun Clusterのマニュアルを参照してください。

(2) メソッド

メソッドとは,リコンフィグレーションの各ステップで発生するデータサービスに対する呼び出しのことです。メソッドには次のものがあります。

HiRDBデータサービスには,起動(START_NET)及び停止(STOP_NET)メソッドが発生したときに呼び出される制御スクリプトを登録します。

(3) HiRDBデータサービス制御スクリプトSun Cluster制御スクリプト

Sun Cluster環境のデータサービスとしてHiRDBの環境設定をするには,Sun Cluster HA-APIを使用した実行制御を行う必要があります。ここでは,Sun Clusterからのメソッド呼び出しを制御するSun Cluster制御スクリプトの作成例を説明します。作成する各制御スクリプトファイル名は次に示す名称とします。

●START_NETメソッドで実行されるスクリプト

 
#!/bin/sh
## *********************************************************************
##  HiRDB START_NET Control Script ( for Sun Cluster)
## *********************************************************************
PATH=/sbin:/usr/bin:/usr/sbin:/etc:/bin:/opt/SUNWcluster/bin:/HiRDB_S1/bin
export PATH
PDDIR=/HiRDB_S1
PDCONFPATH=/HiRDB_S1/conf
LD_LIBRARY_PATH=/HiRDB_S1/lib
export PDDIR PDCONFPATH LD_LIBRARY_PATH
 
if [ "$1" != "sc-lnode0" ]
then
   exit 0
fi
 
$PDDIR/bin/pdstart
 

●STOP_NETメソッドで実行されるスクリプト

 
#!/bin/sh
## *********************************************************************
##  HiRDB STOP_NET Control Script ( for Sun Cluster)
## *********************************************************************
PATH=/sbin:/usr/bin:/usr/sbin:/etc:/bin:/opt/SUNWcluster/bin:/HiRDB_S1/bin
export PATH
PDDIR=/HiRDB_S1
PDCONFPATH=/HiRDB_S1/conf
LD_LIBRARY_PATH=/HiRDB_S1/lib
 
export PDDIR PDCONFPATH LD_LIBRARY_PATH
 
if [ "$2" != "sc-lnode0" ]
then
   exit 0
fi
 
MASTER_HOST=`haget -f master -h sc-lnode0`
if [ $MASTER_HOST != `hostname` ]
then
    exit 0
fi
 
$PDDIR/bin/pdstop -f -q  ※
 

上記で作成した各制御スクリプトは,HiRDBシステム定義ファイルと同じディレクトリ下($PDDIR/conf)に格納します。マスタノード以外のノードについても同一のファイルを同一ディレクトリ下に格納しておく必要があります。

注※
このコマンドを実行すると,共有ディスク上のRDエリアが障害閉塞することがあります。この場合,データベース回復ユティリティで共有ディスク上のRDエリアを回復してください。

(4) HiRDBデータサービスの登録

Sun ClusterのharegコマンドでHiRDBデータサービス"hirdb00"を論理ホストに登録します。

 
hareg -r hirdb00 -b "/HiRDB_S1/conf"
  -m START_NET="hirdb00-start_net.sh" -t START_NET=1800
  -m STOP_NET="hirdb00-stop_net.sh"   -t STOP_NET=300
  -h sc-lnode0 -a 1
 

〔説明〕
-r:データサービス名を指定します。クラスタ内で一意の名称を指定します。
-b:制御スクリプトファイルを格納するディレクトリを指定します。
-m:START_NET="HiRDB起動制御スクリプトファイル名"を指定します。
-t:START_NET=1800
HiRDB起動制御スクリプトの動作打ち切り時間を秒単位で指定します。指定時間は1800秒以上を指定してください。
-m:STOP_NET="HiRDB停止制御スクリプトファイル名"を指定します。
-t:STOP_NET=300
HiRDB停止制御スクリプトの動作打ち切り時間を秒単位で指定します。指定時間は300秒を目安に指定してください。
-h:論理ホスト名称を指定してください。
-a:HA-APIバージョンを指定します。1を指定してください。

論理ホストを停止した状態でデータサービスを登録又は削除してください。Sun Clusterでは,論理ホストの起動又は停止と,データサービスの起動又は停止を独立して制御できます。このため,論理ホストでサービス稼働中に別サービスを追加する運用ができます。

しかし,サービス稼働中に構成を変更すると,クラスタ構成変更による問題,又は追加したサービスの問題などでフェイルオーバが発生する可能性があります。したがって,サービスを安定動作させるためにはこのような運用をしないでください。