You are on page 1of 18

JS7 JobScheduler

JS7 JobScheduler Architecture


System Architecture:
Systems, Products, Platforms
2
JS7 JobScheduler

▪ System Architecture
▪ System Architecture
▪ Product Architecture
▪ Secure Network Connections
▪ Cluster Architecture
▪ Supported Platforms

▪ Cloud Setup
▪ JOC Cockpit and Controller High Availability
▪ Agent High Availability
▪ Hybrid Use of Agents

▪ On Premises Setup
▪ Standalone Server
▪ Controller High Availability
▪ Controller and JOC Cockpit High Availability
▪ Multi-Client Capability
▪ Agent High Availability
3 System Architecture
System Architecture

JOC Cockpit JS7 Primary JOC Cockpit JS7 Secondary JOC Cockpit
▪ JOC Cockpit is operated
as a passive cluster or Active Standby
standalone and serves JOC Cockpit JOC Cockpit
the User Interface and API Service API Service
REST API Service
▪ Makes use of a database
for persistence and for Database
Service
restart capabilities

Controller / Agents JS7 Primary Controller Instance JS7 Secondary Controller Instance
▪ A Controller operated as a
passive cluster or stand-
alone orchestrates Agents Active Standby
▪ Agents receive workflow Controller Controller
configurations from a
Controller, start workflows
autonomously and report
back execution results
▪ Agents are operated as a
cluster or standalone
JS7 Agent Cluster Instances JS7 Agent Instance JS7 Agent Instance

Connections Standalone
Director Director Standalone
▪ Communication between Agent Agent Agent Agent
products within the
indicated direction of
Subagent Subagent
network connections
Subagent
Subagent Subagent Subagent
4 Product Architecture
Product Architecture

JOC Cockpit / API Service


User Interface for job control
▪ The User Interface offers job
management and control
▪ Users access JOC Cockpit
from their browsers PowerShell Scripting Interface Programming Interface External
▪ Access is subject to authen- CLI Applications
tication and authorization LDAP
optionally with LDAP, OIDC Directory Service
and other Identity Providers Authentication JOC Cockpit Database Access
and User Interface
Authorization
Interfaces OIDC API Service
Identity Provider
▪ The PowerShell Command
Line Interface and External
Applications use the REST
API Service for access to
JOC Cockpit and Controller
▪ Authorization is available by
roles/permissions (RBAC)
Controller Controller Controller Database
Service
Controller / Agent
▪ The Controller holds the
workflow configuration and
orchestrates Agents
▪ Agents are deployed on top JOC Cockpit
of any platform running the Agents Agents Agents API Service
programs, scripts, services
scheduled for execution
5 Network Connections
Secure Network Connections

Network Zone
Network Zone with with limited HTTP / HTTPS
restricted User Access User Access
▪ Use of HTTPS for any
connection to JOC Cockpit
▪ Access to JOC Cockpit PowerShell HTTP / HTTPS HTTP / HTTPS External
requires authentication CLI Applications
▪ Access to JOC Cockpit is LDAP
authenticated by the API Directory Service
Service using TLS/SSL TLS / SSL JOC Cockpit JDBC Protocol
Protocol User Interface
Network Zone without OIDC API Service
User Access Identity Provider
▪ Controller and Agent
instances can be operated HTTP / HTTPS
in a network zone without Network Zone
user access without
▪ Controller instances are User Access
accessed exclusively by the
JOC Cockpit API Service Controller Controller Controller Database
Service
▪ Agent instances are
accessed exclusively by
Controller instances HTTP / HTTPS HTTP / HTTPS HTTP / HTTPS JDBC Protocol
▪ Use of HTTPS for connec-
tions with client and server JOC Cockpit
authentication certificates Agents Agents Agents API Service
(mutual TLS authentication)
6 Cluster Architecture
Cluster Architecture

JOC Cockpit Cluster JS7 Primary JOC Cockpit JS7 Secondary JOC Cockpit
▪ Passive Cluster: database
JOC Cockpit Cluster Fail-over
used for synchronization Active Standby
▪ Acts as a Cluster Watch JOC Cockpit Switch-over JOC Cockpit
for Controller Cluster

Controller Cluster
▪ Passive Cluster: manages
JS7 Primary Controller JS7 Secondary Controller
and orchestrates any
number of Agent Clusters Controller Cluster Active Fail-over Standby
▪ Acts as a Cluster Watch Controller Switch-over Controller
for Director Agent Cluster

Director Agent Cluster


Agent Cluster
▪ Passive Cluster: manages
and orchestrates any JS7 Primary Director JS7 Secondary Director
number of Subagents Director Agent Cluster Active Fail-over Standby
▪ Acts as single point of
Director Agent Switch-over Director Agent
control for Subagents

Subagent Cluster
▪ Passive Cluster: performs
fixed-priority scheduling JS7 Subagents: fixed-priority JS7 Subagents: round-robin
with any Subagents
Subagent Subagent
▪ Active Cluster: performs Subagent Cluster
Subagent
round-robin scheduling
Subagent Subagent Subagent
with Subagents
7 Platforms
Supported Platforms

