Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • A Java Runtime Environment in version 1.8 or newer is required. For details see Which Java versions is JobScheduler available for?
  • Technically the JOC Cockpit can be operated in any Unix environments, however, the JS7 - Platforms limit support for JOC Cockpit operation to Linux.
  • JOC Cockpit requires access to a database to store inventory and status information, and workflow related logs - see JS7 - Database.
    • A schema has to be created in the database prior to installation.
    • A user account has to be created that is granted full privileges for the schema.
    • If you intend to use different accounts and privilege sets for setup and for operation of JOC Cockpit then consider switching Hibernate configuration files after setup (see below) to use an account with limited privileges to select, insert, update, delete and execute permissions for schema objects.
  • Installation of JOC Cockpit requires administrative privileges in the following situations:
    • for Unix systems:
      • Root permissions are required if the JOC Cockpit is installer denies to be installed together with the Jetty servlet container.
      • To install JOC Cockpit without root permissions the setup script can be executed with the -u argument, otherwise the sudo prompt will ask for the root password.
    • for Windows systems:
      • The setup requires administrative privileges.

Download

      • executed from the root account but can be executed from a user account that makes use of sudo to acquire privileges
        • to make the root account owner of the installation directory, for example in /opt
        • to make the user account owner of the configuration directory, for example in /var
      • no administrative privileges are required for installation with a user account that owns the installation and configuration directories.
    • for Windows systems
      • the setup requires administrative privileges.

Download

  • Download the JOC Download the JOC Cockpit installer archive for your target environment from the JS7 - Download page.
    • For Unix systems:
      • A .tar.gz archive including the installer is available that can be used to run the installer.
        • js7_joc_linux.<release>.tar.gz
    • For Windows systems:
      • A .zip archive including the installer is available that can be used to run the installer.
        • js7_joc_windows.<release>.zip
  • The .tar.gz/.zip archives can be used to install JOC Cockpit with the graphical installer or to carry out headless installation.

...

