トップQs
タイムライン
チャット
視点
JobScheduler
ウィキペディアから
Remove ads
JobSchedulerは、エンタープライズレベルのスケジューリングとプロセス自動化のためのオープンソースのアプリケーションソフトウェアである。実行ファイルやスクリプトを起動し、ユーザープログラムを自動的に実行するために使用される。JobSchedulerは、ステータスと履歴情報をバックエンドデータベース管理システムに保存する。
JobSchedulerのクラスタリングを除くすべての機能は、GPL V.3ライセンスの下で使用可能となっている。クラスタリングとエンタープライズレベルのサポートとサービスを求めるユーザーは、商用ライセンスを利用可能である。
Remove ads
主な機能
歴史と発展
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とリブランディングされた。
Remove ads
説明
要約
視点
アーキテクチャ
- JS7® JobSchedulerは、JOCコックピット、コントローラー、エージェントから構成される。
 - JOCコックピット
- WEB GUI/REST API
 - ジョブ実行制御配布
 - 履歴情報収集・保存
 - ジョブ定義・リソースの作成
 - ジョブ定義の管理とコントローラーへの配布
 - クラスター制御、イベントキュー、ロギングなど
 
 - コントローラー
- DB接続を廃止
 - ジョブ定義をJOCコックピットから取得
 - 実行履歴をJOCコックピットに送信
 - 実行計画とジョブ定義をエージェントに配布
 
 - 自律型エージェント
- コントローラーとの通信障害時にも自律的にジョブ実行制御
 - エージェントクラスター内で実行計画とジョブ定義を同期
 - 実行履歴をコントローラーに送信
 
 - 公開鍵認証の導入
- 各モジュール間通信の公開鍵認証
- JOCコックピットまたは外部認証局で証明書を作成・署名
 - ルート証明書と中間証明書を各コントローラーとエージェントに配布
 
 - ジョブ定義ファイルの公開鍵認証
- JOCコックピットまたは外部認証局でジョブ定義ファイル毎に署名
 - 各コントローラー及びエージェントで配布された署名が一致するかを確認
 
 
 - 各モジュール間通信の公開鍵認証
 
動作モード
- JS7® JobSchedulerコントローラー・エージェントは、バックグラウンドでUnixデーモンまたはWindowsサービスとして無人で実行される。
 - 監視と手動介入は、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など) )。
 - Nagios、Zabbix、SCOMなどのシステムモニターと統合するための監視インターフェイス。
 - ファイル転送やログローテーションなどの操作をカバーする標準ジョブテンプレートのライブラリ。
 - 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]
データベース管理システムl(JOCコックピットのみ必要):
JobScheduler ユニバーサルエージェント
ユニバーサルエージェントは、Oracle/openJDK 8 - 11, 17をサポートする任意のオペレーティングシステムで実行できる。DBMSは必要ない。
ライセンス
JS7® JobSchedulerは、オープンソースのGPL 3.0ライセンスの下で使用できる。ユーザーは商用ライセンスも購入可能。
オープンソース版と商用ライセンス版の違いは、クラスタリング機能及び商用サポートの提供の有無である。
サポートとサービス
商用ライセンスをお持ちのユーザーは、エンタープライズレベルのサポートとサービスを利用できる。 オープンソースライセンスでJobSchedulerを操作しているユーザーは、JobScheduler Knowledge BaseおよびSourceForgeのフォーラムからサポートを受けることができる。
Remove ads
関連項目
- ジョブスケジューラソフトウェアのリスト
 - Mohr、James: "Job Schedulingàla Carte"、Linux Magazine、2008年12月、#97;オンライン版はこちら。
 - Simon Brock、Simon:「 完璧なオープンソースタスクスケジューラ 」2010年2月、デニスパブリッシングリミテッド、イギリス。2016年5月にアクセス。
 
参照資料
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads