Versions Compared

Key

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

...

Introduction

  • JS7 is available for with dual licensing with : an Open Source License and a Commercial License.
    • The same source code and therefore the same feature functionality is available with both license models. 
    • The one exception is the operational feature to cluster of clustering the JS7 components products for high availability, which is a commercially available feature for enterprise customers.
  • Customers applying for a commercial license receive both a license key from SOS and the binary code that allows clustering of JS7 componentsproducts.
  • Users who intend to evaluate the JS7 high availability capabilities can apply for a trial license key by sending a mail to sales@sos-berlin.com

...

  • SOS forwards the license key to the customer.
  • The customer is responsible to apply for applying the license key in compliance with the license terms forwarded by SOS to the customer.

License keys include information about the:

  • license owner: company name
  • license model: perpetual license, subscription license, pay-per-use license
  • license package: the number of Controller and Agent instances that are covered by the license.
  • license limit: licenses are valid starting from the date of issuing. Licenses are validfor:
    • with the perpetual license model are valid without an expiration date.
    • with the subscription license model are valid for the subscription period , - e.g. one year.
    • with the pay-per-use license model are valid for a maximum of two years.

License keys are not subject to an open source license. Modification of license keys and the use of license keys outside of the licensee's organization is not permitted.

...

SOS grants trial license keys to individuals and organizations that intend to evaluate the software.

  • Grant of a license key:
    • is limited to 30 days.
    • is limited to the individual or organization that applies has applied for a the trial license key.
  • Trial license keys will become invalid with on the expiration date.

Licensed Binary Code

The license key allows to use binary code for the clustering capabilities of JS7 componentsproducts to be used.

  • Binary The binary code for clustering is not open source , - it is copyrighted by SOS. Binary The binary code for clustering is published with a commercial license issued by SOS.
  • Users may not modify, decompile , or reverse engineer engineer the binary code for clustering.

Binary The binary code for clustering is available from in the js7-license.jar file that which is offered available from JS7 - Download. By downloading the binary code for clustering you consent with the license terms for a commercial license of JS7.

Applying License Key and Licensed Binary Code

License Key

The following chapters sections make use of specific terms:

  • Terms used for JOC Cockpit
    • For Linux environments JETTY_BASE points by default points to: /var/sos-berlin.com/js7/joc
    • For Windows environments JETTY_BASE points by default points to: C:\ProgramData\sos-berlin.com\js7\joc
    • JETTY_BASE is specified during installation.
  • Terms used for a Controller
    • For Linux environments JS7_CONTROLLER_DATA by  points by default points to: /var/sos-berlin.com/js7/controller/var
    • For Windows environments JS7_CONTROLLER_DATA by  points by default points to: C:\ProgramData\sos-berlin.com\js7\controller
    • JS7_CONTROLLER_DATA is specified during installation.
  • Terms used for a Director Agent
    • For Linux environments JS7_AGENT_DATA points by default to: /var/sos-berlin.com/js7/agent
    • For Windows environments JS7_AGENT_DATA points by default to: C:\ProgramData\sos-berlin.com\js7\agent
    • JS7_AGENT_DATA is specified during installation.

The license key ships as an X.509 certificate file (*.pem) that which is added to the following directories:

  • JOC Cockpit:
    • For Linux and Windows: JETTY_BASE/resources/joc/license
    • The certificate has to be added to any all JOC Cockpit cluster members.
  • Controller:
    • For Linux and Windows: JS7_CONTROLLER_DATA/config/license
    • The license key has to be applied to any Controller cluster members.all Controller cluster members.
  • Director Agent:
    • For Linux and Windows: JS7_AGENT_DATA/config/license
    • The license key has to be applied to all Director Agent cluster members. It is not applied to Subagents in an Agent Cluster and not to Standalone Agents.

Licensed Binary Code

The licensed binary code is available from provided in the js7-license.jar file that which has to be added to the following locations:

  • JOC Cockpit:
    • JETTY_BASE/lib/ext/joc
    • The js7-license.jar file has to be added for any all JOC Cockpit cluster members.
  • Controller:
    • JS7_CONTROLLER_DATAHOME/lib/user_lib
    • The js7-license.jar file has to be added for any all Controller cluster members.
  • Director Agent:
    • JS7_AGENT_HOME/lib/user_lib
    • The js7-license.jar file has to be added for all Director Agent cluster members. It is not applied to Subagents in an Agent Cluster and not to Standalone Agents.

License Check

A license check is performed if a cluster of JOC Cockpit instances, Controller instances or Agent instances is operated.

Positive License Check

Related messages are available from the JOC Cockpit's ./jetty_base/logs/joc.log file and the Controller's ./logs/watchdog.log file.

  • JOC Cockpit:
    • The positive license check indicates that a valid license is available, therefore this check works silently without further logging.
    • The GUI offers the information about the license in use when clicking the JS7 logo:

      Image Added

  • Controller:
    • The positive license check will log a single entry to in the controller.log file on start-up of the Controller. The entry looks like this:
      • 2021-05-28T06:14:33,196 info com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: js7.controller.cluster
      • Consider that the controller.log file is rotated and that the information is available from Controller start-up.
    • The license check will log two lines to the watchdog.log file on start-up of the Controller. The entries look like this:
      • Product Name: js7.controller.cluster
      • using Commercial License. Expiration Date: 2026-05-04 12:22:41
  • Director Agent:
    • The positive license check will log a single entry in the agent.log file on start-up of the Agent. The entry looks like this:
      • 2023-08-21T05:12:54,389 info com.sos.js7.license.agent.ClusterLicenseCheck - Product Name: js7.agent.cluster
      • Consider that the agent.log file is rotated and that the information is available from Agent start-up.
    • The license check will log two lines to the watchdog.log file on start-up of the Agent. The entries look like this:
      • Product Name: js7.controller.cluster
      • using Commercial License. Expiration Date: 2026-05-04 12:22:41

