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

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

26.5.3 HiRDBシステム定義の作成

<この項の構成>
(1) スタンバイ型系切り替え機能の場合
(2) 1:1スタンバイレス型系切り替え機能の場合
(3) 影響分散スタンバイレス型系切り替え機能の場合
(4) 系切り替え機能に関するHiRDBシステム定義のオペランド
(5) 切り替え先の指定(影響分散スタンバイレス型系切り替え機能限定)
(6) 系切り替え後のサーバプロセスの割り当て

(1) スタンバイ型系切り替え機能の場合

現用系,予備系とも同じHiRDBシステム定義を使用します。現用系のHiRDBシステム定義を作成した後に,そのHiRDBシステム定義を予備系にコピーしてください。HiRDBシステム定義ファイルの構成例を図26-35及び図26-36に示します。

図26-35 スタンバイ型系切り替え機能使用時のHiRDBシステム定義ファイルの構成例(HiRDB/シングルサーバの場合)

[図データ]

図26-36 スタンバイ型系切り替え機能使用時のHiRDBシステム定義ファイルの構成例(HiRDB/パラレルサーバの場合)

[図データ]

(2) 1:1スタンバイレス型系切り替え機能の場合

正規BESユニットのユニット制御情報定義ファイル及びバックエンドサーバ定義ファイルを代替BESユニットにコピーします。そのとき,ユニット制御情報定義ファイルの名称を次に示すように変更してください。

 pdutsys.正規BESユニットのユニット識別子

この定義ファイルに指定したオペランドのうち,代替中に設定値が有効になるオペランドを次に示します。次に示すオペランド以外は代替BESユニットのユニット制御情報定義ファイルに設定したオペランドの値が有効になります。

スタンバイレス型系切り替え機能使用時のHiRDBシステム定義ファイルの構成例(相互代替構成の場合)を次の図に示します。

図26-37 スタンバイレス型系切り替え機能使用時のHiRDBシステム定義ファイルの構成例(相互代替構成の場合)

[図データ]

〔説明〕
  • 正規BESユニット(BES1)のユニット制御情報定義ファイル及びバックエンドサーバ定義ファイルを代替BESユニット(BES2)にコピーします。そのとき,ユニット制御情報定義ファイルの名称をpdutsys.UNT1に変更します。
  • 正規BESユニット(BES2)のユニット制御情報定義ファイル及びバックエンドサーバ定義ファイルを代替BESユニット(BES1)にコピーします。そのとき,ユニット制御情報定義ファイルの名称をpdutsys.UNT2に変更します。

(3) 影響分散スタンバイレス型系切り替え機能の場合

影響分散スタンバイレス型系切り替え使用時のシステム定義ファイルの運用方法を次の表に示します。

表26-13 影響分散スタンバイレス型系切り替え使用時のシステム定義ファイルの運用方法

定義種別 定義ファイルの運用方法
システム共通定義 システム内全ユニットにファイルをコピーします。
バックエンドサーバ定義のデフォルト値として設定するパラメタは,システム共通定義に記述してください。
ユニット制御情報定義 次のオペランド(システム共通定義に記述できないオペランド)だけを記述してください。
  • pd_aud_file_name
  • pd_down_watch_proc
  • pd_unit_id
  • pd_hostname
  • pd_ha_unit
  • pd_rpl_hdepath
  • pd_ha_restart_failure
  • pd_ha_acttype
  • pd_ha_server_process_standby
  • pd_ha_agent
  • pd_ha_max_act_guest_servers
  • pd_ha_max_server_process
  • pd_ha_resource_act_wait_time
  • pd_ha_process_count
  • pd_ipc_conn_nblock_time
  • pd_lck_deadlock_check
  • pd_lck_deadlock_check_interval
  • pd_rpc_trace_name
  • pd_registered_port
  • pd_service_port
  • pd_syssts_file_name_1〜7
  • pd_syssts_subfile_name_1〜7
  • pd_syssts_initial_error
  • pd_syssts_last_active_file
  • pd_syssts_last_active_subfile
  • pd_syssts_last_active_side
  • pd_syssts_last_active_side_sub
  • pd_syssts_singleoperation
  • pd_tmp_directory