The extracted installer directory layout looks like this:

  • hibernate-examples (directory for DBMS connection sample files, for details db (not required for installation: directory for DBMS SQL scripts that can be used in case that database objects should be created before installation ,see JS7 - Database)
    • hibernate-integrated-security-mssql.cfgsql
    • mysql.sql
    • oracle.sql
    • pgsql.sql
  • hibernate-examples (directory for DBMS Hibernate connection sample files, see JS7 - Database)
    • hibernate-integrated-security-mssql..xmlhibernate-maria-mysql.cfg.xml
    • hibernate-maria-mysql.cfg.xml
    • hibernate-oracle12c.cfg.xml
    • hibernate-postgres.cfg.xml
  • install-joc.txt (installation notes)
  • joc.<release>.jar (installer library for a given release)
  • joc_install.xml (installer response file)
  • license.gpl (copy of  GPLv3 (General Public License) )
  • license.html, license.txt (copy of JS7 JobScheduler Commercial License Agreement)
  • setup.sh|, setup.cmd (installer script for Unix, Windows)

Database Connection

The database connection has to be ready prior to installation:

  • Create a schema and user account in your preferred database. For supported DBMS versions see JS7 - Database.
  • Specify connection information for the JOC Cockpit setup:
    • you can specify general connection information during the installation procedure or
    • you can prepare a Hibernate configuration file to store connection information.
      • Pick up one of the above Hibernate example files described in the JS7 - Database article and matching your DBMS and copy the file to the installer directory, e.g. with the name hibernate.cfg.xml.
      • Apply your changes to the Hibernate file as explained from the JS7 - Database article.

...

Headless installation is performed by opening a terminal or command console window and navigating to the folder containing the setup.sh| or setup.cmd file.

  • Performing headless installation of JOC Cockpit on Unix systems with without root permissions:

    Code Block
    languagetext
    titleStarting headless installation of the JOC Cockpit on Unix systems with without root permissions
    /home/<user-account>/joc.<release> .# login as the user account (not as root)
    ./setup.sh -u joc_install.xml
    • All files in the installation and configuration directories will be owned by the user account
  • Performing headless installation of JOC Cockpit on Unix systems without from a user account that can acquire root permissions:

    Code Block
    languagetext
    titleStarting headless installation of the JOC Cockpit on Unix systems without with root permissions
    /home/<user-account>/joc.<release> # login as the user account (not as root)
    ./setup.sh -u joc_install.xml
    • The installer will use sudo to acquire root permissions. Execution of the above command by the root account is denied.
    • Files in the installation directory will be owned by the root account, files in the configuration directory will be owned by the user account, see below.
  • Performing headless installation of JOC Performing headless installation of JOC Cockpit on Windows systems requires administrative privileges:

    Code Block
    languagetext
    titleStarting headless installation of the JOC Cockpit on Windows systems
    C:\users\<user-account>\joc.<release> setup.cmd joc_install.xml

Directory Layout

  • @rem login with an account that can acquire elevated privileges for administrative tasks
    setup.cmd joc_install.xml

Directory Layout

By default the installation is addedIf the Jetty servlet container included with JOC Cockpit is installed then files will be added by default

  • for Unix to the
    • installation directory: /opt/sos-berlin.com/js7/joc
    • configuration directory: /var/sos-berlin.com/js7/joc
  • for Windows to the
    • installation directory:  Program Files\sos-berlin.com\js7\joc
    • configuration directory: ProgramData\sos-berlin.com\js7\joc

The following listing explains the directory layout after installation of JOC Cockpit:

  • /opt (Unix installation directory), Program Files (Windows installation directory)
    • sos-berlin.com
      • js7
        • joc (installation directory)
          • jetty_base (symbolic link to configuration directory)
          • install (directory with Jetty installer scripts and *.sql files to populate the database)
            • install_jetty_base.sh|cmd
            • updatejoc_jettyinstall_basetables.sh,|cmd
          • jetty (directory for Jetty binary files and scripts)
          • jetty (directory for Jetty binary files and scripts)
          • jetty_base (jetty_base (symbolic link to configuration directory)
          • service (directory for operation as a Windows Service)
          • Uninstaller (Uninstaller directory, the empty directory remains in place after uninstall)
            • .jocinstallinformation (installation response file, remains in place after uninstall)
            • joc_install.xml (installer response file, remains in place after uninstall)
            • uninstaller.jar (binary file of the uninstaller)
            • uninstall.sh|cmd (script to invoke uninstaller)
  • /var (Unix configuration directory)ProgramData (Windows configuration directory)
    • sos-berlin.com
      • js7
        • joc
          • jetty_base (configuration directory)
            • joc_home (symbolic link to installation directory)
            • start.ini (Jetty servlet container configuration file, remains in place after uninstall)
            • archive (directory for JOC Cockpit versions before applying patches, remains in place after uninstall)
            • lib (directory for Java libraries, remains in place after uninstall)
            • logs (directory for log files files, remains in place after uninstall)
            • patches (directory for patch files (*.zip), remains in place after uninstall)
            • resources (directory for configuration files, remains in place after uninstall)
              • joc (directory for configuration files, remains in place after uninstallinstalluninstall)
                • hibernate.cfg.xml (Hibernate configuration file for database access, remains in place after uninstall if modified)
                • joc.properties (JOC Cockpit configuration file, remains in place after uninstall)
                • log4j2.xml (log configuration file, remains in place after uninstall if modified)
                • shiro.ini.active (Shiro configuration file reporting the currently active configuration, remains in place after uninstall)
                • shiro.ini-example (Shiro example configuration file)
                • lib (optional directory for JDBC Drivers and licensed binary code)
                • license (optional directory for license certificate files, remains in place after uninstall)
                • xsd (directory for XSD schema files, remains in place after uninstall)
            • temp (directory for temporary files, remains in place after uninstall)
            • webapps (directory for JOC Cockpit files that are extracted from the deployed joc.war file)installation)
              • joc (directory for JOC Cockpit GUI files)
                • WEB-INF
                  • classes (directory for resource files and patches)
                  • lib (Java binary files)
              • root
  • /home/<user-account> (Unix home directory)
    • .jocrc (user
    /home/<user-account> (Unix home directory)
    • .jocrc ( profile script applied on start-up of JOC Cockpit)


Directory Layout if the Jetty Servlet Container is not Installed

If the Jetty servlet container included with JOC Cockpit is not installed and if no previous configuration files are found in the Program Files\sos-berlin.com\js7\joc directory then by default files will be added to the Program Files\sos-berlin.com\js7\joc directories only.

...

  • The update of the JS7 JOC Cockpit is performed from the same download a similarly downloaded archive as used for a fresh installation.
  • Use the joc_install.xml file created during the installation. The default location of the joc_install.xml file from a previous installation is:
    • C:\Program Files\sos-berlin.com\js7\joc\ for Windows
    • /opt/sos-berlin.com/js7/joc for Unix systems

  • Perform the same step steps to run the installer as explained above.
    • The update will replace existing files and will update database objects as required.
    • The update will not remove configuration files or settings in such files.

Installation Log Files

The JOC Cockpit configuration and installation log information is written to a new log file each time an installation or update is carried out. These log files can be found in the logs sub-directory of the jetty_base directory.

  • Installation log files use names according to the pattern Install_V<release>_<date-time>_....log where <release> is the release number and <date-time> refers to the point in time of installation.
  • For further information about logging see JS7 - Logging.

Installation using alternative Servlet Containers

The JOC Cockpit installation procedure includes the option of installing the Jetty servlet container provided in the JOC Cockpit installer archive. An alternative servlet container capable of handling Java web applications, such as Tomcat, can be used, however, support by SOS is limited to the JOC Cockpit application and does not include support for individually installed servlet containers.

If the Jetty servlet container included with JOC Cockpit is not to be installed, then the installer will check if a jetty_base symlink from a previous installation is found in the JETTY_HOME directory. Particularly relevant for system administrators is the shiro.ini.active file (containing authentication and authorization settings) and the joc.properties file (containing JOC Cockpit installation settings).

  • If configuration files are found then they will not be overwritten or removed.
  • Default configuration files will be written to the file system in the joc_home directory.
  • System administrators can move the configuration files to the appropriate directory of their servlet container as required.

Location of the resources/joc directory after a fresh installation

With a fresh installation the installer will not find an existing Jetty servlet container and will store the resources directory for the joc application by default in the following locations:

  • for Unix systems:
    • /opt/sos-berlin.com/js7/joc/resources/joc
  • for Windows systems:
    • C:\Program Files\sos-berlin.com\js7\joc\resources\joc

Location of the resources/joc directory after update

If JOC Cockpit is updated without the Jetty servlet container but on top of an existing installation that includes the Jetty servlet container then the resources/joc directory will not be moved from its location. Practically this means that the "new" resources directory after the update will be found with the following directories (assuming that default directories were specified during the original installation):

  • for Unix systems:
    • /opt/sos-berlin.com/js7/joc/resources/joc
  • for Windows systems:
    • C:\Program Files\sos-berlin.com\js7\joc\resources\joc

In this situation

  •  <release> is the release number and <date-time> refers to the point in time of installation.
  • For further information about logging see JS7 - Logging
  • the shiro.ini and joc.properties files from an earlier installation will not be overwritten.
  • an existing hibernate.cfg.xml database configuration file will be considered during update and the settings will be suggested as default values. This file will be deleted and a new version of the file will be stored in the joc_home directory.
  • an update of JOC Cockpit will not overwrite any existing configuration files. However new versions of the joc.properties and shiro.ini files with the names joc.properties-example and shiro.ini-example will be stored in the resources/joc folder, alongside the original files.

Deinstallation

The JOC Cockpit can be uninstalled using the uninstall.cmd sh and uninstall.shcmd scripts available from the following locations:

...

The uninstall script on Unix systems runs in headless mode. The uninstall script will start the Uninstaller and will remove both  the installation directory, configuration directory and its sub-folders. 

Windows Systems

Starting the uninstaller will display the following window on Windows systems:



Selecting the "Force the deletion of C:\Program Files\ ...." checkbox will cause the uninstall script to remove boththe program and the configuration files and folders.

...

Automated Startup and Shutdown

For Unix systems a startup start-up and shutdown configuration can be used that is executed by systemd running for the root account.

...

For Windows systems operation of JOC Cockpit by a Windows Service is recommended as such services can be configured to start/stop automatically on server startup start-up and shutdown.

  • Consider to assign a service account to the JOC Cockpit service with the Windows Service Panel.
  • Consider to allow the JOC Cockpit service to be automatically started on server startupstart-up.

Initial Operation

Having completed the installation or update of the JS7 JOC Cockpit you can start the JOC Cockpit either manually or from its Unix daemon/Windows Service, see JS7 - JOC Cockpit Command Line Operation.

...

...