You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
Introduction
In the JS7 - Deployment process a Deployment Descriptor specifies
- which JS7 components of JOC Cockpit, Controller instances and Agents should be installed,
- where to install each JS7 component,
- 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 components.
Deployment Descriptor
Deployment Descriptors are specified from .json files.
- Users are strongly encouraged to validate their .json files against the Deployment Descriptor Schema: JS7_Deployment_Descriptor_v1.0.json
- The basic structure includes to specify an array of Agent objects.
Deployment Descriptor JSON Schema for JOC Cockpit
TODO
Examples
Standalone JOC Cockpit using HTTP Connections
The Deployment Descriptor specifies a Standalone JOC Cockpit instance:
- Host
centostest-primary
operates the JOC Cockpit instance. - JOC Cockpit makes use of HTTP connections.
Download example: joc-http-20221204.json
{
"descriptor": {
"descriptorId": "joc-http-20221204",
"title": "Install or update Standalone JOC Cockpit using HTTP 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",
"user": "sos",
"keyFile": "/home/sos/.ssh/sos_rsa"
},
"packageLocation": "/tmp",
"execPre": "sudo systemctl stop joc-primary.service",
"execPost": "sudo systemctl stop joc-primary.service"
},
"media": {
"release": "2.5.0",
"tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_joc_linux.2.5.0.tar.gz"
},
"installation": {
"setupDir": "/home/sos/js7.target/opt/joc-primary.setup",
"home": "/home/sos/js7.target/opt/joc-primary",
"data": "/home/sos/js7.target/var/joc-primary",
"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
{
"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",
"user": "sos",
"keyFile": "/home/sos/.ssh/sos_rsa"
},
"packageLocation": "/tmp",
"execPre": "sudo systemctl stop joc-primary.service",
"execPost": "sudo systemctl stop joc-primary.service"
},
"media": {
"release": "2.5.0",
"tarball": "/mnt/releases/scheduler_setups//2.5.0/js7_joc_linux.2.5.0.tar.gz"
},
"installation": {
"setupDir": "/home/sos/js7.target/opt/joc-primary.setup",
"home": "/home/sos/js7.target/opt/joc-primary",
"data": "/home/sos/js7.target/var/joc-primary",
"httpsPort": "11443",
"isUser": true,
"isPreserveEnv": true,
"javaOptions": "-Xmx512m -Djava.security.egd=file:///dev/urandom"
},
"configuration": {
"responseDir": "joc/instances/joc_001.primary/response",
"certificates": {
"keyStore": "joc/instances/joc_001.primary/resources/https-keystore.p12",
"keyStorePassword": "jobscheduler",
"keyPassword": "jobscheduler",
"trustStore": "joc/instances/joc_001.primary/resources/https-truststore.p12",
"trustStorePassword": "jobscheduler"
},
"templates": [
"joc/templates/https/resources"
]
}
}
}
}
]
}
Resources