Skip to end of metadata
Go to start of metadata

Scope

  • Jobs and Job Chains can be executed by Agents
  • This article describes some of the possible ways available for assigning Agents to jobs and job chains.
  • Example configuration files are provided for downloading.

Assignment of Agents

  • Jobs and job chains are linked to Agents by means of Process Classes.
    • A process class can be assigned an Agent.
      • Note that more than one Agent can be assigned to a process class to form an Agent Cluster but this is outside the scope of this article. See JS-1188 - A process_class can reference multiple JobScheduler instances Released  and the JobScheduler Universal Agent - Agent Cluster article for more information)
    • A job or job chain can be assigned a process class.
  • A job chain can be configured to use:
    • A default process class for subsequent job nodes. This enables a more flexible configuration than assigning the process class to a specific job that would be used for all jobs chains.
    • A second process class for File Watching that is assigned an Agent that triggers file orders for incoming files on the Agent host.

Related Features

  • Jobs
    • JS-1464 - Allow jobs to run in different process classes Released
    • JS-1450 - A process_class defined at job level has precedence before job chain level Released
  • Job Chains
    • Default Assginment
      • JS-1301 - Job chain with default process class (default agent) Released
    • File Order Source
      • JS-1300 - <file_order_source> on JobScheduler Universal Agent Released
      • JS-1399 - Process classes for <file_order_source> and <file_order_sink> on JobScheduler Universal Agent Released
  • Agent Clusters
    • Fixed Priority Scheduling
      • JobScheduler Master selects the first available Agent from a cluster for job execution.
      • Should an Agent not be available then the next available Agent is used.
      • JS-1554 - JobScheduler Master supports Fixed Priority Scheduling and Round-Robin Scheduling for Tasks with Agents Released
    • Round-Robin Scheduling
      • JobScheduler Master switches the Agent used for each job execution.
      • Should an Agent not be available then the next available Agent is used.
      • JS-1188 - A process_class can reference multiple JobScheduler instances Released

Delimitation

  • Agent Clusters
    • Agent Clusters with support for File Order Sources are subject to future development.
      • JS-1427 - Process classes for <file_order_source> and <file_order_sink> with Agent Cluster failover Clarify
  • Dynamic Agent Assignment
    • The assignment of Agents to job nodes (instead of jobs) is subject to future development.
      • JS-1343 - Job chain with job node process classes Dismissed
    • The assignment of Agents by orders is subject to future development. 
      • JS-973 - Dynamic Agent assignment to Classic Agent by order parameter Released
      • JS-1189 - Dynamic assignment of a process class via parameter "scheduler.process_class" that points to a Universal Agent Cluster Open

Use Cases

A Job Chain is assigned a default Agent for all Job Nodes

 

Description

  • The job chain is assigned a default Agent.
  • All jobs are executed by this Agent.

Example

  • Download job_chain_default_agent.zip
    • Extract the archive to your live folder, a directory job_chain_default_agent will be created.
  • The process class - 01_ProcessClass_Default_Agent - has been configured for an Agent on the localhost and port 4445: adjust these values to point to your default Agent installation.

A Job Chain is assigned a default Agent and one Job is assigned a second Agent

 

Description

  • The job chain is assigned a default Agent.
  • One job is executed by a second Agent.

Example

  • Download job_chain_default_second_agent.zip
    • Extract the archive to your live folder, a directory job_chain_default_second_agent will be created.
  • The process class - 01_ProcessClass_Default_Agent - has been configured for an Agent on the localhost and port 4445: adjust these values to point to your default Agent installation.
  • The process class - 01_ProcessClass_Second_Agent - has been configured for an Agent on the Andreas-MacBook-Pro.local and port 4445: again, adjust these values to point to your default Agent installation.

A Job Chain is assigned a default Agent and a different Agent for File Watching

 

Description

  • The job chain is assigned:
    • An Agent for File Watching with a file order source and file order sink.
      • This Agent will watch for incoming files and will move or remove the file with the file order sink.
    • A default Agent for executing the jobs in the job chain.

