Hitachi

ノンストップデータベース HiRDB Version 10 システム定義(UNIX(R)用)


9.2.38 系切り替え機能に関するオペランド

◆ pd_ha = use|nouse

系切り替え機能を使用するかどうかを指定します。

use:系切り替え機能を使用します。

nouse:系切り替え機能を使用しません。

《注意事項》

ログ同期方式のリアルタイムSANレプリケーションを使用している場合,ログ適用サイトでは系切り替え機能を使用できません。このオペランドにuseを指定した場合,KFPS04689-Wメッセージが出力されます。

◆ pd_ha_ipaddr_inherit = Y|N

系切り替え機能を使用する場合にIPアドレスを引き継ぐかどうかを指定します。IPアドレスを引き継ぐかどうかによって,系切り替え機能の運用方法が異なります。詳細については,マニュアル「HiRDB システム運用ガイド」を参照してください。

Y:IPアドレスを引き継ぎます。

N:IPアドレスを引き継ぎません。

1:1スタンバイレス型系切り替え機能又は影響分散スタンバイレス型系切り替え機能を使用する場合はこのオペランドを省略してください。指定しても無効になります。

《指定値の目安》

高速系切り替え機能を使用するときの指定値の目安を次に示します。

  • HiRDB/シングルサーバの場合

    高速系切り替え機能を使用する場合はIPアドレスを引き継げないため,Nを指定してください。

  • HiRDB/パラレルサーバの場合

    IPアドレスを引き継ぐ場合はYを,引き継がない場合はNを指定してください。ただし,高速系切り替え機能の対象にするユニットはIPアドレスを引き継げません。したがって,ここでYを指定した場合,高速系切り替え機能の対象にするユニットのユニット制御情報定義のpd_ha_ipaddr_inheritオペランドにNを指定する必要があります。

    なお,このオペランドにNを指定した場合は,ユニット制御情報定義のpd_ha_ipaddr_inheritオペランドにYを指定できません。

◆ pd_ha_unit = nouse

このオペランドはユニットに系切り替え機能を適用しない場合に指定します。系切り替え機能を適用するユニットと,適用しないユニットを分ける場合に指定してください。このオペランドを指定すると,この項で説明しているオペランドの指定がすべて無効になります。

《ほかのオペランドとの関連》

フロントエンドサーバのpdstartオペランドに -k stlsオプションを指定すると回復不要FESユニットになります。回復不要FESユニットでは,系切り替え機能を適用できません。系切り替え機能を適用するシステムの場合,回復不要FESユニットのユニット制御情報定義には,必ずこのオペランドを指定してください。

◆ pd_ha_restart_failure = コマンド名

〜<パス名>

このオペランドはモニタモードの場合に指定できます。サーバモードの場合にこのオペランドを指定しても無効になります。

HiRDBの再開始に失敗したときに実行するコマンドを絶対パス名で指定します。このオペランドにクラスタソフトウェアの系を切り替えるコマンドを指定したり,ユーザコマンド(シェル)の中で系を切り替えるコマンドを発行したりすることで,再開始に失敗したときの系切り替えの運用を自動化できます。

◆ pd_ha_acttype = monitor|server

系切り替え機能の運用をモニタモードで行うか,サーバモードで行うかを指定します。モニタモード及びサーバモードについては,マニュアル「HiRDB システム運用ガイド」を参照してください。

monitor:系切り替え機能の運用をモニタモードで行います。

server:系切り替え機能の運用をサーバモードで行います。

次に示す機能を使用する場合はサーバモードでの運用が前提になります。

  • ユーザサーバホットスタンバイ

  • 高速系切り替え機能

  • 1:1スタンバイレス型系切り替え機能

  • 影響分散スタンバイレス型系切り替え機能

《前提条件》

このオペランドを指定するにはpd_haオペランドにuseを指定する必要があります。また,serverを指定する場合は次に示す条件をすべて満たす必要があります。

  • クラスタソフトウェアがHAモニタ,又はMC/ServiceGuardである

  • Hitachi HA Toolkit Extensionを導入している

なお,クラスタソフトウェアがHAモニタの場合,Hitachi HA Toolkit Extensionは必要ありません。これらの製品を導入しないでserverを指定すると,HiRDBを開始できません。

《注意事項》
  • クラスタソフトウェアがHAモニタの場合は,HAモニタのacttypeオペランドの指定とこのオペランドの指定を合わせてください。指定値が異なると,HiRDBを開始できない,系が切り替わらないなどの現象が発生することがあります。acttypeオペランドについては,マニュアル「高信頼化システム監視機能 HAモニタ」を参照してください。

  • クラスタソフトウェアがPowerHA,又はLifeKeeperの場合は,このオペランドにserverを指定しないでください。

◆ pd_ha_server_process_standby = Y|N

ユーザサーバホットスタンバイを使用するかどうかを指定します。ユーザサーバホットスタンバイについては,マニュアル「HiRDB システム運用ガイド」を参照してください。

Y:ユーザサーバホットスタンバイを使用します。

N:ユーザサーバホットスタンバイを使用しません。

なお,1:1スタンバイレス型系切り替え機能又は影響分散スタンバイレス型系切り替え機能を使用する場合はこのオペランドを省略してください。

《前提条件》

Y(省略値)を指定する場合はサーバモードである必要があります。モニタモードの場合は常にNが仮定されます。

