NRI 野村総合研究所
ジョブ管理の技11

障害が発生したサーバーのジョブを
別サーバーに振り替えたい

現状の課題

クリティカルなシステムでは、ノード障害への対応としてクラスタ構成による冗長化が行われている。しかし、クラスタ化にはコストが掛かるので、クラスタ構成を組めるのは一部のサーバーに限定される。そのため、クラスタ構成ではなく代替サーバーを用意しておき、ノード障害時にサーバーを切り替えて運用するケースがある。
ジョブの運用においても、ノード障害が発生してジョブが異常終了した場合、リカバリ策として、異常終了したジョブを別サーバーで手動実行することがある。ジョブ管理ツール上は異常終了したジョブをスキップ終了させる。その場合、後続のジョブが稼働しても、そのまた後続にノード障害を起こしたサーバーのジョブがあると、再度ジョブが異常終了してしまう。

解決策

ノード障害を起こした場合は、障害が発生したサーバーで稼働する予定のジョブを、別のサーバーで実行するように切り替えることにより解決できる。具体的には、指定したサーバー(障害が発生したサーバー)で今後稼働する予定のジョブの一覧を抽出し、そのジョブ全てを別サーバーで稼働するように振り替えるのである。毎回手動で作業を行うとタイムラグが発生し、ミスの危険性もあるが、イベントをトリガーにした自動実行により、対応の迅速化と効率化が実現できる。

Senju Familyでの実践方法

Senju DevOperation Conductorでは、ジョブの実行サーバーとして、サーバーグループを指定することができる。サーバーグループ内の稼働しているサーバーの中で、一番負荷が低い(ジョブの実行数が少ない)サーバーに自動的にジョブの実行を振り分けることができる。
また、ジョブの実行(予定)サーバーを一括で置き換えるコマンドも実装している。メッセージアクション機能やランブックオートメーション機能と組み合わせて、サーバーのリソース監視(CPUやメモリーなど)で異常を検知したら一括で置き換えコマンドを自動実行する。そうすることで、実行サーバーの切り替えを自動化できる。

図1
ジョブの技 資料一式ダウンロード ツール活用術一覧へ戻る
Contact

Senju Family / mPLATに関するお問い合わせ

ご購入前の製品・サービスに関するお問合せは
Senjuインフォメーションセンター までお願いします。

お問い合わせフォームはこちら

フリーダイヤル・メールでもお受けしております。

0120-736-580

受付時間 平日10:00〜17:00 土日祝祭日、弊社休日を除く

senjuinfo@nri.co.jp