上記以外のオペランドはシステム共通定義,又はバックエンドサーバ定義に記述してください。上記以外のオペランドを記述した場合は,エラーとなります(メッセージKFPS05618-Eを出力します)。
サーバ共通定義 HAグループ内全ユニットにファイルをコピーします。
バックエンドサーバ定義 HAグループ内全ユニットにファイルをコピーします。

注※
同一サーバマシンに複数のユニットを配置する場合,このオペランドには,ユニットごとに異なる値を指定してください。

(4) 系切り替え機能に関するHiRDBシステム定義のオペランド

ここでは,系切り替え機能に関するオペランドについて説明します。系切り替え機能に関するHiRDBシステム定義のオペランドを次の表に示します。

表26-14 系切り替え機能に関するHiRDBシステム定義のオペランド

オペランド名 説明及び注意事項
pd_ha 系切り替え機能を使用する場合に指定します。
pd_ha_ipaddr_inherit IPアドレスを引き継ぐかどうかを指定します。マルチスタンバイ構成を適用する場合は,Yを指定してください。高速系切り替え機能を適用するユニットにはNを指定してください。スタンバイレス型系切り替え機能を適用するユニットはこのオペランドを省略してください。
Y:IPアドレスを引き継ぎます。
N:IPアドレスを引き継ぎません。
pd_ha_unit 系切り替え機能を適用しないユニットがある場合にnouseを指定します。回復不要FESユニットにはnouseを指定してください。
pd_ha_acttype 系切り替え機能をモニタモードで運用するか,サーバモードで運用するかを指定します。Sun Cluster,HACMP,又はClusterPerfectを使用した系切り替え機能の場合はサーバモードを使用できません。モニタモードでの運用となります。
monitor:系切り替え機能をモニタモードで運用します。
server:系切り替え機能をサーバモードで運用します。
pd_ha_restart_failure このオペランドはモニタモードの場合に指定できます。サーバモードの場合にこのオペランドを指定しても無効になります。HiRDBの再開始に失敗したときに実行するコマンドを指定します。
pd_ha_server_process_standby ユーザサーバホットスタンバイを使用するかどうかを指定します。
Y:ユーザサーバホットスタンバイを使用します。
N:ユーザサーバホットスタンバイを使用しません。
pd_ha_agent 高速系切り替え機能,1:1スタンバイレス型系切り替え機能,又は影響分散スタンバイレス型系切り替え機能を使用する場合に指定します。
standbyunit:高速系切り替え機能を使用します。
server:1:1スタンバイレス型系切り替え機能を使用します。
activeunits:影響分散スタンバイレス型系切り替え機能を使用します。
pd_ha_transaction
pd_ha_trn_queuing_wait_time
pd_ha_trn_restart_retry_time

  • トランザクションキューイング機能を使用する場合に指定します。
  • pd_ha_transactionオペランドにqueuingを指定した場合,系の切り替え中に最大同時接続数(pd_max_usersオペランドの値)を超えたときに,HiRDBサーバへの接続処理をpd_ha_trn_queuing_wait_time+pd_ha_trn_restart_retry_timeの時間だけHiRDBクライアントでリトライします。
pd_ha_switch_timeout このオペランドはサーバモードの場合に指定できます。モニタモードの場合にこのオペランドを指定しても無効になります。
系切り替え時のHiRDB(HiRDB/パラレルサーバの場合はユニット)の内部停止処理がサーバ障害監視時間を超えた場合に,HiRDBの内部停止処理を待たないで系を切り替えるかどうかを指定します。ここでいうサーバ障害監視時間とは,HAモニタ又はHitachi HA Toolkit Extensionのpatrolオペランドに指定した時間のことです。
HAモニタのpatrolオペランドについては,マニュアル「高信頼化システム監視機能 HAモニタ」を参照してください。Hitachi HA Toolkit Extensionのpatrolオペランドについては,マニュアル「Hitachi HA Toolkit」を参照してください。
Y:系切り替え時のHiRDBの内部停止処理がサーバ障害監視時間を超えた場合,HiRDBの内部停止処理を待たないで系を切り替えます。このとき,HiRDBのスローダウンとして系を切り替えます。
N:系切り替え時のHiRDBの内部停止処理が終わるまで系を切り替えません。
pd_ha_prc_cleanup_check サーバプロセスが終了するまで系の切り替え処理を待ち合わせるかどうかを指定します。詳細については,「26.5.2(2)共有ディスクのアクセス制御」を参照してください。
pd_mode_conf HiRDB(ユニット)の開始方法に関するオペランドです。指定値の目安を次に示します。
モニタモードの場合はMANUAL1を指定してください。
サーバモードの場合は次のように指定してください。
  • HAモニタ又はHitachi HA Toolkit Extensionのservers定義のswtichtypeオペランドにswitchを指定した場合は,MANUAL2を指定してください。
  • HAモニタ又はHitachi HA Toolkit Extensionのservers定義のswtichtypeオペランドにrestart又はmanualを指定した場合は,MANUAL1を指定してください。
pd_hostname 現用系の標準ホスト名を指定します。スタンバイレス型系切り替え機能の場合はユニットの標準ホスト名を指定します(系切り替え機能を使用しない場合と同じです)。
pdunit -x 現用系のホスト名を指定します。マルチスタンバイ構成の場合は,IPアドレスを引き継ぐホスト名を指定してください。スタンバイレス型系切り替え機能の場合はユニットのホスト名を指定します(系切り替え機能を使用しない場合と同じです)。
-u ユニット識別子を指定します。
-d HiRDB運用ディレクトリ名を指定します。マルチスタンバイ構成の場合は,現用系とすべての予備系で同じディレクトリ名を指定してください。1:1スタンバイレス型系切り替え機能の場合は,正規BESユニットと代替BESユニットで同じディレクトリ名を指定してください。影響分散スタンバイレス型系切り替え機能の場合は,HAグループ内の全ユニットで同じディレクトリ名を指定してください。
-c 予備系のホスト名を指定します。IPアドレスを引き継がない場合に指定します。スタンバイレス型系切り替え機能の場合はこのオプションを省略してください。
-p HiRDBのポート番号を指定します。1:1スタンバイレス型系切り替え機能の場合,正規BESユニットと代替BESユニットのポート番号※1は同じ番号を指定してください。影響分散スタンバイレス型系切り替え機能の場合は,HAグループ内の全ユニットで同じポート番号を指定してください。
-s スケジューラのポート番号を指定します。1:1スタンバイレス型系切り替え機能の場合,正規BESユニットと代替BESユニットのポート番号※2は同じ番号を指定してください。影響分散スタンバイレス型系切り替え機能の場合は,HAグループ内の全ユニットで同じポート番号を指定してください。
-t トランザクションサーバのポート番号を指定します。1:1スタンバイレス型系切り替え機能の場合,正規BESユニットと代替BESユニットのポート番号※3は同じ番号を指定してください。影響分散スタンバイレス型系切り替え機能の場合は,HAグループ内の全ユニットで同じポート番号を指定してください。
pdstart -c 代替BES名を指定します。1:1スタンバイレス型系切り替え機能の場合に指定します。
-g 影響分散スタンバイレス型系切り替え機能を使用する場合に,サーバの移動先となるユニットの集合であるHAグループの識別子を指定します。
pdbuffer -c 代替中に代替部が使用するグローバルバッファを割り当てる場合にこのオプションを指定します。スタンバイレス型系切り替え機能の場合に指定します。1:1スタンバイレス型系切り替え機能の場合は,「26.5.7 グローバルバッファの定義(1:1スタンバイレス型系切り替え機能限定)」を参照してください。影響分散スタンバイレス型系切り替え機能の場合は,「26.5.8 グローバルバッファの定義(影響分散スタンバイレス型系切り替え機能限定)」を参照してください。
pdhagroup -g 影響分散スタンバイレス型系切り替え機能を使用する場合にサーバの切り替え先となるユニットの集合としてHAグループを定義します。システム内でHAグループを一意に識別するための識別子を指定します。
-u HAグループを構成するユニットのユニット識別子を指定します。
pd_ha_max_act_guest_servers 影響分散スタンバイレス型系切り替え機能を使用する場合に,該当ユニット内で同時に実行系として稼働できるゲストBES数の最大値を指定します。
pd_ha_max_server_process 影響分散スタンバイレス型系切り替え機能を使用する場合に,該当ユニット内の最大起動ユーザサーバプロセス数を指定します。
pd_ha_resource_act_wait_time 影響分散スタンバイレス型系切り替え機能を使用する場合,ユニットを開始するときに,実行系サーバのリソースが活性化されるまでの最大待ち時間を指定します。
pd_service_port 同一サーバマシン内複数ユニット構成の場合(相互系切り替え構成を含みます)にこのオペランドを指定するときは注意が必要です。同一サーバマシン内複数ユニット構成の場合(相互系切り替え構成を含みます),このオペランドはユニット制御情報定義でユニットごとに別々のポート番号を指定してください。
次に示す指定をした場合は,どちらかのユニットへの系の切り替えに失敗します。
  • システム共通定義のpd_service_portオペランドを指定した(ユニット制御情報定義のpd_service_portオペランドは指定していない)
  • ユニット制御情報定義のpd_service_portオペランドに,ほかのユニット制御情報定義のpd_service_portオペランドと同じポート番号を指定した
