Skip to end of metadata
Go to start of metadata

Introduction

  • JS7 - Download offers current releases of the product for download. For initial installation see JS7 - Installation
  • Any updates or upgrades are performed using the installer archive .tar.gz/.zip files provided for initial installation of newer releases. Instructions provided by the JS7 - Installation section apply to updates and upgrades.
  • JS7 follows semantic versioning, therefore the wording is applied as follows:
    • JS7 - Update to newer JS7 maintenance releases: switch to a maintenance release within the same branch, for example within minor release 2.2
      • update from 2.2.1 to 2.2.2
      • update from 2.2.0 to 2.2.2 (the latest maintenance release includes any fixes of previous maintenance releases)
    • Upgrade to newer JS7 releases: switch to a newer minor release, for example from minor release 2.1 to 2.2
      • upgrade from 2.1.0 to 2.2.0
      • upgrade from 2.1.1 to 2.2.2

Upgrade

Applicability

  • For any upgrade JOC Cockpit, the Controller and Agents are required to use the same minor release, for example 2.2.
  • Existing Agents cannot continue to be operated with newer Controller releases across different minor releases.

Order of Components

  • In a first step update JOC Cockpit.
  • In a second step update Controller and Agents.

Upgrade Procedure for Use of Docker Images

For Docker® images provided for JOC Cockpit, Controller and Agents the following procedure applies:

Consider that the above procedure does not apply if you build your own images, see JS7 - Build Docker Images. Consider to map the steps explained with Upgrade Procedure for Headless Installation On Premises.

Upgrade Procedure for Headless Installation On Premises

JOC Cockpit

  • Consider instructions from JS7 - JOC Cockpit Installation On Premises.
  • Take a backup of the JOC Cockpit's installation directory.
  • Extract the installer archive .tar.gz/.zip file. This will create a sub-directory that includes the maintenance release number, for example joc.2.2.2.
    • Users basically can re-use an existing joc_install.xml installer response file from a previous installation, however, users should check for changes, for example new or changed installer options that are available from the joc_install.xml file after extraction of the installer archive. If in doubt copy settings from a previous joc_install.xml file to the new version of this file.
    • Consider to copy additional resources to the directory of the extracted installer archive, for example to joc.2.2.2
      • any JDBC Drivers that you downloaded individually for installation with a previous JOC Cockpit release,
      • the Hibernate configuration file that holds the database connection and that has been used for a previous installation,
      • the JS7 license key *.pem file if JS7 is operated with a Commercial License. 
  • Stop the JOC Cockpit daemon (Linux) or service (Windows).
  • Take a backup of the JS7 - Database schema. During upgrade changes to the database schema might be applied that prevent to rollback to the previous JOC Cockpit release.
  • Run the JOC Cockpit installer
    • Invoke the installer script in the same way as for installation of a previous release, for example
      • ./setup.sh|.cmd joc_install.xml
      • ./setup.sh|.cmd -u joc_install.xml
  • Start the JOC Cockpit daemon (Linux) or service (Windows)

Controller

  • Consider instructions from
  • Take a backup of the Controller instance's installation directory.
  • Extract the installer archive .tar.gz/.zip file from a neutral directory not related to the current Controller installation. This will create a sub-directory that includes the maintenance release number, for example controller.2.2.2.
  • Stop the Controller.
    • Standalone Controller
      • Stop the Controller instance.
    • Controller Cluster
      • Take a note which Controller instance is the active node when stopping Controller instances.
      • Stop both Controller instances.
      • Stop the Cluster Watch Agent.
  • From the existing Controller installation directory move or remove the lib directory.
  • Copy the lib and bin sub-directories from the extracted installer archive to the Controller instance's installation directory. This will replace the previous lib sub-directory and will overwrite the existing bin sub-directory from the new release. The Controller's instance start script that can contain individual settings is not included with the installer archive and therefore will not be overwritten, see JS7 - Controller - Command Line Operation.
    • For a Controller Cluster consider to perform this step for both Controller instances.
  • For a Controller Cluster update the Cluster Watch Agent as explained below and start the Cluster Watch Agent.
  • Start the Controller. For a Controller Cluster start both Controller instances.

Agent

  • Consider instructions from
  • Take a backup of the Agent's installation directory.
  • Extract the installer archive .tar.gz/.zip file from a neutral directory not related to the current Agent installation. This will create a sub-directory that includes the maintenance release number, for example agent.2.2.2.
  • Stop the Agent.
  • From the existing Agent installation directory move or remove the lib directory.
  • Copy the lib and bin sub-directories from the extracted installer archive to the Agent's installation directory. This will replace the previous lib sub-directory and will overwrite the existing bin sub-directory from the new release. The Agent's instance start script that can contain individual settings is not included with the installer archive and therefore will not be overwritten, see JS7 - Controller - Command Line Operation.
  • Start the Agent.

Troubleshooting

Controller Cluster

Should some of the above explained steps to update/upgrade a Controller have been missed, for example if the Secondary Controller is still active while the Primary Controller is updated or upgraded then the Cluster can become unavailable. In this situation apply the following procedure:

  • Determine the Controller instance that is active.
  • Stop both Controller instances.
  • From the Controller instance that previously was the active node copy the contents of the  state directory to the directory with the same name of the Controller instance that was previously the standby node. This operation can be considered a manual step for synchronization of the Controller Cluster.
  • Start both Controller instances.

Agent

Should some of the above explained steps to update/upgrade an Agent have been missed, then Reset the Agent having updated/upgraded the Agent's installation directory.

The user account's menu in the right upper corner of any JOC Cockpit page offers the Manage Controller/Agents operation:


The respective page for Controller/Agent management offers the operation to reset an Agent:


Explanation:

  • The Reset operation comes in two flavors:
    • Reset: the Agent is requested to perform a restart. This operation is applicable if no orders are started or are running with the Agent.
    • Reset Forced: the Agent is forced to perform a restart and to drop its journal. The Controller will then re-deploy scheduling objects such as workflows to the Agent.
  • The Reset operation can require 10 to 60 seconds depending on the time required to stop and to start the Agent.