Helix Coreサーバ管理者ガイド (2020.1)

ハートビートでのトリガ(サーバの応答性)

ハートビートに関するトリガをソリューションの一部として使用して、サーバが応答可能な状態になっているかどうかをモニタリングすることができます。 例えば、ハートビートを使用して、マスターサーバからスタンバイサーバにフェイルオーバーできるかどうかを確認するためのアラートを管理者に対して表示することができます。 詳細については、「フェイルオーバー」と「フェイルオーバー時のトリガ起動」を参照してください。

ターゲットサーバの動作 モニタリングサーバが起動するトリガまたは拡張機能

ターゲットサーバが初めてハートビートに対する応答を返さなかった場合

(『Helix Core P4コマンドリファレンス』のnet.heartbeat.missing構成可能変数とnet.heartbeat.interval構成可能変数を参照)

heartbeat-missing

ターゲットサーバからの応答が再開された場合

(『Helix Core P4コマンドリファレンス』のnet.heartbeat.resumed構成可能変数とnet.heartbeat.missing.wait構成可能変数を参照)

heartbeat-resumed

ターゲットサーバから応答が連続して返されず、その回数が、設定されている最大数に達した場合

(『Helix Core P4コマンドリファレンス』のthe net.heartbeat.missing.count構成可能変数を参照)

heartbeat-dead

特殊変数の%targetport%を使用して、モニタリング対象のターゲットサーバのサーバポートを指定します。 これは、P4TARGETまたはp4 heartbeatコマンドで使用される-t targetの値に対応します。

上記のトリガタイプを定義するには、p4 triggersコマンドを使用してトリガフォームを設定します。

以下に例を示します。

  • hm heartbeat-missing heartbeat "perl hm.pl %targetport%"
  • hr heartbeat-resumed heartbeat "perl hr.pl %targetport%"
  • hd heartbeat-dead heartbeat "perl hd.pl %targetport%"

ハートビートに関するトリガは、必要な数だけ作成することができます(まったく作成しなくてもかまいません)。

以下の表に、failed-overトリガ定義の各フィールドを示します。

フィールド 意味

name

トリガスクリプトの名前(hmなど)

type

次のいずれかでなければなりません: heartbeat-missingheartbeat-resumedheartbeat-dead

path

heartbeatでなければなりません

command

トリガの起動時に実行されるHelixサーバ用トリガ。 ここでは通常、スクリプトへの呼び出しをトリガコマンドとして指定します。 このトリガコマンドは、引用符で囲む必要があります。 その際、トリガコマンドで解析可能な引数を指定することができます(Helixサーバのトリガ変数など)。