pd_ha_mgr_rerun このオペランドにnotwaitを指定すると,システムマネジャユニットの系切り替え時(切り替え先の系での開始処理時)に,各ユニットからの開始処理完了の連絡待ちを行いません。これによって,停止中のユニットがある状態でもシステムマネジャユニットの系切り替えが実行できるようになります。
運用方法の詳細については,「26.22 停止中のユニットがあるためシステムマネジャユニットの系切り替えに失敗するときの対処方法」を参照してください。
pd_deter_restart_on_stop_fail このオペランドはサーバモードの場合に指定します。オペランドにYを指定すると,実行系HiRDBの強制終了処理が異常終了した場合に起きる,意図しない系切り替えを抑止できます。運用方法の詳細については,「26.13.3(5) 強制終了処理の異常終了時に系切り替えを抑止する場合」を参照してください。
pd_max_ard_process 1:1スタンバイレス型系切り替え機能の場合,正規BESとそれに対応する代替BESに同じ値を指定してください。

注※1
システム定義のpd_name_portオペランド及びpdunitオペランドの-pオプションを指します。

注※2
システム定義のpd_scd_portオペランド及びpdunitオペランドの-sオプションを指します。

注※3
システム定義のpd_trn_portオペランド及びpdunitオペランドの-tオプションを指します。

(5) 切り替え先の指定(影響分散スタンバイレス型系切り替え機能限定)

影響分散スタンバイレス型系切り替え機能では,ほかの系切り替え機能とは異なり,切り替え先の定義方法が大きく異なります。

(a) 受け入れユニット

影響分散スタンバイレス型系切り替え機能では,切り替え単位がサーバのためサーバごとに切り替え先を指定する必要があります。サーバは複数の受け入れユニットを指定できます。複数の受け入れユニットはHAグループとして定義します。各サーバの切り替え先にはHAグループを指定します。

また,影響分散スタンバイレス型系切り替え機能では,ユニットごとに同時に稼働できるゲストBES数の最大値(pd_ha_max_act_guest_servers)を指定できます。

HAグループの構成例を図26-38及び図26-39に示します。

図26-38 HAグループの構成例(その1)

[図データ]

 
pdhagroup -g hag1 -u unt1,unt2,unt3,unt4
 
