Versions Compared

Key

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


Table of Contents

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 components.products.
  • 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

License Key

The license key is an X.509 certificate that is issued and signed by SOS. 

  • 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.

Trial License Key

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 has applied for the trial license key.
  • Trial license keys will become invalid 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 is offered for download from the SOS web sitewhich is 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 license key ships as an X.509 certificate file (*.crt) that is added to the following directories:following sections make use of specific terms:

  • Terms used for JOC Cockpit
      JOC Cockpit:
      • For Linux environments JETTY_BASE points by default to:
      • /var/sos-berlin.com/js7/joc/resources/licenseParts of the above path such as 
      • For Windows environments JETTY_BASE points by default to: C:\ProgramData\/var/sos-berlin.com/\js7/joc can be specified differently \joc
      • JETTY_BASE is specified during installation.
    • Terms used for a Controller:
      • For Linux environments JS7_CONTROLLER_DATA points by default to:
      • /var/sos-berlin.com/js7/controller/var/config/licenseParts of the above path such as 
      • For Windows environments JS7_CONTROLLER_DATA points by default to: C:\ProgramData\/var/sos-berlin.com/js7/controller can be specified differently \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/var/config/licenseParts of the above path such as /var/sos-berlin.com/js7/agent can be specified differently during installation
      • JS7_AGENT_DATA is specified during installation.

    The license key ships as an X.509 certificate file (*.pem) 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 all JOC Cockpit cluster members.
    • Controller:
      • For Linux and Windows: JS7_CONTROLLER_DATA/config/license
      • The license key has to be applied to 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 is which has to be added to the following directorieslocations:

    • JOC Cockpit:Controller:
      • JETTY_BASE/lib/ext/joc
      • The js7-license.jar file has to be added for all JOC Cockpit cluster members.
    • Controller:
      • JS7_CONTROLLER_HOME/lib/user_lib
      • The js7-license.jar file has to be added for 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, 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 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 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 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:
      • Parts of the above path such as /var/sos-berlin.com/js7/controller can be specified differently during installation.
      Agent
        • 2021-05-18T08:12:31,372 info  com.sos.js7.license.check.LicenseChecker - No 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 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:
      • agent
    • 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 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 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
        Parts of the above path such as /var/sos-berlin.com/js7/agent can be specified differently during installation.
          • .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 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 Usage

    License Counting

    • License keys do not implement technical license counting. SOS estimates there to be a risk that 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. 

    License Measurement

    • SOS reserves the right to perform license measurement activities, e.g. to request that you 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.
    • The license measurement procedure can be performed on a regular basis depending on individual agreements for the license model that applies to your environment.

    Further Resources