JOC Cockpit / API Service


Works with container Works on premises
▪ The JOC Cockpit and API JOC Cockpit JOC Cockpit JOC Cockpit for Linux, Windows;
platforms such as
Service are available for Kubernetes, OpenShift Container Linux Windows Azure, AWS EC2
Container platforms,
Linux and Windows
access Controller access Database
Controller / Agent
Database
▪ The Controller is available Service
for Container platforms,
Linux and Windows
▪ Agents are available for Works with supported
any platform that supports Controller Controller Controller DBMS products:
a Java Virtual Machine Container Linux Windows • Oracle
including Containers • SQL Server
• MariaDB/MySQL
• PostgreSQL
Database Service
• H2 (embedded)
▪ JOC Cockpit API Service
makes use of a database
service from any platform

Workflows Works with any


Agent Agent Agent Agent platform that
▪ Execution with Agents from supports a Java
Windows Linux Solaris AIX
any supported platform Virtual Machine
▪ This includes mixed use of
Agent platforms for parallel
/ sequental job execution
Agent Agent Agent Agent Agent
HP-UX Mac OS Container Raspberry Pi ... any platform
8
JS7 JobScheduler

▪ System Architecture
▪ System Architecture
▪ Product Architecture
▪ Secure Network Connections
▪ Cluster Architecture
▪ Supported Platforms

▪ Cloud Setup
▪ Controller and JOC Cockpit High Availability
▪ Agent High Availability
▪ Hybrid Use of Agents

▪ On Premises Setup
▪ Standalone Server
▪ Controller High Availability
▪ Controller and JOC Cockpit High Availability
▪ Multi-Client Capability
▪ Agent High Availability
9 Cloud Setup: JOC Cockpit, Controller High Availability
Cloud Setup: JOC Cockpit Cluster, Controller Cluster, Database Service Cluster

JOC Cockpit / API Service JS7 Primary Site / Availability Zone JS7 Secondary Site / Availability Zone
▪ JOC Cockpit is the User
Interface for workflow
management and control Active Standby
▪ A number of JOC Cockpit JOC Cockpit JOC Cockpit
instances can be operated
as a passive cluster Database Database
Service Service
▪ Each JOC Cockpit instance
has access to the Active and
Standby Controller Active Standby
API Service API Service
Controller Cluster
▪ Active / Standby Controller
implement a passive cluster
for automated fail-over Active Standby
Controller Controller
Agent
▪ Agents are deployed to any
platforms and are accessed
by the Active and Standby
Controller instances
JS7 Agent Instance JS7 Agent Instance JS7 Agent Instance

Database Service
▪ JOC Cockpit makes use of Agent Agent Agent
a database for persistence
and for restart capabilities
10 Cloud Setup: Agent High Availability
Cloud Setup: JOC Cockpit Cluster, Controller Cluster, Agent Cluster

JOC Cockpit / API Service JS7 Primary Site / Availability Zone JS7 Secondary Site / Availability Zone
▪ JOC Cockpit is the User
Interface for workflow
management and control Active Standby
JOC Cockpit JOC Cockpit
Controller Cluster
▪ Active / Standby Controller
implement a passive cluster
for automated fail-over
Active Standby
API Service API Service
Agent Cluster
▪ A Director Agent holds the
active role and orchestrates
Subagents for job execution
▪ Fixed-priority mode includes Active Standby
to execute jobs with the first Controller Controller
Subagent, only if unavailale
the next Subagent is used
▪ Round-robin mode includes
to execute each next job on
the next Subagent Active Standby
Director Agent Director Agent

Subagent Subagent Subagent Subagent


Subagent Subagent
Subagent Subagent Subagent Subagent Subagent Subagent
11 Cloud Setup: Hybrid Use of Agents
Cloud Setup: Hybrid Use of Agents

Cloud
JOC Cockpit / API Service JS7 Primary Site / Availability Zone JS7 Secondary Site / Availability Zone
▪ JOC Cockpit is the User
Interface for workflow
management and control Active Standby
JOC Cockpit JOC Cockpit
Controller Cluster
▪ Active and Standby
Controller implement a
passive cluster for
Active Standby
automated fail-over
API Service API Service
Agents
▪ Any number of Cluster
Agents and Standalone
Agents can be operated Active Standby
on any platform used on Controller Controller
premises
▪ Users set up a Virtual
Private Cloud to allow the
indicated connections
▪ Agents operated from
cloud platforms and On Premises
Agents operated on
Clustered JS7 Agent Instances JS7 Agent Instance JS7 Agent Instance
premises can be used in
parallel Cluster Cluster
Agent Agent Agent Agent
12
JS7 JobScheduler

▪ System Architecture
▪ System Architecture
▪ Product Architecture
▪ Secure Network Connections
▪ Cluster Architecture
▪ Supported Platforms

▪ Cloud Setup
▪ JOC Cockpit and Controller High Availability
▪ Agent High Availability
▪ Hybrid Use of Agents

▪ On Premises Setup
▪ Standalone Server
▪ Controller High Availability
▪ Controller and JOC Cockpit High Availability
▪ Multi-Client Capability
▪ Agent High Availability
13 On Premises Setup: Standalone Server
On Premises: Standalone Server for User Interface, Controller and Database Service

JOC Cockpit / API Service JS7 Standalone Server JS7 Agent Instance
▪ JOC Cockpit is the User
Interface for workflow
Agent
management and control JOC Cockpit JOC Cockpit Standalone
▪ Users access the JOC User Interface API Service Controller
Cockpit from their browser

Controller
▪ The Controller orchestrates
Agents for execution of JS7 Agent Instance
workflows and jobs Database
Service Agent
Agent
▪ Agents are deployed on top
of platforms running the
programs, scripts, services
scheduled for execution

Database Service
▪ The database stores the
inventory and history of
workflow execution
14 On Premises Setup: Controller High Availability
On Premises: Standalone Interface Server, Controller Cluster, Database Server

JOC Cockpit / API Service JS7 Primary JOC Cockpit Instance Database Instance
▪ JOC Cockpit is the User
Interface for workflow
management and control JOC Cockpit JOC Cockpit Database
▪ The Controller cluster is User Interface API Service Service
managed by JOC Cockpit

Controller Cluster
▪ Active and Standby
Controller act as a cluster to
synchronize status informa- JS7 Primary Controller Instance JS7 Secondary Controller Instance
tion for automated fail-over
▪ Active and Standby Control-
ler are accessed by the Active Standby
JOC Cockpit API Service Controller Controller

Agent
▪ Agents are deployed on top
of any platforms and are
accessed by Active and
Standby Controllers
JS7 Agent Instance JS7 Agent Instance JS7 Agent Instance

Database Service
▪ JOC Cockpit makes use of a Agent Agent Agent
database for persistence
and for restart capabilities
15 On Premises Setup: Controller, JOC Cockpit High Availability
On Premises: JOC Cockpit Cluster, Controller Cluster, Database Server

JOC Cockpit / API Service JS7 Primary Server JS7 Secondary Server
▪ JOC Cockpit is the User
Interface for workflow
management and control Active Standby
▪ A number of JOC Cockpit JOC Cockpit JOC Cockpit
instances can be operated
as a passive cluster Database Instance
▪ Each JOC Cockpit instance
has access to the Active and
Standby Controller Active Database Standby
API Service Service API Service
Controller Cluster
▪ Active / Standby Controller
implement a passive cluster
with automated fail-over Active Standby
Controller Controller
Agent
▪ Agents are deployed on top
of any platform and are
accessed by the Active and
Standby Controller
JS7 Agent Instance JS7 Agent Instance JS7 Agent Instance

Database Service
▪ JOC Cockpit makes use of a Agent Agent Agent
database for persistence
and for restart capabilities
16 On Premises Setup: Multi-Client Capability
On Premises: Multi-Controller Instances

JOC Cockpit / API Service JS7 Primary JOC Cockpit Instance Database Instance
▪ JOC Cockpit is the User
Interface for workflow
management and control JOC Cockpit JOC Cockpit Database
▪ Users can manage a number User Interface API Service Service
of Controllers in JOC Cockpit

Controller
▪ Controllers are operated
independently per Client
▪ Controllers can be operated JS7 Controller for Client 1 JS7 Controller for Client 2
as a cluster and standalone

Active Active
Agent
Controller Controller
▪ Agents are deployed on top
of any platform and are
accessed by a Controller
▪ Agents are dedicated to a Standby Standby
Controller Controller Controller

Database Service
▪ JOC Cockpit makes use of a
database for persistence and
for restart capabilities
JS7 Agent Instance JS7 Agent Instance JS7 Agent Instance JS7 Agent Instance

Agent Agent Agent Agent


17 On Premises Setup: Agent High Availability
On Premises: Controller Cluster with Agent Cluster and Standalone Agents

Controller JS7 Primary JOC Cockpit Instance Database Instance


▪ The Controller connects to
an Agent Cluster and to
Standalone Agents JOC Cockpit JOC Cockpit Database
User Interface API Service Service
Agents
▪ Agents are deployed on top
of any platform and are
accessed by a Controller
▪ Agents are dedicated to a
Controller JS7 Primary Controller Instance JS7 Secondary Controller Instance

Agent Cluster
Active Standby
▪ A Director Agent holds the
Controller Controller
active role and orchestrates
Subagents for job execution
▪ Fixed-priority mode includes
to execute jobs with the first
Subagent, only if unavailale
Clustered JS7 Agent Instances JS7 Agent Instance JS7 Agent Instance
the next Subagent is used
▪ Round-robin mode includes Active Standby
to execute each next job on Director Agent Standalone Standalone
Director Agent
Agent Agent
the next Subagent

Standalone Agents
▪ Any number of Standalone
Agents can be operated on Subagent Subagent

any platform Subagent


Subagent Subagent Subagent
18
JS7 JobScheduler

Questions?
Comments?
Feedback?
Software- und
Organisations-
Service GmbH

Giesebrechtstr. 15
D-10629 Berlin

info@sos-berlin.com
https://www.sos-berlin.com

You might also like