pdstart -t BES -s bes1A -u unt1 -g hag1
pdstart -t BES -s bes1B -u unt1 -g hag1
pdstart -t BES -s bes1C -u unt1 -g hag1
pdstart -t BES -s bes2A -u unt2 -g hag1
pdstart -t BES -s bes2B -u unt2 -g hag1
pdstart -t BES -s bes2C -u unt2 -g hag1
pdstart -t BES -s bes2D -u unt2 -g hag1
pdstart -t BES -s bes3A -u unt3 -g hag1
pdstart -t BES -s bes3B -u unt3 -g hag1
pdstart -t BES -s bes3C -u unt3 -g hag1
pdstart -t BES -s bes4A -u unt4 -g hag1
pdstart -t BES -s bes4B -u unt4 -g hag1
 

図26-39 HAグループの構成例(その2)

[図データ]

 
pdhagroup  -g hag1 -u unt1,unt2
pdhagroup  -g hag2 -u unt3,unt4
 
pdstart -t BES -s bes1A -u unt1 -g hag1
pdstart -t BES -s bes1B -u unt1 -g hag1
pdstart -t BES -s bes1C -u unt1 -g hag1
pdstart -t BES -s bes2A -u unt2 -g hag1
pdstart -t BES -s bes2B -u unt2 -g hag1
pdstart -t BES -s bes2C -u unt2 -g hag1
pdstart -t BES -s bes2D -u unt2 -g hag1
pdstart -t BES -s bes3A -u unt3 -g hag2
pdstart -t BES -s bes3B -u unt3 -g hag2
pdstart -t BES -s bes3C -u unt3 -g hag2
pdstart -t BES -s bes4A -u unt4 -g hag2
pdstart -t BES -s bes4B -u unt4 -g hag2
 
(b) HAグループ定義

HiRDBシステム定義のpdhagroup の-gオプションにHAグループ名を指定し,-uオプションにHAグループを構成するユニットのユニット識別子を指定します。

(例)
 
pdhagroup  -g hag1 -u unt1,unt2   …1.
pdhagroup  -g hag2 -u unt3,unt4   …2.
 
  1. unt1及びunt2で構成するHAグループhag1を定義します。
  2. unt3及びunt4で構成するHAグループhag2を定義します。

HAグループには次の制限があります。

HAグループを構成するユニットは次の条件をすべて満たさなければなりません。

  1. ホストBESがないユニット(受け入れ専用ユニット)は,HAグループに属せません。
    このため,HAグループに属するユニットには,一つ以上のホストBESがなければなりません。
  2. HAグループに属するユニットを構成するサーバはバックエンドサーバだけです。このため,サーバ種別が「BES」以外のサーバはあってはなりません。
  3. HAグループに属するユニットには影響分散スタンバイレス型系切り替え以外の系切り替えを適用できません。このため,HAグループに属するユニットでは,pd_ha_agentに「activeunits」以外の値は設定できません。
  4. HAグループに属するユニットは,複数のHAグループに属することはできません。
(c) 受け入れユニットの指定方法

HiRDBのシステム定義でpdstartの-gオプションに受け入れユニットの属するHAグループを指定します。

影響分散スタンバイレス型系切り替えを適用したユニットに属するすべてのサーバに対して-gオプションを指定しなければなりません。

(例)pdstart -t BES -s bes1A -u unt1 -g hag1
unt1,又はbes1異常終了時,bes1の処理はHAグループhag1に属するユニットが受け入れます。

-gオプションを指定する場合の注意事項を次に示します。

  1. 正規ユニット及び受け入れユニットを構成するサーバはバックエンドサーバだけです。
    • -tオプションに「BES」が指定されていなければなりません。
    • -gオプションで指定したHAグループに属するユニットにも,サーバ種別が「BES」以外のサーバがあってはなりません。
  2. 正規ユニットを構成するサーバの数と受け入れユニットを構成するサーバの数が同じ必要はありません。
    • -uオプションで指定したユニット(正規ユニット)のサーバの数と-gオプションで指定したHAグループに属するユニット(受け入れユニット)のサーバの数が同じ必要はありません。
(d) 同時稼働ゲストBES数最大値の指定

ユニット制御情報定義のpd_ha_max_act_guest_serversオペランドに,ユニット内で同時に実行系として稼働できるゲストBES数の最大値を指定します。この指定によって,ゲストBES用のリソース所要量を削減できます。また,過剰な負荷の上昇を抑えられます。

