Versions Compared

Key

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

...

  • JOC Cockpit makes use of a database to store inventory information, status information and workflow related logs. The database is required for restarting restart capabilities with the JS7 - Cluster Service. The Controller and Agent do not make use of database connections.
  • JS7 does not include a DBMS, instead, it make use of a DBMS that has been installed separately is installed by the user - with the exception of H2® for which JS7 includes an embedded version of the DBMS that ships for evaluation purposes.
  • The supported DBMS products include
    • Embedded H2®
    • MariaDB®
    • MySQL®
    • Oracle®
    • PostgreSQL®
    • SQL Server®
  • Access to the DBMS is provided by the Hibernate database access layer. This includes to use a JDBC Driver that is specific for the DBMS.
  • Consider to check and to apply measures for JS7 - Database Maintenance

...

In a first step users have to create a database schema and account for JS7. The database schema has to support the Unicode character set.

Setup for MariaDB®/ MySQL®

Database

For the character encoding of the database UTF8 has to be specified. Similarly a collation sequence should be specified that includes UTF8 support.

...

Code Block
languagebash
titleExample how to grant permissions to accounts
linenumberstrue
# grant all permissions
GRANT ALL ON js7.* TO 'jobscheduler'@'%';

# alternatively grant individual permissions
GRANT CREATE, DROP, ALTER, EXECUTE, SELECT, UPDATE, INSERT, DELETE on js7.* to 'jobscheduler'@'%';

Setup for Oracle®

Database

When creating the database then consider to use a UTF based character encoding and collating sequence, for example:

...

Code Block
languagebash
titleExample how to grant permissions to accounts
linenumberstrue
# generate SQL statement to grant permissions to run-time account
SELECT DISTINCT
       CASE
            WHEN object_type = 'SEQUENCE' THEN 'GRANT SELECT'
            WHEN object_type IN ('TABLE', 'VIEW') THEN 'GRANT SELECT,INSERT,UPDATE,DELETE'
       END
       || ' ON JS7_OWNER.'|| object_name || ' TO JS7_USER;' 
  FROM dba_objects 
 WHERE object_type IN ('TABLE','VIEW','SEQUENCE') and owner='JS7_OWNER';

Setup for PostgreSQL®

Status
colourYellow
titleTODO

Database

Accounts

Permissions

Connection Pool

JS7 makes use of a connection pool to allow a larger number of JOC Cockpit user sessions to share database connections from the pool.

  • By default a JOC Cockpit instance is configured to use up to 10  connections from the pool. As a rule of thumb 1 connection can be shared by approx. 3 simultaneous users.
    • Adjust this setting to the max. number of connections required for sharing between simultaneous users of JOC Cockpit.
    • Note that connections will be disconnected and returned to the pool if not used for a longer time.
  • Additional connections are used by JS7 Services.
  • Consider to allow the total number of connections when setting up your JS7 database.


JS7 JOC Cockpit ComponentMin. ConnectionsMax. ConnectionsConfigurableComment
JOC CockpitJS7 - REST Web Service API10unboundedyesRecommendation: no. of simultaneous users / 3.
This number counts per JOC Cockpit instance.

JS7 - Cluster Service:

11no
JS7 - Cleanup Service55no
JS7 - History Service1no. of connected Controller InstancesnoAny Controllers connected to a JOC Cockpit
Instance are counted.
JS7 - Monitor Service33no2 connections for monitoring.
1 connection for notifications.

...