《ほかのオペランドとの関連》

高速系切り替え機能はユーザサーバホットスタンバイを包括しています。このため,pd_ha_agentオペランドにstandbyunitを指定した場合(高速系切り替え機能を使用する指定をした場合),このオペランドにNを指定してもYが仮定されます。

◆ pd_ha_agent = standbyunit|server|activeunits

次に示す機能を使用する場合にこのオペランドを指定します。

  • 高速系切り替え機能

  • 1:1スタンバイレス型系切り替え機能

  • 影響分散スタンバイレス型系切り替え機能

これらの機能については,マニュアル「HiRDB システム運用ガイド」を参照してください。

standbyunit:高速系切り替え機能を使用する場合に指定します。

server:1:1スタンバイレス型系切り替え機能を使用する場合に指定します。

activeunits:影響分散スタンバイレス型系切り替え機能を使用する場合に指定します。

なお,同一システム内で,1:1スタンバイレス型系切り替え機能と影響分散スタンバイレス型系切り替え機能を混在して指定できません。

《前提条件》

このオペランドを指定する場合はサーバモードである必要があります。モニタモードの場合にこのオペランドを指定するとKFPS01896-Eエラーになります。

《注意事項》
  • 高速系切り替え機能の対象ユニットはIPアドレスを引き継げません。したがって,HiRDB/シングルサーバの場合はシステム共通定義又はユニット制御情報定義のpd_ha_ipaddr_inheritオペランドにNを指定してください。HiRDB/パラレルサーバでIPアドレスを引き継ぐ構成の場合は,高速系切り替え機能対象ユニットのユニット制御情報定義のpd_ha_ipaddr_inheritオペランドにNを指定してください。

  • 高速系切り替え機能,1:1スタンバイレス型系切り替え機能,又は影響分散スタンバイレス型系切り替え機能を使用する場合は,グローバルバッファを動的変更できません。グローバルバッファの動的変更については,マニュアル「HiRDB システム運用ガイド」を参照してください。

《ほかのオペランドとの関連》
  • 高速系切り替え機能はユーザサーバホットスタンバイを包括しています。このため,このオペランドにstandbyunitを指定するとpd_ha_server_process_standbyオペランドにYが仮定されます。

  • 1:1スタンバイレス型系切り替え機能及び影響分散スタンバイレス型系切り替え機能は,系を切り替えた場合,切り替え先のユニットのサーバプロセスを利用します。そのため,このオペランドにserver又はactiveunitsを指定するとpd_ha_server_process_standbyオペランドの指定が無効になります。

  • 高速系切り替え機能,1:1スタンバイレス型系切り替え機能,又は影響分散スタンバイレス型系切り替え機能を使用する場合は,pd_rdarea_open_attribute_useオペランド(RDエリアのオープン契機の指定)にYが仮定されます。

  • 影響分散スタンバイレス型系切り替え機能を使用している場合,HAグループ内の全ユニットが起動していなくてもよいため,pd_start_skip_unitオペランドの指定が無効になります。ただし,HAグループ内の全バックエンドサーバがどこかのユニットで起動していないと,HiRDBを開始できません。

  • このオペランドを指定した場合,次に示すオペランドの指定値を確認してください。指定値に誤りがある場合,KFPS01896-Eエラーになります。

    オペランド名

    pd_ha_agentオペランドの値

    standbyunit

    server

    activeunits

    pd_ha

    use

    use

    use

    pd_ha_unit

    省略

    省略

    省略

    pd_ha_acttype

    server

    server

    server

    pd_ha_ipaddr_inherit(ユニット制御情報定義)

    pd_ha_agent

    ほかのユニットにactiveunitsを指定してはいけない

    ほかのユニットにserverを指定してはいけない

    pdstartオペランドの-cオプション

    pdstartオペランドの-gオプション

    pdhagroup

(凡例)

○:オペランドの指定が必要です。

−:該当しません。

《各見積もり式への影響》

pd_ha_agentオペランドの指定値を変更すると,次の見積もり式に影響があります。

マニュアル「HiRDB システム導入・設計ガイド」:

  • 「HiRDB/パラレルサーバで起動するプロセス」

  • 「メッセージキュー及びセマフォ所要量の見積もり」

  • 「リソース数に関連する環境変数の見積もり」の「HiRDB/シングルサーバの場合」

  • 「リソース数に関連する環境変数の見積もり」の「HiRDB/パラレルサーバの場合」

◆ pd_ha_max_act_guest_servers = 受け入れ可能なゲストBESの最大数

〜<符号なし整数>((0〜33))

影響分散スタンバイレス型系切り替え機能を使用する場合にこのオペランドを指定します。ユニット内で実行系として稼働するゲストBESの最大数を指定します。ユニット内で実行系として稼働するゲストBES数がこのオペランドの指定値に達すると,ゲストBESの受け入れ可能状態を解除します。

このオペランドの値によって,受け入れユニットで確保するゲスト用領域の数が決定します。このオペランドの値を変更してゲストBES用のリソース所要量を調整してください。

なお,このオペランドの値が小さ過ぎると,系の切り替えが発生したとき,一部のバックエンドサーバの処理が実行されないことがあります。HAグループ内の障害バックエンドサーバ数がHAグループ内の受け入れ可能ゲストBES数の合計を超えると,超えた分のバックエンドサーバの処理がどのユニットにも受け入れられないため,そのバックエンドサーバの処理が実行されません。

《前提条件》

このオペランドを指定する場合は次に示すオペランドを指定する必要があります。指定しないと,システム定義の不正によるエラーになります(KFPS01896-Eメッセージが出力されます)。

  • pdhagroup

  • pd_ha_agent = activeunits

《指定値の目安》

このオペランドを省略すると,このオペランドの値をHiRDBが計算します。また,指定値の上限値は次に示す値の小さい方になります。

  • 34−ユニット内のホストBES数

  • HAグループ内のサーバ数−ユニット内のホストBES数

上限値以上の値を指定しても,この上限値に補正されます(KFPS05613-Wメッセージが出力されます)。

なお,このオペランドを省略したときにHiRDBが算出する受け入れ可能なゲストBESの最大数は,次に示す条件をすべて満たしていることを想定しています。

  • HAグループ内の各ユニットのバックエンドサーバ数が同じである

  • 2点障害が発生した

したがって,HAグループ内の各ユニットのバックエンドサーバ数が異なる場合,又は3点障害以上が発生した場合,このオペランドの省略値では一部のバックエンドサーバの処理が実行されないことがあります。

《オペランドの省略値》

このオペランドの省略値の計算式を次に示します。

  • HAグループ内のユニット数が2の場合:a

  • HAグループ内のユニット数が3以上の場合:↑(a×2)÷(b−2)↑

a:ユニット内のホストBES数

b:HAグループ内のユニット数

このオペランドを指定する場合,次に示す計算式(推奨値)からこのオペランドの指定値を求めてください。この計算式は,多点障害時に自ユニットを除くユニットで,ホストBES数が多いユニットから順に障害が発生した場合,残りのユニットが障害ユニットのホストBESを均等に受け入れることを想定しています。

[図データ]

a:自ユニット以外で,i番目にホストBES数が多いユニットのホストBES数

b:HAグループ内のユニット数

c:想定している多点障害数(<b)

《各見積もり式への影響》

pd_ha_max_act_guest_serversオペランドの指定値を変更すると,次の見積もり式に影響があります。

マニュアル「HiRDB システム導入・設計ガイド」:

  • 「HiRDB/パラレルサーバのメモリ所要量の見積もり」の「ユニットコントローラが使用する共用メモリの計算式」

◆ pd_ha_max_server_process = 受け入れユニット内の最大ユーザサーバプロセス数

〜<符号なし整数>((1〜10000))《ユニット内ホストBESのpd_max_bes_processの合計値》

影響分散スタンバイレス型系切り替え機能を使用する場合にこのオペランドを指定します。ユニット内で起動するユーザサーバプロセスの最大数を指定します。受け入れユニットでは,ホストBES及びゲストBESの各pd_max_bes_processオペランドの値(最大起動プロセス数)によってサーバプロセス数が制限されます。このオペランドを指定すると,それに加えてユニット内のサーバプロセス数の合計値が制限できます。

《前提条件》

このオペランドを指定する場合は次に示すオペランドを指定する必要があります。指定しないと,このオペランドの指定は無効になります。

  • pdhagroup

  • pd_ha_agent = activeunits

《指定値の目安》

系の切り替え後,ユニット内のプロセス数を増加させたくない場合はこのオペランドを省略してください。ただし,同時に処理できるサービス要求数の上限が制限されることがあります。リソースが十分にある場合は,ユニット内のホストBESと,受け入れ可能なゲストBESの最大起動プロセス数(pd_max_bes_processオペランドの値)の合計値を指定してください。そうすると,系の切り替え後も同時に処理できるサービス要求数の上限が系の切り替え前と同じになります。

このオペランドの指定によって,受け入れユニットに過剰な負荷が掛かることを抑止できます。系切り替え発生後のユニットの負荷上昇,及び同時に処理できるサービス要求数の両者を考慮してこのオペランドの指定値を決定してください。

《注意事項》

ユニット内ホストBESのpd_max_bes_processオペランドの合計値より小さい値をこのオペランドに指定した場合,その指定値は無効になります。この場合,ユニット内ホストBESのpd_max_bes_processオペランドの合計値が仮定されます(KFPS05614-Wメッセージが出力されます)。

◆ pd_ha_process_count = ゲストBES受け入れ後のユニット内常駐プロセス数

〜<符号なし整数>((0〜10000))

影響分散スタンバイレス型系切り替え機能を使用する場合にこのオペランドを指定します。ゲストBES受け入れ後のユニット内のホストBESとゲストBESの常駐プロセス数の合計値を指定します。

ゲストBES受け入れ後の各サーバの常駐プロセス数をこのオペランドの指定で調整できます。

《前提条件》

このオペランドを指定する場合は次に示すオペランドを指定する必要があります。指定しないと,このオペランドの指定は無効になります。

  • pdhagroup

  • pd_ha_agent = activeunits

《指定値の目安》
  • このオペランドを省略すると,このオペランドの値をHiRDBが計算します。

  • 非サービス中の常駐プロセスがプロセスを占有していて,一部のバックエンドサーバがプロセスを起動できないため,サービスの要求を処理できない場合,このオペランドの値を小さくしてください。ただし,系の切り替え後,トランザクションのスループットが悪くなることがあります。系の切り替え後,トランザクションのスループットを良くしたい場合は,このオペランドの値を大きくしてください。ただし,このオペランドの値が大き過ぎると,一部のバックエンドサーバでサービスの要求を処理できないことがあります。

