第 4 章 :各クラスタリングソフトウェア操作概要
4.3.3 NetVault Backup をクラスタ・リソースとして登録
クラスタ・リソースの登録には、CLUSTERPRO X Builderによるスクリプト編集を行います。
NetVaultのサービスをCLUSTERPRO X Builderにより、フェイルオーバグループに登録します。Builderの機能を使用し、
情報ファイルを開いて、クラスタ構成を変更する機能により、既存のリソースを編集します。
※本ガイドでは、NetVaultのサービスの起動と停止を最小限の処理にて行っていますが、詳細な確認を含めた処理を行う には、別途その処理を実行できるスクリプトを作成し、登録することをお勧めします。
Linuxの場合
新規表示されるウィンドウ内の、スクリプトタブを選択し、スクリプトの編集を実行します。GUI上で編集を選択するとあらか じめ決められたテキストエディタ(デフォルトはLinuxの場合vi)が起動され、自由に編集保存ができます。設定後は、後述す るコマンドにより各サーバへ配信する必要があります。
start.shおよびstop.shをそれぞれ編集します。
あらかじめ、Oracle用のフェイル・オーバ設定がスクリプトに対して完了している場合を想定しています。まず、start.shに対 して異常時フェイル・オーバの際に、NetVaultが起動されるよう、編集を行います。次に、stop.shに対して停止するための スクリプト登録をそれぞれ2箇所行います。スクリプト内の詳細は環境によって異なるため都度確認するようにしてください。
スクリプト名:start.sh #! /bin/sh
#***************************************
#* start.sh *
#***************************************
if [ "$CLP_EVENT" = "START" ] then
if [ "$CLP_DISK" = "SUCCESS" ] then
echo "NORMAL1"
# CLUSTERPRO X
su - oracle -c "export ORACLE_SID=oradb; ¥ . /usr/local/bin/oraenv; lsnrctl start listener; ¥ sqlplus /nolog @/mnt/share/admin/sql/startup.sql"
#NetVault
/mnt/share/netvault/etc/startup.sh start if [ "$CLP_SERVER" = "HOME" ] then
echo "NORMAL2"
else
echo "ON_OTHER1"
fi else
echo "ERROR_DISK from START"
fi
elif [ "$CLP_EVENT" = "FAILOVER" ] then
if [ "$CLP_DISK" = "SUCCESS" ] then
echo "FAILOVER1"
# CLUSTERPRO X
su - oracle -c "export ORACLE_SID=oradb; ¥
. /usr/local/bin/oraenv; lsnrctl start listener; ¥ sqlplus /nolog @/mnt/share/admin/sql/startup.sql"
# NetVault
/mnt/share/netvault/etc/startup.sh start if [ "$CLP_SERVER" = "HOME" ] then
echo "FAILOVER2"
else
echo "ON_OTHER2"
fi else
echo "ERROR_DISK from FAILOVER"
fi else
echo "NO_CLP"
fi
echo "EXIT"
exit 0
スクリプト名:stop.sh #! /bin/sh
#***************************************
#* stop.sh *
#***************************************
if [ "$CLP_EVENT" = "START" ] then
if [ "$CLP_DISK" = "SUCCESS" ] then
echo "NORMAL1"
# NetVault
/mnt/share/netvault/etc/startup.sh stop # CLUSTERPRO X
su - oracle -c "ORACLE_SID=oradb; ¥ . /usr/local/bin/oraenv; ¥
sqlplus /nolog @/mnt/share/admin/sql/shutdown.sql; ¥ lsnrctl stop listener"
if [ "$CLP_SERVER" = "HOME" ] then
echo "NORMAL2"
else
echo "ON_OTHER1"
fi else
echo "ERROR_DISK from START"
fi
elif [ "$CLP_EVENT" = "FAILOVER" ] then
if [ "$CLP_DISK" = "SUCCESS" ]
then
echo "FAILOVER1"
# NetVault
/mnt/share/netvault/etc/startup.sh stop # CLUSTERPRO X
su - oracle -c "ORACLE_SID=oradb; ¥ . /usr/local/bin/oraenv; ¥
sqlplus /nolog @/mnt/share/admin/sql/shutdown.sql; ¥ lsnrctl stop listener"
if [ "$CLP_SERVER" = "HOME" ] then
echo "FAILOVER2"
else
echo "ON_OTHER2"
fi else
echo "ERROR_DISK from FAILOVER"
fi else
echo "NO_CLP"
fi
echo "EXIT"
exit 0
本スクリプトはサンプルスクリプトとして提供しておりますがバックボーン・ソフトウエア株式会社が保証しているものではご ざいません。ご利用頂く場合には自己責任でご利用頂けますようお願い致します。
修正したスクリプトを各サーバに反映させます。詳細はCLUSTERPRO Xのドキュメントをご参照ください。設定ファイルが 保存されたディレクトリを指定し、CLIからコマンドを実行します。ここでは、server1で作業しています。
[root@server1 ~]# clpcl -t -a
[root@server1 ~]# clpcfctrl --push -l -x /root/CLUSTERPRO_X/configuration Need to shutdown system and reboot
please shutdown system after push. (hit return) :
file delivery to server 10.0.0.1 success.
file delivery to server 10.0.0.2 success.
Command succeeded.(code:0)
[root@server1 ~]# clpcl -s -a
Start server1 : Success
Start server2 : Success
clpcl -t -a クラスタ停止
clpcfctrl --push -l -x ディレクトリ (Linuxで対象ディレクトリの構成ファイルを配布) clpcl -s -a クラスタ起動
Windowsの場合
start.batおよびstop.batをそれぞれ編集します。
あらかじめ、Oracle用のフェイル・オーバ設定がスクリプトに対して完了している場合を想定しています。まず、start.batに対 して異常時フェイル・オーバの際に、NetVaultが起動されるよう、編集を行います。次に、stop.batに対して停止するための スクリプト登録をそれぞれ2箇所行います。スクリプト内の詳細は環境によって異なるため都度確認するようにしてください。
スクリプト名:start.bat REM *************************
REM * START.BAT * REM *************************
REM START CALL
ARMLOAD OraServiceID_1 /S /M OracleServiceSID1
rem ARMLOAD OraListenerID_1 /S /M OracleOraHome92TNSListener set ORACLE_SID=SID1
sqlplus /nolog @Z:¥oradata¥sid1¥startup.sql net start "NetVault Process Manager"
REM END CALL
スクリプト名:stop.bat REM *************************
REM * STOP.BAT * REM *************************
REM START CALL
net stop "NetVault Process Manager"
set ORACLE_SID=SID1
sqlplus /nolog @Z:¥oradata¥sid1¥shutdown.sql rem ARMKILL OraListenerID_1
ARMKILL OraServiceID_1 REM END CALL
本スクリプトはサンプルスクリプトとして提供しておりますがバックボーン・ソフトウエア株式会社が保証しているものではご ざいません。ご利用頂く場合には自己責任でご利用頂けますようお願い致します。