JobScheduler

出典: フリー百科事典『ウィキペディア(Wikipedia)』
JobScheduler
開発元 Software- und Organisations-Service GmbH[1]
初版 2005年 (19年前) (2005)[2]
最新版
2.5.5/2.6.2 [3] / 2022年5月4日 (23か月前) (2022-05-04)
プログラミング
言語
Java, Scala, JavaScript
対応OS マスター: Linux, Windows; エージェント: あらゆるプラットフォーム
プラットフォーム 32 bit, 64 bit x86_64, arm, ppc64le
対応言語 英語、日本語、ドイツ語、フランス語
サポート状況 アクティブ
種別 ジョブ管理システム
ライセンス GPL またはクローズドソース[4]
公式サイト www.sos-berlin.com/jobscheduler
テンプレートを表示

JobSchedulerは、エンタープライズレベルのスケジューリングとプロセス自動化のためのオープンソースアプリケーションソフトウェアである。実行ファイルやスクリプトを起動し、ユーザープログラムを自動的に実行するために使用される。JobSchedulerは、ステータスと履歴情報をバックエンドデータベース管理システムに保存する。

JobSchedulerのクラスタリングを除くすべての機能は、GPL V.3ライセンスの下で使用可能となっている。クラスタリングとエンタープライズレベルのサポートとサービスを求めるユーザーは、商用ライセンスを利用可能である。

主な機能[編集]

  • JobSchedulerは、実行ファイル、シェルスクリプト、およびデータベースプロシージャを実行できる。[5]
  • ジョブの開始は、カレンダーイベント、受信ファイルの監視、他のジョブスケジューリングイベント、外部アプリケーションによって開始されたAPIイベントなどのイベントによってトリガーできる。[6]

歴史と発展[編集]

JobSchedulerは、Joacim Zschimmerから提供されたコードを使用してSOS GmbHによって開発された。[6] 独立した製品としてのJobSchedulerの開発は2005年に開始され、同年にオープンソースGPL 2ライセンスの下でリリースされた。 JobSchedulerの64ビットバージョンは2013年にリリースされ[7]、ユニバーサルエージェントは2015年9月にリリースされた[8]

SOS GmbHとJobSchedulerは、2012年にガートナーのITリサーチおよびアドバイザリー会社により、世界的な作業自動化市場に関するMagic Quadrantレポートにおいて選ばれている。JobSchedulerは、「...オープンソースツールの採用ポリシーを持つ組織にとって魅力的」と説明されていた。[9]

2021年10月従来のコードベースを完全に書き換えたV.2系が発表され、JS7® JobSchedulerとリブランディングされた。

説明[編集]

アーキテクチャ[編集]

  • JS7® JobSchedulerは、JOCコックピット、コントローラー、エージェントから構成される。
  • JOCコックピット
    • WEB GUI/REST API
    • ジョブ実行制御配布
    • 履歴情報収集・保存
    • ジョブ定義・リソースの作成
    • ジョブ定義の管理とコントローラーへの配布
    • クラスター制御、イベントキュー、ロギングなど
  • コントローラー
    • DB接続を廃止
    • ジョブ定義をJOCコックピットから取得
    • 実行履歴をJOCコックピットに送信
    • 実行計画とジョブ定義をエージェントに配布
  • 自律型エージェント
    • コントローラーとの通信障害時にも自律的にジョブ実行制御
    • エージェントクラスター内で実行計画とジョブ定義を同期
    • 実行履歴をコントローラーに送信
  • 公開鍵認証の導入
    • 各モジュール間通信の公開鍵認証
      • JOCコックピットまたは外部認証局で証明書を作成・署名
      • ルート証明書と中間証明書を各コントローラーとエージェントに配布
    • ジョブ定義ファイルの公開鍵認証
      • JOCコックピットまたは外部認証局でジョブ定義ファイル毎に署名
      • 各コントローラー及びエージェントで配布された署名が一致するかを確認

動作モード[編集]

  • JS7® JobSchedulerコントローラー・エージェントは、バックグラウンドUnixデーモンまたはWindowsサービスとして無人で実行される。
    • JS7® JobSchedulerは、一連の操作を実行するバッチ処理に使用できる。
    • 個々の操作に対してほぼリアルタイムの処理を開始できる。着信ファイルの到着などの外部イベントに応答して、ほぼリアルタイムのトリガーをオンザフライで生成できる。
  • 監視と手動介入は、JOCコックピットのWebベースのGUI、REST API、Powershellコマンドレットを利用して実行できる。

