Table of Contents |
---|
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
and the JobScheduler Universal Agent - Agent Cluster article for more information)Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1188
- See
- A job or job chain can be assigned a process class.
- A job chain can be configured to use a specific :
- 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.
- Precedence of process class assignments in decreasing sequence:
- order
- the assignment of an Agent process class is not supported (JS-1189)
- the assginment of a remote JobScheduler instance is supported
- job chain
- job
- order
- 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
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1464 Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1450
- Job Chains
- Jobs
- Job Chains
- Default Assginment
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1301
- File Order Source
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1300 Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1399
- Default Assginment
- 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.
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-14271554
- 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.
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-13001188
- Fixed Priority Scheduling
Delimitation
- Agent Clusters
- Agent Clusters with support for File Order Sources are subject to future development.Orders
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1189
1427
- Agent Clusters with support for File Order Sources are subject to future development.Orders
- Dynamic Agent Assignment
- The assignment of Agents to job nodes (instead of jobs) is subject to future development.
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-
- The assignment of Agents to job nodes (instead of jobs) is subject to future development.
1343
- The assignment of Agents by orders is subject to future development.
Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-973 Jira server SOS JIRA columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-1189
Use Cases
...
A Job Chain is assigned
...
a default Agent for all Job Nodes
Flowchart |
---|
order_1 [shape="ellipse",label="Order",fillcolor="violet"] process_class_1 [label="Default Agent\nassigned to Process Class",fillcolor="white"] job_chain_1 [label="Job Chain",fillcolor="orange"] job_1 [label="Job 1\nexecuted on default Agent", fillcolor="lightskyblue"] job_2 [label="Job 2\nexecuted on default Agent", fillcolor="lightskyblue"] job_3 [label="Job 3\nexecuted on default Agent", fillcolor="lightskyblue"] order_1 -> job_chain_1 process_class_1 -> job_chain_1 job_chain_1 -> job_1 -> job_2 -> job_3 |
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 directoryjob_chain_default_agent
will be created.
- Extract the archive to your
- The process class -
01_ProcessClass_Default_Agent
- has been configured for an Agent on thelocalhost
and port4445
: 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
Flowchart |
---|
order_1 [shape="ellipse",label="Order",fillcolor="violet"] process_class_1 [label="Default Agent\nassigned to Process Class 1",fillcolor="white"] process_class_2 [label="Second Agent\nassigned to Process Class 12",fillcolor="white"] job_chain_1 [label="Job Chain 1",fillcolor="orange"] job_1 [label="Job 1\nexecuted on default Agent 1", fillcolor="lightskyblue"] job_2 [label="Job 2\nexecuted on second Agent 1", fillcolor="lightskyblue"] job_3 [label="Job 3\nexecuted on default Agent 1", fillcolor="lightskyblue"] order_1 -> job_chain_1 process_class_1 -> job_chain_1 process_class_2 -> job_2 job_chain_1 -> job_1 -> job_2 -> job_3 |
...
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 directoryjob_chain_default_second_agent
will be created.
- Extract the archive to your
- The process class -
01_ProcessClass_Default_Agent
- has been configured for an Agent on thelocalhost
and port4445
: adjust these values to point to your default Agent installation. - The process class -
01_ProcessClass_
- has been configured for an Agent on theSecond
_AgentAndreas-MacBook-Pro.local
and port4445
: 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
Flowchart |
---|
order_1 [shape="ellipse",label="File Order 1",fillcolor="violet"] process_class_1 [label="Agent 1 (File OrderWatching Source)Agent\nassigned to Process Class 1",fillcolor="white"] process_class_2 [label="Agent 2 (Job Nodes)Default Agent\nassigned to Process Class 2",fillcolor="white"] job_chain_1 [label="Job Chain 1",fillcolor="orange"] file_order_source [label="File Order Source\nexecuted onby File Watching Agent 1", fillcolor="lightskyblue"] file_order_sink [label="File Order Sink\nexecuted by File onWatching Agent 1", fillcolor="lightskyblue"] job_1 [label="Job 1\nexecuted on default Agent 2", fillcolor="lightskyblue"] job_2 [label="Job 2\nexecuted on default Agent 2", fillcolor="lightskyblue"] job_3 [label="Job 3\nexecuted on default Agent 2", fillcolor="lightskyblue"] order_1 -> file_order_source process_class_1 -> file_order_source process_class_1 -> file_order_sink process_class_2 -> job_chain_1 job_chain_1 -> file_order_source -> job_1 -> job_2 -> job_3 -> file_order_sink |
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.
- An Agent for File Watching with a file order source and file order sink.
Example
- Download job_chain_default_file_watching_agent.zip
- Extract the archive to your
live
folder, a directoryjob_chain_default_file_watching_agent
will be created.
- Extract the archive to your
- The
01_ProcessClass_Default_Agent
process class is configured for an Agent on a hostAndreas-MacBook-Pro.local
and port4445
. Adjust this class to point to your default Agent installation. - The
01_ProcessClass_FileWatching_Agent
process class has been configured for an Agent onlocalhost
and port4445
. 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
- The folder that is watched for incoming files:
Jobs in a Job Chain are assigned different Agents Agents
Flowchart |
---|
order_1 [shape="ellipse",label="Order 1",fillcolor="violet"] process_class_1 [label="Agent 1\nassigned to Process Class 1",fillcolor="white", group="1"] process_class_2 [label="Agent 2\nassigned to Process Class 2",fillcolor="white", group="2"] process_class_3 [label="Agent 3\nassigned to Process Class 3",fillcolor="white", group="3"] job_chain_1 [label="Job Chain 1",fillcolor="orange"] job_1 [label="Job 1\nexecuted on Agent 1", fillcolor="lightskyblue", group="1"] job_2 [label="Job 2\nexecuted on Agent 2", fillcolor="lightskyblue", group="2"] job_3 [label="Job 3\nexecuted on Agent 13", fillcolor="lightskyblue", group="3"] order_1 -> job_chain_1 process_class_1 -> job_1 process_class_2 -> job_2 process_class_13 -> job_3 job_chain_1 -> job_1 -> job_2 -> job_3 |
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 directoryjob_chain_different_agents
will be created.
- Extract the archive to your
- The
01_ProcessClass_Agent_1
process class has been configured for an Agent on thelocalhost
and port4445
. 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 theAndreas-MacBook-Pro.local
and port4445
. 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 thelocalhost
and port4445
. Adjust this process class to point to your third Agent installation.
References
Change Management References
Jira | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Documentation
- JobScheduler Reference Documentation:
- the <process_class> element
- the <remote_scheduler> element
- the <job_chain process_class="..."/> attribute
- the <job_chain file_watching_process_class="..."/> attribute
See also
- How to use Agents with Fixed Priority Scheduling and Round-Robin Scheduling
- JobScheduler Universal Agent - Remote File Watching
...