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.

Deployment Descriptors are specified from files in JSON format and include instructions, for example to deploy a larger number of Agents on target machines.

The JS7 - Deployment Packaging Script 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_v1.0.jsonDescriptor JSON Schema.
  • The basic structure includes to specify an array of Agent JOC Cockpit objects.

Deployment Descriptor JSON Schema for JOC Cockpit

...

...

Examples

Standalone JOC Cockpit using HTTP Connections

...

  • Host centostest-primary operates the JOC Cockpit instance.
  • JOC Cockpit makes use of HTTP connections.

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


Code Block
titleExample for Deployment Descriptor
linenumberstrue
collapsetrue
{
    "descriptor": {
        "descriptorId": "standalone-joc-http-2022-12-2022120404",
        "title": "Install or update Standalone JOC Cockpit Standalone instance using HTTP connections",
        "account": "sossosap",
        "scheduled": "2022-12-02T0602T05:19:12.000+0100:00",
        "created": "2022-11-30T2330T22:19:12.000+0100:00"
    },
    "agentsjoc": [],
    {
 "controllers": [],
    "jocmembers": [{
        {
    "clusterId": "joc",
        "joc_001instances": {[
          {
      "primary": {
     "instanceId": 1,
              "target": {
              "packageLocation": "/tmp",
           "connection   "execPre": {"StopService",
              "execPost": "StartService",
              "hostmakeService": "centostest-primary"true,
              "connection": {
                "porthost": 22"centostest-primary",
                "port": 22
       },
          },
              "authentication": {
                            "method": "publickey",
                            "user": "sos",
                            "keyFile": "/home/sos/.ssh/sos_rsa"
              }
            },
            "media": {
              "packageLocationrelease": "/tmp2.5.3",
              "tarball": "2.5.3/js7_joc_linux.2.5.3.tar.gz"
         "execPre": "sudo systemctl stop joc-primary.service" },
            "installation": {
           "execPost": "sudo systemctl stop "setupDir": "/tmp/sos-berlin.com/js7/joc-primarystandalone.servicesetup",
                    }"isUser": true,
                    "media"isPreserveEnv": {true,
                   "home": "/opt/sos-berlin.com/js7/joc-standalone",
     "release         "data": "2.5.0/var/sos-berlin.com/js7/joc-standalone",
              "httpPort": "11446",
           "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_joc_linux.2.5.0.tar.gz"   "dbmsConfig": "joc/templates/dbms/h2/response/hibernate.cfg.xml",
                    },"dbmsDriver": "joc/templates/dbms/h2/response/h2-1.4.200.jar",
                    "installation"javaHome": {"/opt/java/jdk-11.0.2+9",
                        "setupDir"javaOptions": "/home/sos/js7.target/opt/joc-primary.setup",-Xmx256m -Djava.security.egd=file:///dev/urandom"
            },
            "homeconfiguration": "/home/sos/js7.target/opt/joc-primary",
{
              "templates": [
          "data": "/home/sos/js7.target/var/joc-primary",
      "joc/templates/http/resources"
              ]
           "httpPort": "11446", }
          }
        ]
      "isUser": true,}
    }
                    "isPreserveEnv": true,
                        "javaOptions": "-Xmx512m -Djava.security.egd=file:///dev/urandom"
                    },
                    "configuration": {
                        "responseDir": "joc/instances/joc_001.primary/response",
                        "templates": [
                            "joc/templates/http/resources"
                        ]
                    }
                }
            }
        }
    ]
}

Standalone JOC Cockpit using HTTPS Connections

The Deployment Descriptor specifies a Standalone JOC Cockpit instance:

  • Host centostest-primary operates the JOC Cockpit instance.
  • JOC Cockpit makes use of HTTPS connections.

Download example: joc-https-20221204.json

]
} 

Standalone JOC Cockpit using HTTPS Connections

The Deployment Descriptor specifies a Standalone JOC Cockpit instance:

  • Host centostest-primary operates the JOC Cockpit instance.
  • JOC Cockpit makes use of HTTPS connections.

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