(例) pd_ha_max_act_guest_servers = 2

pd_ha_max_act_guest_serversオペランドの上限値は,HAグループ内のサーバ数から自ユニット内サーバ数を引いた値です。この上限値以上の値を指定しても,pd_ha_max_act_guest_serversオペランドには上限値が設定されます。ホストBESの数とpd_ha_max_act_guest_serversオペランドの値の合計は34に制限されます。

ユニット内の受け入れ可能状態ゲストBESの数は制限しません。ただし,ユニット内で実行系として稼働しているゲストBES数がpd_ha_max_act_guest_serversオペランドに指定した値に達すると,すべての非稼働中のゲストBESについて受け入れ可能状態を解除します。

また,HAグループ内の障害BES数がHAグループ内の稼働中ユニットの空きゲスト用領域数の合計を超えると,障害によって一部のサーバの処理が停止します。

(6) 系切り替え後のサーバプロセスの割り当て

(a) 1:1スタンバイレス型系切り替えの場合

1:1スタンバイレス型系切り替えでの系切り替え後の代替BESユニットでは,代替BESが本来の処理をするとともに,正規BESの処理を代行します。このとき,サーバプロセスは代替BES本来の処理用と正規BESの処理用に割り当てられます。代替BES本来の処理をしているサーバプロセスと正規BESの処理を代行しているサーバプロセスの数は必要に応じて変化しますが,代替BESの最大起動プロセス数(pd_max_bes_processオペランドの値)が両者の合計プロセス数の上限となります。この結果,系切り替え発生後の代替BESユニットでの過剰な負荷上昇を抑止できますが,一方で,系切り替え発生後には同時に処理できるサービス要求数の上限が平均で半数に制限されますので注意が必要です。系切り替え発生後のユニットの負荷上昇,及び同時に処理できるサービス要求数の両方を考慮して代替BESのpd_max_bes_processオペランドを設定してください。

また,系切り替え発生前の状態で常駐プロセス数(pd_process_countオペランドの値)に余裕があり,サービス要求処理中でないサーバプロセスが常駐している状態では,系切り替え発生後にサービス要求処理中でない常駐プロセスを正規BESの処理を代行するために利用できます。このため,切り替え時の処理性能が向上します。

1:1スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセスの割り当て(その1)を次の図に示します。

図26-40 1:1スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセスの割り当て(その1)

[図データ]

系切り替え発生前は代替BES(bes1)のpd_max_bes_processオペランドの値まで同時に処理できます。また,代替BES(bes1)のpd_process_countオペランドの値までサーバプロセスを常駐します。

系切り替えが発生すると代替BES(bes1)の常駐プロセスを使って,正規BES(bes2)の処理を開始します。このため,正規BES(bes2)処理用のサーバプロセス起動が必要なく,切り替え後すぐに正規BES(bes2)の処理が開始します。また,系切り替え前に正規BES(bes2)処理用のサーバプロセスを待機起動する必要もありません。

また,常駐プロセスを使い切った場合は必要に応じてサーバプロセスを追加起動しますが,サーバプロセス数は代替BES(bes1)のpd_max_bes_processオペランドの値までに制限されます。

1:1スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセスの割り当て(その2)を次の図に示します。

図26-41 1:1スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセスの割り当て(その2)

[図データ]

系切り替え後,代替BES(bes1)が正規BES(bes2)の処理を代行中には,代替BESのpd_max_bes_processオペランドの範囲で,必要に応じて起動したサーバプロセスを代替BES(bes1)の処理,及び正規BES(bes2)処理用に振り分けます。

代替BES(bes1)への処理要求だけの場合には,代替BES(bes1)のpd_max_bes_processオペランドの値まで,同時に代替BES(bes1)の処理ができます。

また,正規BES(bes2)への処理要求だけの場合には,代替BES(bes1)のpd_max_bes_processオペランドの値まで,同時に正規BES(bes2)の処理ができます。

(b) 影響分散スタンバイレス型系切り替え機能の場合

