Hitachi

Hitachi HA Toolkit


6.2.2 サーバ対応の環境設定

サーバ対応の環境設定では,サーバ対応の環境を設定する定義ファイルを作成します。作成したファイルにserversというファイル名を付けて,ディレクトリ/opt/hitachi/HAmon/etcに格納します。なお,この定義ファイルは系ごとに作成するため,定義の際には系間で整合性を取ってください。

サンプルファイル

定義を記述したサンプルファイルを使用すると,定義ファイルを最初から作成する手間が省けます。サンプルファイルをディレクトリ/opt/hitachi/HAmon/etcにコピーして,書き換えて使用してください。

サンプルファイルは,serversというファイル名で,次のディレクトリに格納されています。

/opt/hitachi/HAmon/lib

〈この項の構成〉

(1) 定義ファイル(servers)の形式

定義ファイル(servers)では,サーバごとの環境設定を定義します。HA Toolkit Exで監視するすべてのサーバをこの定義ファイル(servers)で定義します。

サーバ対応の環境を設定する定義ファイル(servers)の形式を次に示します。

server  name           サーバのホームディレクトリ名
                       またはHiRDB識別子/ユニット識別子
        ,alias         サーバ識別名
       [,actcommand    サーバ起動コマンドの完全パス名]
       [,termcommand   サーバ停止コマンドの完全パス名]
        ,patrol        サーバ障害監視時間
       [,actpatrol   {サーバ起動監視時間|0}]
       [,switchtype  {switch|manual|restart[:サーバ再起動監視時間]}]
       [,switch_nosby{act|actfail}]
;

(2) server定義文での設定内容

サーバの定義をします。server定義文のオペランドを,次に示します。

nameオペランド 〜<1〜1000文字のパス名>

サーバを特定するために,サーバのホームディレクトリ名を指定します。OpenTP1の場合は$DCDIR,HiRDBの場合は$PDDIRを指定します。

HiRDBのスタンバイレス型系切り替えの場合

HiRDBのHiRDB識別子とユニット識別子を,"/"で組み合わせて指定します。

aliasオペランド 〜<1〜8文字の英数字>

HA Toolkit Ex内でサーバを識別するためのサーバ識別名を指定します。MC/ServiceGuardのパッケージ制御スクリプトのサービス名(SERVICE_NAME)と同値にすることを推奨します。

actcommandオペランド 〜<1〜1000文字のパス名>

サーバの起動コマンドを完全パス名で指定します。

ここで指定するサーバの起動コマンドは,パッケージ起動時および系切り替え時に,HA Toolkit Exのサーバ起動コマンド(hateservコマンド)の延長によって自動で実行されます。サーバの起動コマンドに指定するパラメータおよび環境変数はありません。

actcommandオペランドを省略した場合,サーバの起動コマンドは実行されません。MC/ServiceGuardのパッケージ起動の延長では,サーバを自動で起動しないので,オペレーターがサーバの起動コマンドを実行する必要があります。

サーバの起動コマンドの設定については,「6.2.4 サーバの起動コマンドの設定」を参照してください。

HiRDBの影響分散スタンバイレス型系切り替えの場合

actcommandオペランドは指定しないでください。

termcommandオペランド 〜<1〜1000文字のパス名>

サーバの強制停止コマンドを完全パス名で指定します。正常停止コマンドを指定した場合,正しく系切り替えできません。

ここで指定するサーバの停止コマンドは,パッケージ停止時にHA Toolkit Exによって自動的に実行されます。サーバの停止コマンドに指定するパラメータおよび環境変数はありません。

termcommandオペランドに指定するサーバの停止コマンドに誤りがあったため,サーバを停止できなかった場合,MC/ServiceGuardによって,パッケージが強制停止されます。

なお,次の場合にはサーバの停止コマンドは実行されません。

  • MC/ServiceGuardのパッケージ停止前に,サーバの停止コマンドでサーバを停止した場合

  • サーバの障害のためサーバが異常終了した場合

  • termcommandオペランドを省略した場合

サーバの停止コマンドの設定については,「6.2.5 サーバの停止コマンドの設定」を参照してください。