Code Block
titleExample for Deployment Descriptor
linenumberstrue
collapsetrue
{
  "descriptor": {
    "descriptorId": "standalone-joc-https-2022-12-04",
    "title": "Install or update JOC Cockpit Standalone instance using HTTPS connections",
    "account": "sosap",
    "scheduled": "2022-12-02T05:19:12.000+00:00",
    "created": "2022-11-30T22:19:12.000+00:00"
  },
  "joc": [
    {
      "members": {
Code Block
titleExample for Deployment Descriptor
linenumberstrue
collapsetrue
{
    "descriptor": {
        "descriptorId": "joc-https-20221204",
        "title": "Install or update Standalone JOC Cockpit using HTTPS connections",
        "account": "sos",
        "scheduled": "2022-12-02T06:19:12+01:00",
        "created": "2022-11-30T23:19:12+01:00"
    },
    "agents": [],
    "controllers": [],
    "joc": [
        {
            "joc_001": {
                "primary": {
                    "target": {
                        "connection": {
                            "host": "centostest-primary",
                            "port": 22
                        },
                        "authentication": {
                            "method": "publickey",
                            "userclusterId": "sosjoc",
        "instances": [
                   "keyFile": "/home/sos/.ssh/sos_rsa"
{
            "instanceId": 1,
             },"target": {
              "connection": {
                "packageLocationhost": "/tmpcentostest-primary",
                "port": 22
       "execPre": "sudo systemctl stop joc-primary.service",
       },
              "authentication": {
          "execPost      "method": "sudo systemctl stop joc-primary.service"publickey",
                    }"user": "sos",
                "keyFile": "/home/sos/.ssh/sos_rsa"
    "media": {
          },
              "releasepackageLocation": "2.5.0/tmp",
              "execPre": "StopService",
           "tarball": "/mnt/releases/scheduler_setups//2.5.0/js7_joc_linux.2.5.0.tar.gz"
   "execPost": "StartService",
              "makeService": true
            },
            "media": {
              "installationrelease": {
"2.5.3",
              "tarball": "2.5.3/js7_joc_linux.2.5.3.tar.gz"
           "setupDir": "/home/sos/js7.target/opt/joc-primary.setup",
 },
              "installation": {
              "homesetupDir": "/hometmp/sos-berlin.com/js7.target/opt/joc-primarystandalone.setup",
                 "isUser": true,
       "data": "/home/sos/js7.target/var/joc-primary",
          "isPreserveEnv": true,
              "httpsPorthome": "11443/opt/sos-berlin.com/js7/joc-standalone",
                        "isUserdata": true,
          "/var/sos-berlin.com/js7/joc-standalone",
              "isPreserveEnvhttpPort": true"localhost:11446",
              "httpsPort": "centostest-primary.sos:11443",
              "javaOptionsdbmsConfig": "-Xmx512m -Djava.security.egd=file:///dev/urandom"
joc/templates/dbms/h2/response/hibernate.cfg.xml",
              "dbmsDriver": "joc/templates/dbms/h2/response/h2-1.4.200.jar",
            },
      "javaHome": "/opt/java/jdk-11.0.2+9",
              "configurationjavaOptions": {"-Xmx256m -Djava.security.egd=file:///dev/urandom"
            },
            "responseDirconfiguration": "joc/instances/joc_001.primary/response",
           {
              "certificates": {
                "cert": "joc/instances/joc.standalone/resources/centostest-primary.crt",
                "keyStore": "joc/instances/joc_001.primarystandalone/resources/https-keystore.p12",
                            "keyStorePassword": "jobscheduler",
            
                "keyPassword": "jobscheduler",
                "keyAlias": "centostest-primary",
                "trustStore": "joc/instances/joc_001.primarystandalone/resources/https-truststore.p12",
                "trustStorePassword": "jobscheduler"
             "trustStorePassword": "jobscheduler" },
              "templates": [
                "joc/templates/https/resources"
    },
          ],
              "templatesstartFiles": [{
                "httpIni": "joc/templates/https/start.d/http.ini",
                "httpsIni": "joc/templates/https/resources"/start.d/https.ini",
                "sslIni": "joc/templates/https/start.d/ssl.ini"
       ]
       }
             }
          }
      }
  ]
      }
    }
        }],
    ]"version": "1.5.3"
}

Resources