Negative License Checks

Logging examples for negative license checks that which indicate the absence of a license: Related messages are available from the JOC Cockpit's ./jetty_base/logs/joc.log file, the Controller's ./logs/controller.log file and the Director Agent's ./logs/agent.log file.

  • The license folder cannot be found.
    • JOC Cockpit:
      • 2021-05-28T11:37:02,797 INFO main c.s.j.l.c.LicenseChecker - Could not read directory: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license
        2021-05-28T11:37:02,801 INFO main c.s.j.l.c.LicenseChecker - No licence license certificates found.
    • Controller:
      • 2021-05-18T08:12:31,370 info  com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: JS7 Controller Cluster
        2021-05-18T08:12:31,372 info  com.sos.js7.license.check.LicenseChecker - Could not read directory: /var/sos-berlin.com/js7/controller/var/config/license
        2021-05-18T08:12:31,372 info  com.sos.js7.license.check.LicenseChecker - No licence license certificates found.
  • No files are present in the license folder.
    • JOC Cockpit:
      • 2021-05-28T11:04:23,651 INFO main c.s.j.l.c.LicenseChecker - No file(s) present in: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license
        2021-05-28T11:04:23,656 INFO main c.s.j.l.c.LicenseChecker - No licence license certificates found.
    • Controller:
      • 2021-05-18T08:17:17,412 info  com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: JS7 Controller Cluster
        2021-05-18T08:17:17,429 info  com.sos.js7.license.check.LicenseChecker - No file(s) present in: /var/sos-berlin.com/js7/controller/var/config/license
        2021-05-18T08:17:17,429 info  com.sos.js7.license.check.LicenseChecker - No licence license certificates found.
  • Files are present in the license folder, but do not represent valid X.509 certificates.
    • JOC Cockpit:
      • 2021-05-28T11:48:07,057 INFO main c.s.j.l.c.LicenseChecker - Could not parse certificate from file: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license\test.txt
        2021-05-28T11:48:07,061 INFO main c.s.j.l.c.LicenseChecker - No certificate(s) present in: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license
        2021-05-28T11:48:07,061 INFO main c.s.j.l.c.LicenseChecker - No licence license certificates found.
    • Controller:
      • 2021-05-18T08:27:43,110 info  com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: JS7 Controller Cluster
        2021-05-18T08:27:43,126 info  com.sos.js7.license.check.LicenseChecker - Could not parse certificate from file: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license\test.txt
        2021-05-18T08:27:43,127 info  com.sos.js7.license.check.LicenseChecker - No certificate(s) present in: C:\sp\devel\js7\testing\installations\joc\jetty_base\resources\joc\license
      • 2021-05-18T08:27:43,127 info  com.sos.js7.license.check.LicenseChecker - No licence license certificates found.
  • Cases of invalid certificates:
    • Certificate is not a License X.509 certificate issued by SOS.
      • JOC Cockpit:
        • 2021-05-28T11:40:01,694 INFO main c.s.j.l.c.LicenseChecker - License not a JS7 license.
          2021-05-28T11:40:01,699 INFO main c.s.j.l.c.LicenseChecker - DN: DNQ=SOS CA, CN=sp, OU=IT, O=SOS, L=Berlin, ST=Berlin, C=DE
      • Controller:
        • 2021-05-18T08:21:22,322 info  com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: JS7 Controller Cluster
          2021-05-18T08:21:22,395 info  com.sos.js7.license.check.LicenseChecker - License not a JS7 license.
          2021-05-18T08:21:22,396 info  com.sos.js7.license.check.LicenseChecker - DN: DNQ=SOS CA, CN=sp, OU=IT, O=SOS, L=Berlin, ST=Berlin, C=DE
    • The validity period of the License X.509 certificate is has expired.
      • JOC Cockpit:
        • 2021-05-28T11:44:38,921 INFO main c.s.j.l.c.LicenseChecker - license has expired on: Wed May 19 09:33:42 UTC 2021
          2021-05-28T11:44:38,926 INFO main c.s.j.l.c.LicenseChecker - License validity period failed.
      • Controller:
        • 2021-05-19T12:15:56,502 info  com.sos.js7.license.controller.ClusterLicenseCheck - Product Name: JS7 Controller Cluster
          2021-05-19T12:15:56,647 info  com.sos.js7.license.check.LicenseChecker - license has expired on: Wed May 19 09:33:42 GMT 2021
          2021-05-19T12:15:56,647 info  com.sos.js7.license.check.LicenseChecker - License validity period failed.

...

  • License keys do not implement technical license counting. SOS estimates it there to be a risk that due to use in restricted environments the license counting could fail when used in restricted environments and could prevent the software from running.
  • You can technically use the same license key for any number of JobScheduler instances. However, this might not comply with the commercial license terms that are agreed on for the license model that is applicable to your environment. 

...

  • SOS reserves the right to perform license measurement activities, e.g. to request that you to report job executions if a pay-per-use license model is in place. 
  • The license measurement procedure verifies the number of software instances and licenses in use.
  • Based The license measurement procedure can be performed on a regular basis depending on individual agreements for the license model that applies to your environment the license measurement procedure can be performed on a regular basis..

Further Resources