jobschedulerについてー紹介編ー【ころなとサリー AdventCalendar 2015/12/9】
お仕事で使ったシリーズ2回目だよ。
2日ぶりのころなです。
今回は、前回の記事と同様にお仕事で使ったOSSのお話でjobscheduler編になります。
趣向を変えて、このたびは、jobschedulerについて紹介をしていきます。
jobschedulerとは
端的にいうと、OSSのジョブスケジューラソフトです。
ドイツのSoftware Open Source社(https://www.sos-berlin.com/)が開発したソフトウェアになります
Windowsとlinuxについては、ossの無料版が提供されています。
業務の案件では、linux版を利用していました。
今回の特集記事では、windows版を利用していきます。
用途の例を教えて!?
所謂バッチ処理で利用しますが、業務で使った時の感触でいくと、下記のようなものと相性がいいという印象でした。
- リアルタイムで集計するには、処理が重い
- 他のデータベースでの処理が完了している場合だけ動かしたい(ジョブチェーン)
- 週末だけ社員が休んでいるから動いてほしい
- XMLで管理されているのでディレクトリを決めてしまえば、インフラ権限がなくてもジョブ管理ができる etc
- 監視ツールと連携ができるため、サーバに障害があった場合に通知を取得することができる
- サーバ障害などで、動かなかったジョブをGUIから将来的に再実行できるような基盤を置いときたい。
利用した時の構成は?
ざっくりと説明すると、3つのレイヤーになります。
- 実行するプログラムの各種設定が記載されているXMLファイルを管理するバージョン管理サーバ(Git)
- 実際のジョブを実行するWEBサーバ
- 各種ジョブの実行結果や履歴を取っておくデータベースサーバ
下記に概念的にはなりますが、jobschedulerを動かした時のサーバ構成を貼っておきます。