Target Architecture

 

COCKPIT HAS BEEN COMPLETED

 

 

JOC Cockpit

 

 

  • manage job configuration, optionally with a repository service
  • manage release procedure for job configuration to Master
  • accept job events and job history from Master
  • report job events to event queue
  • report job history to reporting database
  • run authentication and authorization service
  • run web server and web services
  • run JobScheduler Controller Web GUI
  • bundle a number of Masters and delegate commands to Master

Explantion of Drawing

JOC Cockpit

  • JobScheduler JOC Cockpit distributes configuration to Master Cluster members
  • JOC Cockpit accepts job events and job history events and stores them persistently
  • JOC Cockpit is the user interface for monitoring and taking action

Master Cluster

  • Primary and Backup JobScheduler Master are synchronized in a Cluster
  • Cluster members address job execution requests to Agent Clusters
  • Cluster members report job events and the job history to the Web Service

Autonomous Agent Cluster

  • A number of Agents is grouped in a Cluster for:
    • fixed priority scheduling
    • round-robin scheduling
  • An Agent Cluster manages outages of Agents autonomously

 


 


 

Master

 

 

  • control the job plan (calendar), what to run, when and where
  • forward daily plan to Autonomous Agent Cluster
  • accept  task execution result, job history and log information from Agents
  • optionally operate in an active-passive cluster

 

Explantion of Drawing

Controller

  • The Controller presents the user interface (GUI)
  • The Controller makes use of web services provided by the Supervisor to retrieve status information

Web Services

  • Web Services enforce authentication and authorization
  • Web Services provide information on
    • job events
    • job history
    • Master/Agent status

Supervisor

  • Supervisor manages job release procedure for a repository (Git, subversion etc.) or file system
  • Supervisor  sends job control commands to Master
  • Supervisor accepts job events and job history and stores them persistently

 


 


 

Autonomous Agents

 

 

  • implement a fault-tolerant peer-to-peer network of Agents
  • accept daily plan from Master
  • available for active-passive and active-active clustering:
    • fixed priority scheduling
    • round-robin scheduling
  • execute job chains independently from Master availability
  • resolve more complex dependencies with Master, e.g. for checks of the job history or of external events from other machines
  • report job history and log information back to Master
  • run distributed recovery files for recovery purposes
  • allow access by a number of Master instances
  • provide resilience features for reconciliation after Master connection loss

Explantion of Drawing

Master Cluster

  • Primary and Backup JobScheduler Master are synchronized in a Cluster

Autonomous Agent Cluster

  • Master contacts one of the Members in an Agent Cluster to check Agent availability and to forward the daily plan for job execution
  • Agent Cluster Members synchronize the execution of jobs and job chains:
    • Fixed priority scheduling
    • Round-robin scheduling
  • Agent Cluster Members implement a peer-to-peer network to synchronize status updates and to report back to the Master
  • Agent Cluster Members use Recovery Files for restart capability should no Cluster Member be available on restart
  • No labels