26.7.9 システムマネジャユニットの系切り替えに関する注意事項
システム内に停止中のユニットが一つでも存在する状態でシステムマネジャユニットの系切り替えが発生すると,系の切り替え先でシステムマネジャユニットを開始できません。その結果,システムマネジャユニットの系切り替えが失敗します。ただし,停止中のユニットが回復不要FESユニットだけの場合は,システムマネジャの系切り替えは失敗しません。
次に示すどちらかの対処をすると,システム内に停止中のユニットがある状態でもシステムマネジャユニットの系切り替えが失敗しません。
-
pd_ha_mgr_rerunオペランドにnotwaitを指定する
-
縮退起動を指定する
対処方法ごとに前提条件,及び運用時の制限が異なります。使用しているシステムに合わせた方法で対処してください。
(1) pd_ha_mgr_rerunオペランドを指定して対処する方法
(a) オペランドの指定値による処理の違い
pd_ha_mgr_rerunオペランドにnotwaitを指定すると,システムマネジャユニットの系切り替え時(切り替え先の系での開始処理時)に,各ユニットからの開始処理完了の連絡待ちを行いません。pd_ha_mgr_rerunオペランドの指定値によるHiRDBの処理を次の表に示します。
項目 |
pd_ha_mgr_rerunの値 |
|
---|---|---|
wait(省略値) |
notwait |
|
停止中のユニットがある状態でシステムマネジャユニットの系切り替えが発生した場合 |
系切り替えを実行できません(系の切り替えに失敗します)。 |
系切り替えを実行できます。※1,2 |
- 注※1
-
pd_ha_mgr_rerunオペランドにnotwaitを指定すると,各ユニットのバージョンチェック処理,及びシステムの構成チェック処理が行われないため,システムマネジャユニットの系切り替えに掛かる時間を短縮できます。
- 注※2
-
システムマネジャユニットの系切り替えが完了すると,HiRDBの稼働環境が整っていない場合(フロントエンドサーバが一つも稼働していないなど)でも,KFPS05210-Iメッセージ(システム起動完了メッセージ)を出力します。
(b) 前提となるシステム構成
pd_ha_mgr_rerunオペランドにnotwaitを指定する場合,次に示す条件をすべて満たすようにシステムを構築してください。条件を満たすことができない場合は,「縮退起動で対処する方法」を検討してください。
-
システムマネジャユニットに高速系切り替え機能を適用する
-
系切り替え対象ユニットには高速系切り替え機能だけを適用する(ユーザサーバホットスタンバイや,スタンバイレス型系切り替え機能と混在しない)
-
システムマネジャとディクショナリサーバを同じユニット内に定義する
-
2ユニット以上から成るHiRDB/パラレルサーバを構築する
-
HiRDB Datareplicatorを使用しない
(c) 環境設定
次に示す手順で環境設定をしてください。
(d) システムマネジャユニットの系切り替えが発生したときの注意事項
システムマネジャユニットの系切り替え後に業務ができない場合
システムマネジャユニットの系切り替えが完了すると,HiRDBの稼働環境が整っていない場合(フロントエンドサーバが一つも稼働していないなど)でも,KFPS05210-Iメッセージ(システム起動完了メッセージ)を出力します。このため,システムマネジャユニットの系切り替え完了後,UAPがエラーになるなど業務ができない場合,pdlsコマンドで各サーバの稼働状態を確認してください。
HiRDBの開始又は終了処理中にシステムマネジャユニットの系切り替えが発生した場合
HiRDBの開始処理中(又は終了処理中)にシステムマネジャユニットの系切り替えが発生すると,ほかのユニットの動作状態に関係なく,システムマネジャユニットが開始(又は終了)します。そのため,システムマネジャユニット以外のユニットが開始(又は終了)できないことがあります。この場合,一度HiRDBを強制終了してください。
また,HiRDBの開始又は終了時に次に示す運用を行うと,この状態を回避できます。
-
HiRDBの開始時
HiRDBの開始処理が完了した後に,待機系のシステムマネジャユニットを開始してください。
-
HiRDBシステムの停止時
待機系のシステムマネジャユニットを終了した後に,HiRDBを終了してください。
停止中のユニットの状態について
システムマネジャユニットの系切り替え時に停止中のユニットに対して,系の切り替え後にpdls -d svrコマンドを実行すると,そのユニットが停止中の間はSTOP(N)状態(pdstopコマンドで正常終了した状態)と表示されます。
該当するユニットを開始したのに,ネットワーク障害が原因でSTOP(N)状態のままになっている場合は,ネットワーク障害を解決した後に,STOP(N)状態のユニットを一度終了して再度開始してください。
(2) 縮退起動で対処する方法
システム内に停止中のユニットがある場合,次に示すオペランドを指定すると,システムマネジャユニットの系切り替えが実行できます。
-
pd_start_level = 1
-
pd_start_skip_unit = 停止中のユニット識別子
-
pd_reduced_check_time = 縮退起動開始の連絡待ち時間
各オペランドの指定値と系切り替え時のHiRDBの処理を次の表に示します。
条件 |
システムマネジャユニットの系切り替えが 発生したときのHiRDBの処理 |
|
---|---|---|
pd_start_level の指定値 |
pd_start_skip_unit の指定 |
|
0(省略値) |
− |
停止中のユニットがある場合,システムマネジャユニットの系切り替えが失敗します。 |
1 |
指定なし |
停止中のユニットがある場合でも,システムマネジャユニットの系切り替えが実行されます。ただし,各ユニットからの開始処理完了の連絡待ち時間が発生します。連絡待ち時間はpd_reduced_check_timeオペランド(省略値は20分)で指定します。 |
指定あり |
停止中のユニットをpd_start_skip_unitオペランドに指定している場合,システムマネジャユニットの系切り替えが実行されます。連絡待ち時間は発生しません。 |
- 参考
-
-
一部のユニットが停止している状態で,システムマネジャユニットの系切り替えが発生すると,各ユニットの稼働状態を認識できないため,系の切り替えに失敗したり,系の切り替え時間が掛かったりします。
-
pd_start_levelオペランドに1を指定した場合でも,次に示す条件を一つでも満たさない場合は,システムマネジャユニットの系切り替えに失敗します。
・フロントエンドサーバが一つ以上稼働している
・バックエンドサーバが一つ以上稼働している
・ディクショナリサーバが稼働している
-
システムマネジャの系切り替え発生時,pd_start_skip_unitオペランドに指定されたユニットの起動有無にかかわらず,pd_start_skip_unitオペランドに指定されたユニットは認識されません。pd_start_skip_unitオペランド指定後にシステム内の停止中のユニットが起動できる状態になった場合は,pd_start_skip_unitオペランドの指定を削除してください。
-
縮退機能を使用する場合は,「縮退起動をするときの運用方法(HiRDB/パラレルサーバ限定)」を参照してください。
-
pd_start_skip_unitオペランドを指定する場合は,一度HiRDBを終了する必要があります。そのため,24時間連続稼働するシステムの場合は,「pd_ha_mgr_rerunオペランドを指定して対処する方法」を検討してみてください。