• 検索結果がありません。

サーバがダウンした場合に自動的に別サーバにジョブを再投入させたい

ドキュメント内 活用ガイド (ページ 34-39)

第1章 設計編

1.11 サーバがダウンした場合に自動的に別サーバにジョブを再投入させたい

以下のように、スケジュールサーバから実行サーバにジョブを投入する構成で、ジョブの実行中に実行サーバBがダウンした場合、自 動的に実行中のジョブを実行サーバAまたは実行サーバCに再投入させる方法について説明します。

実行サーバがダウンした場合に、自動的に別サーバにジョブを再投入させるには、以下の方法があります。

・ 分散実行

・ 実行サーバの二重化

ポイント

どの方法が良いか迷ったら・・・

以下に、それぞれの運用方法について概要を示すので、用途に合わせて選択してください。

メリット デメリット

分散実行 最大10台まで分散先サーバを設定可能。

特定のサーバがダウンした場合、最大10 分間該当サーバがダウンしたと認識し、該 当サーバへの投入を行わないようにできる

(ダウンしているサーバへの投入を試みる ことはない)。

ジョブがどのサーバで実行されるか予測 が出来ない。

実行サーバの二 重化

通常第1候補のサーバで実行。第1候補の サーバがダウンしている場合だけ、第2候 補で実行。異常時だけ代替サーバで実行 するという運用が可能。

第1候補のサーバがダウンした場合、まず は第1候補のサ-バに投入を試みてから 第2候補に遷移するため、投入に時間が かかる。

分散実行

本来は負荷分散を目的とし、複数の実行サーバをグループ化して負荷の低い実行サーバにジョブを割り振る機能ですが、グループ 内の実行サーバがダウンした場合には、ダウンしたサーバ以外のグループ内の実行サーバで再度割り振りを行い、ジョブが再投入さ れます。

分散実行を利用する場合は、分散実行用のキューを作成する時に、分散先となる実行サーバグループを登録します。手順について は、“1.9 ジョブを自動的に負荷の少ないサーバに分散して実行させたい”を参照してください。

参考

実行サーバがダウンしているかどうかの判断は?

デフォルトでは10秒間隔で6回のリトライをします。リトライしても実行サーバに接続できなかった場合に、実行サーバがダウンしている と判断し、ダウンした実行サーバ以外で一番負荷の低い実行サーバにジョブを依頼します。

リトライの回数等については、[運用情報の定義]ウィンドウ-[ネットワーク]シートの[ネットワークジョブで接続エラー時のリトライの動作 を変更する]で定義できます。

実行サーバの二重化

ネットワークジョブの場合、実行サーバとして第1候補、第2候補を指定しておくことで、第1候補の実行サーバがダウンしていた場合に、

第2候補の実行サーバへ自動的にジョブの実行を依頼することができます。

ネットワークジョブの実行サーバを二重化する場合は、第1候補、第2候補の実行サーバをジョブの登録時に定義します。

注意

1候補から第2候補へ遷移するときに発生するオーバーヘッド

第1候補のサーバが停止状態でジョブが投入された場合に、第1候補が停止状態だと分かっていても、いきなり第2候補の実行サーバ に依頼はされません。毎回、第1候補へのリトライ処理を行ってから第2候補の実行サーバへ依頼されるため、第2候補へ遷移するとき には必ずオーバーヘッドが発生します。

オーバヘッドはOS、サーバ、ネットワークの状態に依存します。

手順

以下のいずれかの方法で、第1候補、第2候補の実行サーバを登録してください。

注意

登録できない実行サーバ

第1候補および第2候補に、ローカルホスト名は指定できません。

ジョブ単位で実行サーバを二重化させたい場合

1. 実行サーバを二重化させたいジョブの[登録-ジョブ]ウィンドウ-[基本情報]シートを表示します。

2. [登録-ジョブ]ウィンドウ-[基本情報]シートで以下を指定します。

- [ジョブをネットワークジョブとして投入する]をチェック

- [依頼ホスト名]に、第1候補および第2候補の実行サーバを、以下の形式で指定

第1候補のホスト名,第2候補のホスト名

参考

ジョブ制御文で登録する場合

1. ジョブ制御文のreq_hostオペランドに、“第1候補のホスト名,第2候補のホスト名”の形式で実行サーバを設定します。

2. -nentまたは-ncheオペランドを指定してjobschsetnetコマンドを実行します。定義ファイルには、1.で編集したジョブ制御

文を格納したファイル名を指定します。

ジョブネット単位で実行サーバを二重化させたい場合

1. 実行サーバを二重化させたいジョブネットの[ジョブネットのプロパティ]ウィンドウ-[基本情報]シートを表示します。

2. [ジョブネットのプロパティ]ウィンドウ-[基本情報]シートで以下を指定します。

- [ジョブネット内のジョブをネットワークジョブとして投入する]をチェック

- [デフォルトホスト名]に、第1候補および第2候補の実行サーバを、以下の形式で指定 第1候補のホスト名,第2候補のホスト名

参考

ジョブネット制御文で登録する場合

1. ジョブネット制御文のdefaulthostオペランドに、“第1候補のホスト名,第2候補のホスト名”の形式で実行サーバを設定し ます。

2. -nentまたは-ncheオペランドを指定してjobschsetnetコマンドを実行します。定義ファイルには、1.で編集したジョブネット 制御文を格納したファイル名指定します。

参考

実行サーバがダウンしているかどうかの判断は?

以下の場合に、第1候補の実行サーバがダウンしていると判断し、第2候補の実行サーバにジョブを依頼します。

・ 第1候補のサーバへのネットワークが到達できない状況

・ 第1候補のサーバ自体のダウン

・ 第1候補のジョブ実行制御デーモンが停止

参考

実行サーバがすべてダウンしていた場合

実行時に第1候補、第2候補ともにダウンしていた場合、ジョブは異常終了となります。

マニュアルの参照先

<分散実行>

Systemwalker Operation Manager 導入手引書“運用情報の定義”

<実行サーバの二重化>

Systemwalker Operation Manager 使用手引書 “ネットワークジョブの実行サーバを二重化する”

ドキュメント内 活用ガイド (ページ 34-39)

関連したドキュメント