patrolオペランド 〜<符号なし整数> ((10〜600)) (単位:秒)

スローダウンなどのサーバ障害の監視時間を秒単位で指定します。

actpatrolオペランド 〜<符号なし整数> ((0〜600)) 《0》 (単位:秒)

パッケージ開始時点からサーバが起動完了するまでの監視時間を,秒単位で指定します。指定した監視時間を過ぎてもサーバが起動完了しない場合は,監視時間の間隔ごとに,HA Toolkit Exのメッセージがログに出力されます。

actpatrolオペランドを省略した場合は,0秒を仮定して,監視はしません。

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

actpatrolオペランドには0を指定してください。

switchtypeオペランド 〜《switch》

サーバの障害を検知した場合のHA Toolkit Exの動作を指定します。すべての系で同じ指定にしてください。

HiRDBのスタンバイレス型系切り替えの場合

switchtypeオペランドは指定しないことを推奨します。

switchtypeオペランドは,サーバの開始形態によって指定できる値が異なります。サーバの開始形態とswitchtypeオペランドで指定できる値を次に示します。

表6‒2 サーバの開始形態とswitchtypeオペランドで指定できる値(HP-UX)

switchtypeオペランドで指定できる値

サーバの開始形態

AUTO

MANUAL1

MANUAL2

switch

×

×

manual

×

×

restart

×

×

(凡例)○:指定できる  ×:指定できない

サーバの開始形態については,マニュアル「OpenTP1 システム定義」およびマニュアル「HiRDB システム定義(UNIX(R)用)」を参照してください。

  • switch

    サーバを停止して,系切り替えをします。

  • manual

    サーバを再起動待ち状態にして,サーバが自動で再起動するのを待ちます。系切り替えはしません。

    サーバが再起動に失敗した場合は,サーバ自身で再起動を再試行します。サーバで定義されているサーバの再起動試行回数を超えると,サーバを停止して,オペレーターの操作を待ちます。

    manualを指定したサーバでスローダウンを検知した場合,HA Toolkit Exは何もしないでサーバの監視を続けます。

  • restart [:サーバ再起動監視時間]〜<符号なし整数>((60〜3600)) (単位:秒)

    サーバを再起動待ち状態にして,サーバが自動で再起動するのを待ちます。

    サーバの再起動が失敗した場合は,サーバ自身で再起動を再試行します。サーバで定義されているサーバの再起動試行回数を超えた場合またはサーバ再起動監視時間を超えてもサーバが再起動しない場合は,系切り替えをします。

    restartを指定した場合は,「:」で区切ってサーバの再起動監視時間を指定できます。再起動監視時間には,60秒から3,600秒の範囲で指定します。サーバの再起動監視時間を超えてもサーバが再起動しない場合は,系切り替えをします。サーバの再起動監視時間を省略した場合は,サーバが再起動するまでの時間を監視しません。

switch_nosbyオペランド 〜《act》

待機サーバが起動していない系で,系切り替えのときは系切り替えを続行するかどうかを,MC/ServiceGuardからサーバのパッケージの起動をするときは起動操作を続行するかどうかを,switch_nosbyオペランドで指定します。

switch_nosbyオペランドで指定できる値について説明します。

  • act

    系切り替え時,切り替え先の系で待機サーバが起動していない場合に,actcommandオペランドに指定されたコマンドを実行して,実行サーバとして起動処理を続行します。actcommandオペランドが指定されていない場合は,実行サーバの起動を待ちます。

  • actfail

    系切り替え時,切り替え先の系で待機サーバが起動していない場合に,起動失敗とします。actfailを指定した場合で,待機サーバがない系でMC/ServiceGuardからパッケージを起動したいときは,事前に待機サーバがない系でhateactonl -eコマンドを実行し,実行サーバの起動を許可しておく必要があります。

HiRDBの影響分散スタンバイレス型系切り替えの場合

actfailを指定してください。actfailを指定しないで,影響分散スタンバイレス型系切り替えにすると,切り替え先の系で待機サーバが起動していない場合に,実行サーバの起動を待ち続けます。