Example

  • Download job_chain_default_file_watching_agent.zip
    • Extract the archive to your live folder, a directory job_chain_default_file_watching_agent will be created.
  • The 01_ProcessClass_Default_Agent process class is configured for an Agent on a host Andreas-MacBook-Pro.local and port 4445. Adjust this class to point to your default Agent installation.
  • The 01_ProcessClass_FileWatching_Agent process class has been configured for an Agent on localhost and port 4445. Adjust this class to point to your File Watching Agent installation.
  • Adjust the folders that are used for file watching:
    • The folder that is watched for incoming files: /tmp/jobscheduler/file/incoming/agent_file_watching
    • The folder that files are moved to on success: /tmp/jobscheduler/file/success
    • The folder that files are moved to on error: /tmp/jobscheduler/file/error

Jobs in a Job Chain are assigned different Agents

 

Description

  • The job chain is not assigned an Agent.
  • The Agents are assigned directly to jobs.
    • Jobs are executed by the assigned Agent independently of their use in other job chains.
    • Each job is executed by a different Agent (Cross-Platform Scheduling).

Example

  • Download job_chain_different_agents.zip
    • Extract the archive to your live folder, a directory job_chain_different_agents will be created.
  • The 01_ProcessClass_Agent_1 process class has been configured for an Agent on the localhost and port 4445. Adjust this process class to point to your first Agent installation.
  • The 01_ProcessClass_Agent_2 process class has been configured for an Agent on the Andreas-MacBook-Pro.local and port 4445. Adjust this process class to point to your second Agent installation.
  • The 01_ProcessClass_Agent_3 process class has been configured for an Agent on the localhost and port 4445. Adjust this process class to point to your third Agent installation.

References

Change Management References

Loading
T Key Linked Issues Fix Version/s Status P Summary Updated
Feature JS-1554 DOC-49 , JOE-214 , JS-1188 1.10.3, 1.11 Released Minor JobScheduler Master supports Fixed Priority Scheduling and Round-Robin Scheduling for Tasks with Agents Feb 23, 2016
Feature JS-1464 JS-1782 , JS-1481 1.10 Released Minor Allow jobs to run in different process classes Jul 24, 2018
Feature JS-1450 JS-1301 1.10 Released Minor A process_class defined at job level has precedence before job chain level Dec 15, 2015
Feature JS-1427 JS-1300 , JS-1291 , JS-1422 2.0 Clarify Minor Process classes for <file_order_source> and <file_order_sink> with Agent Cluster failover Nov 24, 2017
Feature JS-1422 JS-1427 , JS-1399 , JS-1291 1.10 Released Major <file_order_sink> on JobScheduler Universal Agent Dec 15, 2015
Feature JS-1399 JS-1428 , JS-1300 , JS-1291 , JOE-157 , JS-1422 1.10 Released Major Process classes for <file_order_source> and <file_order_sink> on JobScheduler Universal Agent Nov 27, 2015
Feature JS-1343 JS-1451 , JS-1301 , JS-1189 1.12 Dismissed Major Job chain with job node process classes Sep 20, 2017
Feature JS-1301 JS-1291 , JS-1300 , JS-1450 , JOE-127 , JS-1189 , JS-1343 1.9 Released Major Job chain with default process class (default agent) Dec 15, 2015
Feature JS-1300 JS-1142 , JS-1427 , JS-1398 , JS-1399 , JS-1291 , JS-1301 , JS-1211 , JS-133 , JS-741 , JS-1342 1.10 Released Major <file_order_source> on JobScheduler Universal Agent Nov 27, 2015
Test Case JS-1289 JS-1188 1.8 Released Major (TestCase) process_class can reference multiple remote_scheduler May 21, 2015
Feature JS-1189 JS-1301 , JS-1188 , JS-1343 2.0 Open Major Dynamic assignment of a process class via parameter "scheduler.process_class" that points to a Universal Agent Cluster Dec 08, 2017
Feature JS-1188 JS-1554 , JOE-90 , JS-565 , JS-1289 , JS-1404 , JS-1187 , JS-1189 1.8 Released Major A process_class can reference multiple JobScheduler instances Aug 05, 2016
Feature JS-973 1.7.1 Released Major Dynamic Agent assignment to Classic Agent by order parameter Apr 05, 2016
Feature JS-900 Dismissed Minor JobScheduler should store the process class in the history table Jun 04, 2015
Feature JS-565 JS-1188 1.8 Released Minor Error message when host in process_class is not available Jun 03, 2015
Feature JOE-157 JS-1399 1.10 Released Minor Allow attribute file_watching_process_class for <job_chain> Element Dec 17, 2015

Documentation

See also