《注意事項》

ユニット内ホストBESのpd_process_countオペランドの合計値より小さい値をこのオペランドに指定した場合,その指定値は無効になります。この場合,ユニット内ホストBESのpd_process_countオペランドの合計値が仮定されます(KFPS05615-Wメッセージが出力されます)。

《備考》

ゲストBESを受け入れた後,各バックエンドサーバに常駐するプロセス数は,次に示す値のうち小さい方になります。

  • このオペランドの値を各バックエンドサーバのpd_process_countオペランドの値で比例配分した値

  • 各バックエンドサーバのpd_process_countオペランドの値

    [図データ]

このオペランドの省略値は,ゲストBESを受け入れた後の最大起動ユーザサーバプロセス数に,ゲストBESを受け入れる前の最大起動プロセス数に対する常駐プロセス数の比率を掛けた値です。計算式を次に示します。

[図データ]

◆ pd_ha_resource_act_wait_time = リソース活性化の最大待ち時間

〜<符号なし整数>((2〜3600))《10》(単位:秒)

影響分散スタンバイレス型系切り替え機能を使用する場合にこのオペランドを指定します。このオペランドには,ユニットを開始するときに,実行系サーバのリソースが活性化されるまでの最大待ち時間を秒単位で指定します。このオペランドに指定した待ち時間の間は,ユニットの開始処理を待ち合わせます。ただし,ここで指定した時間内にリソースが活性化された場合は,すぐにユニットの開始処理を再開します。

《利点》

ユニットの開始処理が完了したときに,ユニット内の実行系サーバの起動処理が完了していないと,業務を開始できません。このオペランドに適切な値を指定すると,ユニットの開始処理を待ち合わせるため,ユニットの開始処理が完了した直後から業務を開始できます。

注※ HAモニタのsysdefファイルのusrcommandオペランドに指定したコマンドの処理に時間が掛かる場合,この現象が発生することがあります。

《指定値の目安》

通常は,このオペランドを指定する必要はありません。次に示す条件をすべて満たす場合にこのオペランドを指定してください。

  • 影響分散スタンバイレス型系切り替え機能を使用している場合

  • KFPS05623-Iメッセージが出力された場合

  • メッセージ出力対象ユニットに実行系サーバがある場合

指定値の目安を次に示します。

 10+リソース活性化処理に掛かる時間(秒)

リソース活性化処理に掛かる時間:HAモニタのsysdefファイルのusrcommandオペランドに指定したコマンドの最大処理時間

《備考》

ユニット内に実行系サーバが存在しない場合,このオペランドに指定した時間だけ実行系サーバの開始を待ち合わせます。ただし,ユニット内の全サーバが待機系サーバとして開始した場合は,このオペランドで指定した時間を待たないでユニットの開始処理を再開します。

◆ pd_ha_transaction = error|queuing

トランザクションキューイング機能を使用するかどうかを指定します。また,系の切り替え中にHiRDBサーバへの接続数が最大同時接続数(pd_max_usersオペランドの値)を超えた場合の処理を指定します。トランザクションキューイング機能については,マニュアル「HiRDB システム運用ガイド」を参照してください。

error:
  • トランザクションキューイング機能を使用しません。系切り替え中のバックエンドサーバ又はディクショナリサーバで処理するトランザクションをエラーにします。

  • 系の切り替え中にHiRDBサーバへの接続数が最大同時接続数を超えた場合,HiRDBサーバへの接続をエラーにします。

queuing:
  • トランザクションキューイング機能を使用します。系切り替え中のバックエンドサーバ又はディクショナリサーバで処理するトランザクションをエラーにしないで,系切り替えが完了するまでフロントエンドサーバでトランザクションをキューイングします。このとき,バックエンドサーバ又はディクショナリサーバのユニットの起動が完了するまで待ち合わせを行うため,SQLのレスポンスが通常より遅くなります。

  • 系の切り替え中にHiRDBサーバへの接続数が最大同時接続数を超えた場合,HiRDBサーバへの接続処理をpd_ha_trn_queuing_wait_time+pd_ha_trn_restart_retry_timeの時間だけHiRDBクライアントでリトライします。ただし,HiRDBクライアントのバージョンが07-00以上の必要があります。

《前提条件》

トランザクションキューイング機能を使用する場合は,次に示す条件をすべて満たす必要があります。

  • HiRDB/パラレルサーバである

  • 高速系切り替え機能,1:1スタンバイレス型系切り替え機能,又は影響分散スタンバイレス型系切り替え機能を使用している

なお,HiRDBサーバへの接続処理をHiRDBクライアントでリトライする処理については,前記の前提条件を満たす必要はありません。

《クライアント環境定義との関連》

このオペランドにqueuingを指定しても,クライアントごとにトランザクションキューイング機能を使用しないように変更できます。クライアントごとにトランザクションキューイング機能をキャンセルする場合は,クライアント環境定義のPDHATRNQUEUINGオペランドを指定してください。PDHATRNQUEUINGオペランドについては,マニュアル「HiRDB UAP開発ガイド」を参照してください。

《ほかのオペランドとの関連》

このオペランドは次に示すオペランドと関連があります。

  • pd_ha_trn_queuing_wait_time

  • pd_ha_trn_restart_retry_time

  • pd_ha_trn_queuing_initial

◆ pd_ha_trn_queuing_wait_time = トランザクションのキューイング待ち時間

〜<符号なし整数>((1〜3600))《180》(単位:秒)

トランザクションキューイング機能を使用する場合のトランザクションのキューイング待ち時間を指定します。このオペランドに指定した待ち時間を超えても待機系ユニット又はサーバが開始しない場合,キューイング中のトランザクションをエラーにします。これ以降発生するトランザクションはキューイングされないでエラーになります。なお,この待ち時間より先に開始処理中のユニット又はサーバが開始した場合は,この指定時間を待たないでトランザクションが再開されます。

また,1:1スタンバイレス型系切り替え機能の場合は,正常時は代替部が待機系になり,代替中は正規BESユニットが待機系になります。

《前提条件》

pd_ha_transactionオペランドにqueuingを指定する必要があります。

《指定値の目安》
  • 通常,このオペランドを指定する必要はありませんが,系切り替え時のロールフォワード時間が180秒以上掛かる場合にこのオペランドの指定値を大きくしてください。

  • 系切り替えに掛かる時間を考慮して,値を指定してください。トランザクションの処理時間が長いUAPを実行している場合は,系切り替え時に行われるロールフォワードの時間も考慮する必要があります。

  • このオペランドを指定する場合は,系切り替え時のディスク切り替え時間を考慮して,適正な値を指定してください。指定値が大きいと,系切り替えに失敗した場合,トランザクションがエラーを検知する時間が遅延します。また,指定値が小さいと,系切り替えに成功しても,トランザクションがエラーになることがあります。

《クライアント環境定義との関連》
  • PDCWAITTIME

    PDCWAITTIMEを指定する場合は,pd_ha_trn_restart_retry_timeオペランドの《クライアント環境定義との関連》のPDCWAITTIMEを参照してください。

◆ pd_ha_trn_restart_retry_time = トランザクション開始要求エラー時のリトライ時間の上限

〜<符号なし整数>((1〜3600))《60》(単位:秒)

トランザクションキューイング機能使用時に系切り替えが発生すると,トランザクションをフロントエンドサーバでキューイングします。しかし,系切り替えが発生してから待機系ユニット又はサーバが再開始するまでの間,フロントエンドサーバは系切り替えを検知できません。この間(系切り替えが発生してから待機系ユニット又はサーバが再開始するまでの間),フロントエンドサーバは実行系ユニット又はサーバに対してトランザクションの開始要求をしますが,実行系ユニットは既に異常終了しているため,このトランザクション開始要求はエラーになります。エラーになったトランザクションはフロントエンドサーバから開始要求が再度行われます(トランザクションの開始要求をリトライします)。

このオペランドには,このリトライ時間の上限を指定します。このオペランドの値を超えても待機系ユニット又はサーバが再開始されない場合は,リトライ中のトランザクションをエラーにします。また,これ以降発生するトランザクションはリトライされないでエラーになります。なお,このリトライ時間より前に待機系のユニット又はサーバが再開始した場合は,この指定時間リトライは行わないでキューイングされます。

《前提条件》

pd_ha_transactionオペランドにqueuingを指定する必要があります。

《指定値の目安》
  • 通常,このオペランドを指定する必要はありませんが,クラスタソフトウェアによるディスクの切り替え時間が60秒以上掛かる場合にこのオペランドの指定値を大きくしてください。

  • このオペランドを指定する場合は,系切り替え時のディスク切り替え時間を考慮して,適正な値を指定してください。指定値が大きいと,系切り替えに失敗した場合,トランザクションがエラーを検知する時間が遅延します。また,指定値が小さいと,系切り替えに成功しても,トランザクションがエラーになることがあります。

《クライアント環境定義との関連》
  • PDCWAITTIME

    PDCWAITTIMEを指定する場合は,次に示す関係になるように値を設定してください。

    PDCWAITTIMEの指定値>pd_ha_trn_queuing_wait_timeの指定値+pd_ha_trn_restart_retry_timeの指定値

    この関係を満たさない場合は,トランザクションキューイング機能によってトランザクションをリトライ,又はキューイングしている間に,PDCWAITTIMEに指定した時間を超過してトランザクションがエラーになるときがあります。

    PDCWAITTIMEについては,マニュアル「HiRDB UAP開発ガイド」を参照してください。

《備考》

pd_ha_trn_queuing_wait_timeオペランドとpd_ha_trn_restart_retry_timeオペランドの関連を次に示します。

[図データ]

〔説明〕
区間A,D:

トランザクションを開始できる状態です(正常な状態です)。

区間B:

バックエンドサーバがあるユニットが系切り替え中で,フロントエンドサーバがそれを検知できていない状態です。pd_ha_trn_restart_retry_timeオペランドに指定した時間までトランザクション開始要求をリトライします。フロントエンドサーバが系の切り替えを検知すると,トランザクションがキューイングされます。指定した時間を過ぎても検知できない場合は,そのトランザクションをエラーにします。

区間C:

バックエンドサーバがあるユニットが系切り替え中で,フロントエンドサーバがそれを検知している状態です。pd_ha_trn_queuing_wait_timeオペランドに指定した時間までトランザクションをキューイングします。指定した時間を過ぎてもトランザクションを開始できない場合は,そのトランザクションをエラーにします。

◆ pd_ha_trn_queuing_initial = Y|N

このオペランドはHiRDB/パラレルサーバ限定のオペランドです。

トランザクションキューイング機能を使用する場合に,フロントエンドサーバを配置したユニットの起動直後からトランザクションキューイング機能を有効にするかどうかを指定します。

Y:

フロントエンドサーバを配置したユニットの起動直後からトランザクションキューイング機能を有効にします。

N:

フロントエンドサーバを配置したユニットの起動後に,バックエンドサーバやディクショナリサーバを配置したユニットが稼働中又は起動し始めてからトランザクションキューイング機能を有効にします。

《前提条件》

pd_ha_transactionオペランドにqueuingを指定する必要があります。

《指定値の目安》

Yを推奨する系切り替え構成を次の表に示します。

表9‒11 Yを推奨する系切り替え構成

バックエンドサーバやディクショナリサーバを配置したユニットの系切り替え構成

Yを推奨する構成

系切り替え機能を使用しない

※1

系切り替え機能を使用する

通常の系切り替え

IPアドレスを引き継ぐ

※1

IPアドレスを引き継がない

×

ユーザサーバホットスタンバイ

IPアドレスを引き継ぐ

※1

IPアドレスを引き継がない

×

高速系切り替え機能

1:1スタンバイレス型系切り替え機能

影響分散スタンバイレス型系切り替え機能

※2

(凡例)

○:Yを推奨する構成です。

×:Yを推奨しない構成です。

−:トランザクションキューイング機能の適用有無が決まっている構成です。

注※1 トランザクションキューイング機能を使用できない構成です。

注※2 このオペランドの指定値に関係なく,フロントエンドサーバを配置したユニットの起動直後からトランザクションキューイング機能を有効にする構成です。

上記の表で,「Yを推奨する構成」が「×」の系切り替え構成ユニットを含まないシステム構成の場合,指定値をYにすることを推奨します。

ただし,表の「Yを推奨する構成」が「○」のユニットに次のどちらかの機能を適用する場合は,Yを推奨しません。

  • 縮退起動機能(pd_start_levelオペランドに1を指定し,pd_start_skip_unitオペランドを指定する)

  • 拡張ユニット(pd_system_expand_unitオペランドを指定する)

Yを推奨しないシステム構成でYを適用した際の影響については,《注意事項》を参照してください。

《利点》

Yを適用すると,フロントエンドサーバを配置したユニットの起動直後からトランザクションキューイング機能を有効にします。これによって,フロントエンドサーバを含む複数ユニットの同時障害時にバックエンドサーバやディクショナリサーバを配置したユニットの起動を待たないで,トランザクションキューイング機能が有効になります。

《注意事項》

Yを推奨しないシステム構成でYを適用した場合,バックエンドサーバやディクショナリサーバを配置したユニットの系切り替え時に,該当ユニットに対してのSQLで,通信障害が発生した旨のエラーになるまでの時間が長くなります(KFPA11981-Eメッセージが出力されます)。

また,エラーになるまでの時間が長くなることで,次のどちらかのメッセージを出力することがあります。

  • KFPS00993-I(REQUEST=PDCWAITTIME_over)

  • KFPS00612-E(reason=pd_ha_trn_restart_retry_time)

◆ pd_ha_switch_timeout = Y|N

このオペランドはサーバモードの場合に指定できます。モニタモードの場合にこのオペランドを指定しても無効になります。

系切り替え時のHiRDB(HiRDB/パラレルサーバの場合はユニット)の内部停止処理がサーバ障害監視時間を超えた場合に,HiRDBの内部停止処理を待たないで系を切り替えるかどうかを指定します。ここでいうサーバ障害監視時間とは,HAモニタ又はHitachi HA Toolkit Extensionのpatrolオペランドに指定した時間のことです。

HAモニタのpatrolオペランドについては,マニュアル「高信頼化システム監視機能 HAモニタ」を参照してください。Hitachi HA Toolkit Extensionのpatrolオペランドについては,マニュアル「Hitachi HA Toolkit」を参照してください。

Y:

系切り替え時のHiRDBの内部停止処理がサーバ障害監視時間を超えた場合,HiRDBの内部停止処理を待たないで系を切り替えます。このとき,HiRDBのスローダウンとして系を切り替えます。

1:1スタンバイレス型系切り替え機能又は影響分散スタンバイレス型系切り替え機能を使用している場合,計画系切り替え時はこのオペランドの指定が無効になります。

N:

系切り替え時のHiRDBの内部停止処理が終了するまで系を切り替えません。

《利点》

系の切り替え時にディスク障害などでHiRDBの内部停止処理に時間が掛かると,それが系の切り替え時間の遅延要因になります。このオペランドにY(省略値)を指定すると,HiRDBの内部停止処理に時間が掛かる場合でも,HiRDBの内部停止処理を待たないで系を切り替えられます。

《注意事項》
  • patrolオペランドの値が小さいときにこのオペランドにYを指定すると,計画系切り替えがスローダウンによる系切り替えになることがあります。これは,計画系切り替え時のHiRDBの内部停止処理がpatrolオペランドで指定した時間を超えてしまうためです。

  • HAモニタ又はHitachi HA Toolkit Extensionのswitchtypeオペランドにrestartを指定した場合は注意が必要です。pd_ha_switch_timeout = Y(省略値)を指定した場合,HiRDBの内部停止処理がサーバ障害監視時間を超えると,障害が発生した系でHiRDBを再開始しません。この場合,すぐに系を切り替えます。

    HAモニタのswitchtypeオペランドについては,マニュアル「高信頼化システム監視機能 HAモニタ」を参照してください。Hitachi HA Toolkit Extensionのswitchtypeオペランドについては,マニュアル「Hitachi HA Toolkit」を参照してください。

◆ pd_ha_prc_cleanup_check = Y|N

サーバモードの系切り替え機能を使用する場合に,切り替え対象のユニット又はユーザサーバのすべてのサーバプロセスが終了するまで,系切り替え処理を待ち合わせるかどうかを指定します。このオペランドにYを指定すると,サーバ障害による系切り替えのときに,系切り替え前に共有ディスクにアクセスしていたサーバプロセスがすべて終了していることを保証できます。

なお,切り替え対象はスタンバイ型系切り替え機能,及び1:1スタンバイレス型系切り替え機能の場合はユニット,影響分散スタンバイレス型系切り替え機能の場合はバックエンドサーバになります。

Y:すべてのプロセスが終了した後に系を切り替えます。

N:切り替え対象のプロセスの終了を待ち合わせません。

このオペランドを指定する場合は,マニュアル「HiRDB システム運用ガイド」の「共有ディスクのアクセス制御」を参照してください。

《前提条件》

次に示す条件をすべて満たしている必要があります。

  • pd_haオペランドにuseを指定している

  • pd_ha_acttypeオペランドにserverを指定している

  • pd_ha_unitオペランドを指定していない

また,このオペランドにYを指定する場合は,バージョン01-08以降のHAモニタを使用してください。

◆ pd_ha_mgr_rerun = wait|notwait

このオペランドはHiRDB/パラレルサーバ限定のオペランドです。

システムマネジャユニットの系が切り替わるときに,ほかのユニットの開始処理完了を待ち合わせるかどうかを指定します。

wait:

システムマネジャユニットの系を切り替えるときに,ほかのユニットの開始処理完了を待ち合わせます。この場合,システムマネジャユニットを開始するため,以下の確認が行われます。

  • 各ユニットのバージョンチェック

  • ディクショナリサーバが稼働中であるか

  • フロントエンドサーバが一つ以上稼働中であるか

  • バックエンドサーバが一つ以上稼働中であるか

システムマネジャユニットの系を切り替える場合に,ほかのユニットが停止しているとき,切り替えに時間が掛かる,又は失敗することがあります。一部のユニットが停止中に,システムマネジャユニットが系切り替えした場合の動作を次に示します。

縮退起動の指定(pd_start_levelの値)

開始しないユニット名称の指定

動作

なし(0)

開始できない

あり(1)

pd_start_skip_unitオペランドに指定なし

pd_reduced_check_timeオペランドで指定した時間だけ開始を待ち合わせた後に系が切り替わる

pd_start_skip_unitオペランドに停止中のユニットを指定

すぐに系の切り替えが完了する

(凡例)

−:該当しません。

注※

次の条件をすべて満たしていないと,系切り替えが完了しません。

  • ディクショナリサーバが稼働している

  • フロントエンドサーバが一つ以上稼働している

  • バックエンドサーバが一つ以上稼働している

notwait:

システムマネジャユニットの系切り替え時に,ほかのユニットの開始処理完了を待ち合わせません。このオペランドを指定すると,システムマネジャユニットの系切り替え時にほかのユニットが停止中でも,そのユニットの開始を待ち合わせることなく,系の切り替えが高速で行われます。

システムマネジャユニットの切り替えが完了すると,HiRDBの動作環境が整っていない場合でも,KFPS05210-Iメッセージ(システム初期化完了メッセージ)が出力されます。システムマネジャ切り替え完了後も,UAPがエラーになるなど,業務が続行できない場合は,pdlsコマンドでシステムの稼働状況を確認してください。

《前提条件》

このオペランドにnotwaitを指定する場合は,システム構成がある条件を満たしている必要があります。前提となるシステム構成については,マニュアル「HiRDB システム運用ガイド」を参照してください。

《指定値の目安》

システムマネジャユニットの系切り替えの失敗を防ぐ場合は,notwaitを指定してください。システムマネジャユニットの系切り替えに失敗するときの対処方法については,マニュアル「HiRDB システム運用ガイド」を参照してください。

◆ pd_ha_switch_error = ignore | retry

このオペランドはAIX版及びLinux版限定のオペランドです。それ以外のプラットフォームでは指定できません。

系切り替え失敗時の自動再起動機能を使用するかどうかを指定します。系切り替え失敗時の自動再起動機能については,マニュアル「HiRDB 解説」の「系切り替え失敗時の自動再起動機能」を参照してください。

ignore:

系切り替え失敗時の自動再起動機能を使用しません。

retry:

系切り替え失敗時の自動再起動機能を使用します。

系の切り替え中にHiRDB(HiRDB/パラレルサーバの場合はユニット)が異常終了した場合に,系切り替え先のHiRDBを再起動します。

《前提条件》