主な機能[編集]

  • ワークフロー:複数のジョブノードが渡されるアセンブリラインとして見ることができる。ワークフロー内の各ジョブは、処理のステップを構成する。
  • ワークフローはDAG(有向非巡回グラフ、Directed Acyclic Graph)モデルを採用し、BPMN(ビジネスプロセスモデリング表記法、Business Process Model and Notation)ベースのワークフローパターンを採用している(ただし準拠ではない)
  • ワークフロー・ジョブ定義のフォーマットはJSONベースのHOCON(Human-Optimized Config Object Notation)形式であり、JOCコックピットのGUIエディタまたはテキストエディタで作成・編集できる。
  • クロスプラットフォームスケジューリング:
    • 異なるオペレーティングシステムのリモートホストでジョブを直接実行するユニバーサルエージェント。
    • 異なるオペレーティングシステムでジョブを実行するためのエージェントレススケジューリング。
  • 高可用性のためのアクティブ/パッシブクラスタ。
  • SQLデータベースでのジョブ履歴、およびログ情報の記録。
  • ジョブのトリガーは、ディレクトリ監視およびファイル監視などによって開始する。
  • ビルトインのファイル転送機能。
  • スクリプト機能(シェル、JavaScript、PowerShellなど) )。
  • NagiosZabbixSCOMなどのシステムモニターと統合するための監視インターフェイス。
  • ファイル転送やログローテーションなどの操作をカバーする標準ジョブテンプレートのライブラリ。
  • SAP S/4 HANA®に提供される SAP Job Scheduling Service REST API を使用したJS7ワークフローテンプレート。

実装[編集]

  • JS7®JobSchedulerはScalaとJavaで開発されている。JS7®JobSchedulerで配布される標準ジョブはJavaで実装されている。
  • JS7®JobSchedulerによって処理される個々のオブジェクトに関する情報(ジョブ、ワークフロー、スケジュールなど)は、HOCON(JSON)形式で永続的に保存される。
  • JOCコックピットは、データベース管理システム(DBMS)を使用して、ジョブのステータス、および履歴情報を保存する。

JobScheduler ユニバーサルエージェント[編集]

  • エージェントは、Java仮想マシンをサポートするオペレーティングシステムで実行される。
  • エージェントは、コントローラーから構成およびタスク実行要求を取得し、DBMSは必要ない。
  • コントローラー/エージェント通信は、単一のHTTPまたはHTTPS接続を使用する。
  • 複数のエージェントは、冗長性とフェールオーバーを満たすようエージェントクラスターで設定できる。

サポートされているプラットフォーム[編集]

https://kb.sos-berlin.com/display/JS7/JS7+-+Platforms

JOCコックピット/コントローラー[編集]

オペレーティングシステム: [10]

  • Windows (32および64ビット)
  • Linux (32および64ビット)
  • Oracle/openJDK 8 - 11, 17

データベース管理システムl(JOCコックピットのみ必要):

JobScheduler ユニバーサルエージェント[編集]

ユニバーサルエージェントは、Oracle/openJDK 8 - 11, 17をサポートする任意のオペレーティングシステムで実行できる。DBMSは必要ない。

ライセンス[編集]

JS7® JobSchedulerは、オープンソースのGPL 3.0ライセンスの下で使用できる。ユーザーは商用ライセンスも購入可能。

オープンソース版と商用ライセンス版の違いは、クラスタリング機能及び商用サポートの提供の有無である。

サポートとサービス[編集]

商用ライセンスをお持ちのユーザーは、エンタープライズレベルのサポートとサービスを利用できる。 オープンソースライセンスでJobSchedulerを操作しているユーザーは、JobScheduler Knowledge BaseおよびSourceForgeフォーラムからサポートを受けることができる。

関連項目[編集]

  • ジョブスケジューラソフトウェアのリスト
  • Mohr、James: "Job Schedulingàla Carte"、Linux Magazine、2008年12月、#97;オンライン版はこちら
  • Simon Brock、Simon:「 完璧なオープンソースタスクスケジューラ 」2010年2月、デニスパブリッシングリミテッド、イギリス。2016年5月にアクセス。

参照資料[編集]

  1. ^ Legal Notice”. Software- und Organisations-Service. 2016年5月27日閲覧。
  2. ^ Job Scheduler 1.2 moved to SourceForge.net”. SourceForge. 2016年5月27日閲覧。
  3. ^ Versions”. SOS GmbH Change Management System. 2019年9月3日閲覧。
  4. ^ Licensing”. Software- und Organisations-Service. 2015年9月16日閲覧。
  5. ^ Features”. SOS GmbH Product Knowledge Base. 2016年5月26日閲覧。
  6. ^ a b The JobScheduler in a Nutshell”. Software- und Organisations-Service. 2016年5月26日閲覧。
  7. ^ 64-Bit JobScheduler released”. Software- und Organisations-Service. 2016年5月26日閲覧。
  8. ^ JobScheduler, Universal Agent and JADE 1.10 released”. Software- und Organisations-Service. 2016年5月26日閲覧。
  9. ^ Govekar, Milind; Mahapatra, Biswajeet (February 2012). Magic Quadrant for Workload Automation. Stamford: Gartner, Inc.. G00219826 
  10. ^ Which platforms is JobScheduler available for and what platform support is provided?”. SOS GmbH Product Knowledge Base. 2016年5月26日閲覧。

外部リンク[編集]