Page History
Table of Contents |
---|
Introduction
Initial Operation is performed after installation of the JS7 Controller, Agent
...
and the JOC Cockpit.
...
Use of a Controller Cluster is subject to the agreements of the JS7 - License.
- Use of Standalone Controllers:
- available to Open Source License holders and to commercial license holders.
- for details see JS7 - Management of Standalone Controllers.
- Use of Controller Clusters:
- available to commercial license holders,
For a Controller Cluster, initial operation includes:
- requires a commercial license, see JS7 - License.Tasks include applying the license key and licensed binary code.
- Tasks include registering the Controller Cluster and Agents.
...
Initial Operation requires that a JS7 Controller, Agent , Controller and JOC Cockpit have been successfully installed and are up and running.
- Note that a Controller Cluster requires two Controller instances to be installed.
- For details see JS7 - Installation
- The steps for initial operation are the same for all supported platforms:
Controller Cluster Checks
...
Anchor | ||||
---|---|---|---|---|
|
Both Controller instances for in a Cluster cluster have to be installed with the same Controller ID, which is a unique identifier for the Controller Cluster. Users can modify the Controller Instance Start Script containing the JS7_CONTROLLER_ID=<controller-id>
environment variable.
- Unix: the Controller ID is specified with the
JS7_CONTROLLER_HOME/bin/controller_instance.sh
Instance Start Script - see the JS7 - Controller - Headless Installation on Linux and Windows article. - Windows: the Controller ID is specified with the
JS7_CONTROLLER_HOME\bin\controller_instance.cmd
Instance Start Script - see the JS7 - Controller - Installation Using the Windows Graphical Installer article.
Changing the Controller ID requires reinstallation of the Controller instances by carrying out the following steps for each instance:
- Stop the Controller service, see :
- Unix, Windows: Stop the Controller instance from the command line as described in the JS7 - Controller - Command Line Operation article.
- Windows: Stop the Controller instance from the Windows service panel.
- Remove the Controller journal files:
- The journal files have to be removed from the configuration directory with the
state
sub-folderdirectory. This means that any orders, which have been submitted for workflows will be removed and that workflows will have to be redeployed:- Unix:
rm -f /var/sos-berlin.com/js7/controller/state/*
- Windows:
del C:\ProgramData\sos-berlin.com\js7\controller\state\*
- Unix:
- Note that a different location for the configuration directory can be specified during installation.
- The journal files have to be removed from the configuration directory with the
- Modify the Controller ID:
- Users can modify the Controller Instance Start Script that holds the
JS7
- Unix: For headless installation as an exception to the rule the Controller ID is specified in the installation directory in the
bin/environment_variables.sh
file, see JS7 - Controller - Headless Installation on Linux/Windows. - Modify the following environment variable: JS7
_CONTROLLER_ID=<controller-id>
environment variable. - Users can modify the Controller Instance Start Script that holds the
- Windows: If the installer has been used (in headless mode or in graphical mode), then For Windows, users can run the graphical installer to reinstall the Controller, see see the JS7 - Controller - Installation Using the Windows Graphical Installer article.
...
Anchor | ||||
---|---|---|---|---|
|
The secondary Secondary Controller has to use the following configuration from its JS7_CONTROLLER_DATA/config/controller.conf
file , - see JS7 - Controller Configuration Items: for more information.
js7.journal.cluster.node.is-backup=yes
If changes to the above configuration are required then users can carry out the following steps for the secondary Secondary Controller instance:
- Stop the Controller service, see :
- Unix, Windows: Stop the Controller instance from the command line as described in the JS7 - Controller - Command Line Operation article.
- Windows: Stop the Controller instance from the Windows service panel.
- Remove Controller journal files:
- The journal files have to be removed from the configuration directory with the
state
sub-folder. This means that any directory. Any orders that have been submitted for workflows will be removed and that workflows will have to be redeployed:- Unix:
rm -f /var/sos-berlin.com/js7/controller/state/*
- Windows:
del C:\ProgramData\sos-berlin.com\js7\controller\state\*
- Unix:
- Consider that a A different location for the configuration directory can be specified during installation.
- The journal files have to be removed from the configuration directory with the
- Modify the the
config/controller.conf
file to reflect the above the js7.journal.cluster.node.is-backup=yes
setting. - Restart the Controller instance.
Adding License Key and Licensed Binary Code
Customers possessing holding a commercial license will receive a license key from SOS and can download the binary code that allows clustering of JS7 components, products - see the JS7 - Download article for more information.
The steps required are summarized below, for details see see the JS7 - How to apply a JS7 License Key article.
Anchor license_key_on_premises license_key_on_premises
Handling for Installation on premises
license_key_on_premises | |
license_key_on_premises |
The following chapters can be skipped if a license key was added when using the Windows installer for the Controller. However, the steps described are required when a license key for an existing installation is to be added or replaced without updating the Controller.
...
- The license key can be added during installation of each a Controller instance and each a JOC Cockpit instance.
- The license key can be added later on by storing saving the license certificate file in the following locations:
- Unix: Controller Configuration Directory configuration directory with
license
sub-folderdirectory.- Default Locationlocation:
/var/sos-berlin.com/js7/controller/config/license
- A different location for the configuration directory can be specified during installation.
- Default Locationlocation:
- Windows: Controller Configuration Directory with
license
sub-folderdirectory.- Default Locationlocation:
C:\ProgramData\sos-berlin.com\js7\controller\<controller-id>\config\license
- where
<controller-id>
is the unique identifier for the Controller that is specified during installation.
- where
- A different location for the configuration directory can be specified during installation.
- Default Locationlocation:
- Unix: Controller Configuration Directory configuration directory with
...
- Binary code for clustering is available from the
js7-license.jar
file, which can be obtained from JS7 - Download. - By downloading the binary code for clustering you users consent with the license terms for a commercial license of JS7.
- The
js7-license.jar
file has to be stored to the following locationslocation:- Unix: Controller Installation Directory installation directory with
lib/user_lib
sub-foldersdirectory:- Default Location location:
/opt/sos-berlin.com/js7/controller/lib/user_lib
- If the
user_lib
sub-directory does not exist then users should create the sub-directory. - A different location for the installation directory can be specified during installation.
- Default Location location:
- Windows: Controller Installation installation Directory with
lib\user_lib
sub-foldersdirectory:- Default Locationlocation:
C:\Program Files\sos-berlin.com\js7\controller\lib\user_lib
- If the
user_lib
sub-directory does not exist then users should create the sub-directory. - A different location for the installation directory can be specified during installation.
- Default Locationlocation:
- Unix: Controller Installation Directory installation directory with
Anchor license_key_docker license_key_docker
Handling for
license_key_docker | |
license_key_docker |
...
Container Installation
Basically the same locations for license key and licensed binary code apply as already explained for Unix operating systems in previous chapterssections of this article.
Note that there is no : No access to the container's file system is available before the container is running, which makes it impossible to add or replace licensed binary code before the Controller has been started.
Adding a License Key
- The license key can be is added by storing the license certificate file in the following location:
/var/sos-berlin.com/js7/controller/config/license
- The directory
/var/sos-berlin.com/js7/controller
directory is typically mounted to from a Docker var volume when running the container, for details see see the JS7 - Controller Installation for Docker Containersarticle.
Adding Licensed Binary Code
- Binary code for clustering is available from the
js7-license.jar
file, which can be obtained from from the JS7 - Download page. - By downloading the binary code for clustering you , users consent with the license terms for a commercial license of JS7.
- The
js7-license.jar
file has to be stored in the following locationslocation:/var/sos-berlin.com/js7/controller/config/lib
- The directory
/var/sos-berlin.com/js7/controller
typically directory is typically mounted in a Docker from avar
volume when running the container: for details see JS7 - Controller Installation for Docker Containers. - If the sub-directory
config/lib
sub-directory does not exist then you can create it before storing the saving thejs7-license.jar
file.
On startup start-up the Controller checks the above directory for the existence of the js7-license.jar
file. If the file is found then:
- the file will be copied to
/opt/sos-berlin.com/js7/controller/lib/user_lib
- any existing version of the file in this directory will be overwritten.
...
Login to JOC Cockpit User Interface
...
Users can navigate with their browser to the JOC Cockpit URL and enter the User Account and Password. Typically the URL will include the hostname and port that JOC Cockpit has been installed with:
For example,
addinghttp://myhost:4446
. Check that the JOC Cockpit port is accessible. This might requireadditional firewall rules to allow access to
thisthe port from the computer that
you operatethe user's browser is operated on.
After initial installation of the JOC Cockpit the default
User Accountuser account
Passwordroot
andpassword
will be available if no changes have been made to theroot
shiro.ini
configuration file.Note that the root userare available.
Note: The root
user account is assigned the all
role in the default configuration and
...
is granted all available permissions.
...
For details see the JS7 - Identity Services and JS7 - Authentication articles.
Note: JOC Cockpit might take a number of seconds
...
to start and to display the login window.
Register Controller and Agents
After successful login logging in to the JOC Cockpit a dialog window for registering a Controller is showndisplayed. You Users will find the same dialog later on via the User -> Manage Controllers/Agents menu itemview.
You Users have a choice register of registering a Standalone Controller (within scope of the JS7 Open Source License) or a Controller Cluster for high-availability (requires a within scope of the JS7 Commercial License, see JS7 - LicensingLicense).
Anchor | ||||
---|---|---|---|---|
|
A Controller Cluster implements high-availability for automated fail-over should a server node operating the Controller instance be aborted or killed or become unavailable.
become unavailable.
A Controller Cluster requires an arbitrator to act as Cluster Watch. This role can be assigned JOC Cockpit or an Agent.
Controller Registration using JOC Cockpit as Cluster Watch
Starting from release 2.5.3 and 2.6.0 JOC Cockpit is always used as Cluster Watch, no additional options are offered:
Controller Registration using a Cluster Watch Agent
Starting from release 2.5.3 and 2.6.0 JOC Cockpit is always used as Cluster Watch, no additional options are offered:
Explanation
This dialog allows the Primary Controller instance, the Secondary Controller instance and an
...
Cluster
...
Watch to be specified.
Explanation
- Title: The title added for each Controller instance will be shown is displayed in the JS7 - Dashboard view.
- URL for JOC Cockpit: Primary and Secondary Controller instances require a URL as seen from are accessed from the JOC Cockpit . This URL is used by JOC Cockpit to connect to the relevant Controller instancesusing this URL.
- The URL
- includes the protocol, hostname and port that the relevant Controller instance is operated with.
- By default the HTTP protocol is used. The HTTPS protocol can be used if TLS/SSL certificates are in place, see the JS7 - Controller HTTPS Connections article.
- URL for Secondary / URL for .Primary: The Primary Controller establishes a connection to the Secondary Controller and vice versa.
- Input to this field is not required if the URL for a Controller instance is the same across the network.
- Input to this field is required should Proxy Services be involved that make use of specific URLs.
- Cluster Watch: Either JOC Cockpit or an Agent The Agent Cluster Watcher is required for operation of a Controller Cluster. The Agent is
- If JOC Cockpit is assigned the Cluster Watch role then JOC Cockpit will contact both Controller Cluster members.
- If an Agent is used then it will be contacted by both Controller Cluster members to verify the cluster status
- .
- Agent ID: The Agent is assigned
Agent ID
which is- a unique identifier
- . Uniqueness is applied for all Agents registered with the same Controller. The Agent ID cannot be modified during the lifetime of an Agent.
- Changes to the Agent ID
- require the Agent to be removed and re-
- added with JOC Cockpit.
- Agent Name
- : The name of an Agent is used for example
Agent Name
can be modified- when assigning the Agent to jobs. Similarly to the Agent ID the Agent Name has to be unique but can be changed later on.
- Agent URL
- : The protocol HTTP or HTTPS, host name or IP address and port
- by which the Agent
- is accessible to the Controller.
- By default the HTTP protocol is used. The HTTPS protocol can be used if TLS/SSL certificates are in place, see JS7 - Agent HTTPS Connections.
Note
...
: The following connections should be accessible and
...
might require
...
additional firewall rules to allow access to the relevant ports:
- JOC Cockpit connection
- to the Primary Controller's host and port.
- JOC Cockpit connection to the Secondary Controller's host and port.
- Primary Controller connection
- to the Secondary Controller's host and port.Secondary Controller connection to
- the Primary Controller to any Agent's host and port.Primary
- Secondary Controller connection
- to the Primary Controller's to the Cluster Watcher Agent host and port.Secondary Controller connection to the Cluster Watcher Agent
- to any Agent's host and port.
For more information about network connections see JS7 - System Architecture.
Anchor | ||||
---|---|---|---|---|
|
After the connection between JOC Cockpit and the Controller is established you users can add Agents. To register an Agent, switch to the Manage Controller/Agents view from the user menu. Click on the Action Menu of the Controller for which an Agent should be registered and select Add Agent.
Explanation:
The icon in the JOC Cockpit main menu allows the Manage Controllers/Agents view to be selected:
To add a Standalone Agent users can start from the Controller's action menu which can be used to add the Agent:
This opens the following popup window:
Explanation:
- Agent ID: A unique identifier of the Agent. Uniqueness is applied for all Agents registered with the same Controller. This identifier cannot be changed later on.
- Agent Name: The name of an Agent is used, for example, when assigning the Agent to jobs. Similarly to the Agent ID,the Agent Name has to be unique but can be changed later on.
- Title: An individual description which can be searched for.
- Alias Names: The same Agent is available from a different name. This can be helpful if distinct Agent Names should be assigned the jobs, for example if more Agents are used in a production environment that map to a smaller number of Agents in a non-production environment.
- Process Limit: Agents can execute an unlimited number of parallel processes. Users can limit parallel processes to prevent exhausting a server's resources and to make orders wait until the next process will be available.
- URL: The HTTP or HTTPS protocol, host name or IP address and port with which the Agent can be accessed from the Controller
- The Agent is assigned an
Agent ID
which is a unique identifier for this Agent that cannot be modified during the lifetime of an Agent. Change of theAgent ID
requires the removal of and re-addition of the Agent with the JOC Cockpit. It is not necessary to uninstall/reinstall the Agent. - The
Agent Name
is a unique identifier that is used for example in the Configuration view to assign Agents to jobs. TheAgent Name
can be modified later on. - In addition, you can add
Agent Alias Names
to make the same Agent available by different names. - The
Agent URL
includes the protocol, the hostname and port for which the Agent is operated.
Further References
- Installation
- Operation
- Configuration