次に示す条件をすべて満たしている必要があります。

  • クラスタソフトウェアにHAモニタを使用

  • HAモニタのバージョンが,系切り替え失敗時の自動再開始機能に対応したバージョン以降

    AIXの場合:01-25以降

    Linuxの場合:01-55-01以降

  • HAモニタのserver定義文のswitch_errorオペランドにretryを指定

  • ユーザサーバホットスタンバイ又は高速系切り替え機能を使用

《指定値の目安》

システムの可用性を高めるため,このオペランドにretryの指定を検討してください。

《注意事項》
  • 前提条件を満たさないシステム構成でこのオペランドを指定しても,HiRDBは起動時にエラーになりません。必ず前提条件を満たした上で系切り替え失敗時の自動再起動機能を使用してください。

  • ユーザサーバホットスタンバイ及び高速系切り替え機能を使用していない場合,このオペランドの指定値に関わらず系切り替え失敗時の自動再起動機能は無効になります。

◆ pd_ha_observe_timeout = 系切り替え処理の監視時間

〜<符号なし整数>((0,30〜3600))《0又は900》(単位:秒)

系切り替えの実行時間監視機能の,系切り替え処理の監視時間を指定します。

系切り替えの実行時間監視機能については,マニュアル「HiRDB 解説」の「系切り替えの実行時間監視機能」を参照してください。

このオペランドに0を指定した場合は,系切り替えの実行時間監視機能を使用しません。

系切り替えの実行時間監視機能では,次に示す区間AとBの処理時間の合計が指定値を越えた場合に,HiRDB(HiRDB/パラレルサーバの場合はユニット)をアボートコードPsp5015で異常終了させます。

図9‒3 系切り替えの実行時間監視機能による監視区間

[図データ]

注※

HAモニタ及びHitachi HA Toolkit Extensionが出力するメッセージです。

〔説明〕

区間A:

次の処理を行う区間です。監視対象に含まれます。

  • システムサーバの起動処理(ユーザサーバホットスタンバイの場合)

  • システムファイルの引き継ぎ処理

区間B:

次の処理を行う区間です。監視対象に含まれます。

  • HiRDB起動完了処理

区間Z:

次の処理を行う区間です。監視対象に含まれません。

  • ロールフォワード処理

《オペランドの規則》
  • このオペランドの省略値は,系切り替え失敗時の自動再起動機能を使用(pd_ha_switch_errorオペランドにretryを指定)しているかどうかで異なります。

    系切り替え失敗時の自動再起動機能を使用している場合:900(秒)

    系切り替え失敗時の自動再起動機能を使用していない場合:0

  • このオペランドに1〜29を指定した場合は,30に切り上げます。

《前提条件》

次に示す条件をすべて満たしている必要があります。

  • ユーザサーバホットスタンバイ又は高速系切り替え機能を使用している

  • マルチスタンバイ構成又は系切り替え失敗時の自動再起動機能を使用している

《指定値の目安》

HiRDBの可用性を高めるため,系切り替え時間の実測値又は想定される系切り替え時間に対し,300秒以上の余裕値を加えて指定することをお勧めします。

《注意事項》
  • 前提条件を満たさないシステム構成でこのオペランドを指定しても,HiRDBは起動時にエラーになりません。必ず前提条件を満たした上で系切り替えの実行時間監視機能を使用してください。

  • ユーザサーバホットスタンバイ及び高速系切り替え機能を使用していない場合,このオペランドの指定値に関わらず系切り替えの実行時間監視機能は無効になります。

◆ pdhagroup -g HAグループ識別子 -u ユニット識別子〔,ユニット識別子〕…

影響分散スタンバイレス型系切り替え機能を使用する場合にこのオペランドでHAグループを定義します。

一つのシステムに定義できるHAグループ数の上限はありません。

HAグループについては,マニュアル「HiRDB システム運用ガイド」を参照してください。

-g HAグループ識別子

〜<識別子>((1〜8文字))

HAグループ識別子を指定します。システム内でHAグループを一意に識別できるように指定してください。複数のpdhagroupオペランドに同一のHAグループ識別子を指定すると,エラーになります。

-u ユニット識別子〔,ユニット識別子〕…

〜<識別子>((4文字))

HAグループを構成するユニットのユニット識別子を指定します。指定できるユニット数は2〜32です。ユニットを重複して指定すると,エラーになります。なお,このオプションに指定するユニットは次に示す条件をすべて満たす必要があります。

  • HAグループ内の全ユニットが同じネットワークセグメントに属している

  • ほかのHAグループに属していない

  • 影響分散スタンバイレス型系切り替え機能を適用している(pd_ha_agent = activeunitsを指定している)

  • ユニット内に一つ以上のホストBESがある(受け入れ専用ユニットは定義できない)

  • ユニット内のホストBES数と受け入れ可能なゲストBESの最大数(pd_max_act_guest_serversオペランドの値)の合計は34以内である

  • ユニット内のサーバはすべてバックエンドサーバである

  • ユニット内のサーバはすべてHAグループに属している

《各見積もり式への影響》

pdhagroupオペランドの指定値を変更すると,次の見積もり式に影響があります。

マニュアル「HiRDB システム導入・設計ガイド」:

  • 「HiRDB/パラレルサーバのメモリ所要量の見積もり」の「ユニットコントローラが使用する共用メモリの計算式」