影響分散スタンバイレス型系切り替えでの系切り替え後の受け入れユニットでは,実行中ゲストサーバ数がpd_ha_max_act_guest_serversオペランドの値になるまでゲストサーバを受け入れできます。

受け入れユニットではホストBES,ゲストBESがそれぞれ独自の最大起動プロセス数(pd_max_bes_processオペランドの値)の範囲でサーバプロセスを起動しますが,そのほかにユニット内のサーバプロセス数合計値がpd_ha_max_server_processオペランドに制限されます。この結果,受け入れユニットの過剰な負荷上昇を抑止できます。ただし,系切り替え発生後に同時に処理できるサービス要求数の上限が制限されることがありますので注意が必要です。系切り替え発生後のユニットの負荷上昇,及び同時に処理できるサービス要求数の両方を考慮してpd_ha_max_server_processオペランドを設定してください。

また,系切り替え発生前の状態でホストBESの常駐プロセス数(pd_process_countオペランドの値)に余裕があり,サービス要求処理中でないプロセスが常駐している状態では,系切り替え発生後にサービス要求処理中でない常駐プロセスをゲストBESの処理に利用できるため,処理性能が向上します。一方で,常駐プロセス数を必要以上に大きくすると,非サービス要求処理中プロセスによってサーバプロセス数がpd_ha_max_server_processオペランドの値に達し,ほかのサーバで起動済みサーバプロセス数がpd_max_bes_processオペランドの値に満たない状態でも追加のサービス要求処理ができないことがあります。一般に,ユニット内の常駐プロセス数の合計と最大実行プロセス数の合計の比率はゲストサーバ受け入れ前後で同じにすることを推奨します。この目的で,ゲストサーバを受け入れた後のユニット内の常駐プロセス数の合計をpd_ha_process_countオペランドで制限します。実際の常駐プロセス数は,pd_ha_process_countオペランドをユニットで実行中サーバのpd_process_countオペランドで比例配分した数とpd_process_countオペランドの小さい方となります。

サーバプロセス数に関連するオペランドの意味を次に示します。

影響分散スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセス割り当て(その1)を次の図に示します。

図26-42 影響分散スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセス割り当て(その1)

[図データ]

系切り替え発生前はホストBES(bes1,bes2)はそれぞれのpd_max_bes_processオペランドの値まで同時に処理できます。また,それぞれのpd_process_countオペランドの値までサーバプロセスを常駐します。

系切り替えが発生するとホストBES(bes1,bes2)の常駐プロセスを流用してゲストBES(bes3)のサーバプロセスを用意します。このため,ゲストBES(bes3)用のサーバプロセスを起動する必要がなく,切り替え後すぐにゲストBES(bes3)の処理が開始できます。また,系切り替え発生前にゲストBES(bes3)用のサーバプロセスを待機起動する必要もありません。

各サーバは必要に応じてそれぞれのpd_max_bes_processオペランドの値までバックエンドサーバプロセスを起動しますが,ユニット内のサーバプロセスの総計はpd_ha_max_server_processオペランドの値に制限されます。

また,常駐プロセス数の総数がユニット内でpd_ha_process_countオペランドの値となるよう,各サーバの常駐プロセスが調整されます。調整後の各サーバの常駐プロセス数は各サーバのpd_process_countオペランドの比率を保つよう,pd_ha_process_countオペランドの値を比例配分します。

影響分散スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセス割り当て(その2)を次の図に示します。

図26-43 影響分散スタンバイレス型系切り替えでの系切り替え発生後のサーバプロセス割り当て(その2)

[図データ]

系切り替え後,ゲストBES(bes3)受け入れ中は,ユニット内のバックエンドサーバプロセス数がpd_ha_max_server_processオペランドの範囲で,必要に応じてホストBES(bes1,bes2),及びゲストBES(bes3)のバックエンドサーバプロセスを起動します。

特定のホストBES(例えばbes1)への処理要求が特に多い場合は,該当ホストBES(bes1)のpd_max_bes_processオペランドの値まで同時に処理できます。ただし,その分,他サーバ(例えばbes3)の同時要求処理数が少なくなります。