Versions Compared

Key

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

...

In the JS7 - Deployment process a Deployment Descriptor specifies

  • which JS7 components products of JOC Cockpit, Controller instances and Agents should be installed,
  • where to install each JS7 componentproduct,
  • which installation options to use, for example the installation directory,
  • which configuration options to use, for example port usage.

...

The JS7 - Deployment Packaging makes use of the Deployment Descriptor to install and to package JS7 componentsproducts.

Deployment Descriptor

Deployment Descriptors are specified from .json files.

  • Users are strongly encouraged to validate their .json files against the Deployment Descriptor Schema, see JS7 - Deployment Descriptor JSON Schema.
  • The basic structure includes to specify an array of Agent Controller objects.

Deployment Descriptor JSON Schema for Controller

...

Examples

Standalone Controller using HTTP Connections

...

  • Host centostest-primary operates the Controller instance.
  • The Controller makes use of HTTP connections.

Download example: standalone-controller-http-202212042022-12-04.descriptor.json


Code Block
titleExample for Deployment Descriptor
linenumberstrue
collapsetrue
{
    "descriptor": {
        "descriptorId": "standalone-controller-http-2022-12-2022120404",
        "title": "Install or update Controller Standalone Controllerinstance using HTTP connections",
        "account": "sos",
        "scheduled": "2022-12-02T0602T05:19:12.000+0100:00",
        "created": "2022-11-30T2330T22:19:12.000+0100:00"
    },
    "agents": [],
    "controllers": [
        {
            "standalonejocRef": {"joc",
        "controllerId": "controller",
        "primary": {
                    "target": {
                        "connection": {
                            "host": "centostest-primary",
                            "port": 22
                        },
                        "authentication": {
                            "method": "publickey",
                            "user": "sos",
                            "keyFile": "/home/sos/.ssh/sos_rsa"
          },
              }"packageLocation": "/tmp",
              "execPre": "StopService",
          "packageLocationexecPost": "/tmpStartService",
          "makeService": true
         },
                    "media": {
                        "release": "2.5.03",
                        "tarball": "/mnt/releases/scheduler_setups/2.5.03/js7_controller_unix.2.5.03.tar.gz"
                    },
                    "installation": {
                        "home": "/homeopt/sos-berlin.com/js7.target/opt/controller-primarystandalone",
                        "data": "/homevar/sos-berlin.com/js7.target/var/controller-primarystandalone",
                        "httpPort": "2344421444",
                        "javaOptionsjavaHome": "-Xmx256m"
                    },
  /opt/java/jdk8u202-b08",
                  "configuration"javaOptions": {
                        "templates": [
                            "controllers/templates/https.primary/config"
                        ]
                    }
   "-Xmx256m -Djava.security.egd=file:///dev/urandom"
             }
            }
        }
    ],
    "jocversion": []"1.5.3"
}

Standalone Controller using HTTPS Connections

...

  • Host centostest-primary operates the Controller instance.
  • The Controller makes use of HTTPS connections and is equipped with a certificate.

Download example: standalone-controller-https-20221204-2022-12-04.descriptor.json


Code Block
titleExample for Deployment Descriptor
linenumberstrue
collapsetrue
{
    "descriptor": {
        "descriptorId": "standalone-controller-https-202212042022-12-04",
        "title": "Install or update Controller Standalone Controllerinstance using HTTPS connections",
        "account": "sos",
        "scheduled": "2022-12-02T0602T05:19:12.000+0100:00",
        "created": "2022-11-30T2330T22:19:12.000+0100:00"
    },
    "agentscertificates": [],{
    "controllers": [
       "joc": {
            "standaloneprimaryJocCert": {"joc/instances/joc.standalone/resources/centostest-primary.crt"
        }
    },
    "primarycontrollers": {[
    {
          "jocRef": "joc",
      "targetcontrollerId": {"controller",
                "primary": {
        "connectiontarget": {
              "connection": {
              "host": "centostest-primary",
                            "port": 22
                        },
                        "authentication": {
                            "method": "publickey",
                            "user": "sos",
                            "keyFile": "/home/sos/.ssh/sos_rsa"
          },
              }"packageLocation": "/tmp",
             "execPre": "StopService",
           "packageLocationexecPost": "/tmpStartService",
          "makeService": true
         },
                    "media": {
                        "release": "2.5.03",
                        "tarball": "/mnt/releases/scheduler_setups/2.5.03/js7_controller_unix.2.5.03.tar.gz"
                    },
                    "installation": {
                        "home": "/homeopt/sos-berlin.com/js7.target/opt/controller-primarystandalone",
                        "data": "/homevar/sos-berlin.com/js7.target/var/controller-primarystandalone",
                        "httpPort": "localhost:2344321444",
                        "httpsPort": "centostest-primary.sos:2344321443",
            "javaHome": "/opt/java/jdk8u202-b08",
            "javaOptions": "-Xmx256m"
             -Djava.security.egd=file:///dev/urandom"
        },
                    "configuration": {
                        "certificates": {
                            "keyStore": "controllers/instances/controller.standalone/config/private/https-keystore.p12",
                            "keyStorePassword": "jobscheduler",
                            "keyPassword": "jobscheduler",
                            "trustStore": "controllers/instances/controller.standalone/config/private/https-truststore.p12",
                            "trustStorePassword": "jobscheduler"
                        },
                        "templates": [
                            "controllers/templates/https.primary/config"
                        ]
                    }
                }
            }
        }
    ],
    "jocversion": []"1.5.3"
}    

Resources

...