Page History
...
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.
...
- Host
centostest-primary
operating an Agent, a Standalone Controller instance and JOC Cockpit instance. - All components products use HTTP connections.
Download example: agentstandalone-joc-controller-jocagent-http-2022-12-04.descriptor.json
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "descriptor": { "descriptorId": "agentstandalone-joc-controller-jocagent-http-2022-12-2022120404", "title": "Install or update JOC AgentCockpit, Controller and JOCAgent Standalone Cockpitinstances using HTTP connections", "account": "sossosap", "scheduled": "2022-12-02T0602T05:19:12.000+0100:00", "created": "2022-11-30T2330T22:19:12.000+0100:00" }, "agents": [{ "controllerRefs": [ { { "agent_001controllerId": {"controller", "target"members": {[ { "connection "agentId": "agent_001", "target": { "connection": { "host": "centostest-primary", "port": 22 }, "authentication": { "method": "publickey", "user": "sos", "keyFile": "/home/sos/.ssh/sos_rsa" }, "packageLocation": "/tmp", "execPre": "StopService", "execPost": "StartService", "makeService": true }, "media": { "release": "2.5.03", "tarball": "/mnt/releases/scheduler_setups/2.5.03/js7_agent_unix.2.5.03.tar.gz" }, "installation": { "home": "/homeopt/sos-berlin.com/js7.target/opt/agent-primary", "data": "/homevar/sos-berlin.com/js7.target/var/agent-primary", "httpPort": "31445", },"javaHome": "/opt/java/jdk8u202-b08" } "configuration": { }, { "controller": { "agentId": "agent_002", "controllerIdtarget": "testsuite"{ },"connection": { "templateshost": [ "centostest-secondary", "agents/templates/https/config"port": 22 }, ] "authentication": { } }"method": "publickey", } ], "controllersuser": ["sos", { "testsuite": {"keyFile": "/home/sos/.ssh/sos_rsa" "primary": { }, "targetpackageLocation": {"/tmp", "connection"execPre": {"StopService", "execPost": "StartService", "hostmakeService": "centostest-primary",true }, "portmedia": 22{ }"release": "2.5.3", "tarball": "2.5.3/js7_agent_unix.2.5.3.tar.gz" "authentication": { }, "installation": { "methodhome": "publickey/opt/sos-berlin.com/js7/agent-secondary", "userdata": "/var/sos-berlin.com/js7/agent-secondary", "httpPort": "32445", "keyFilejavaHome": "/homeopt/sos/.ssh/sos_rsajava/jdk8u202-b08" } }, ] } ] }, "packageLocationcontrollers": "/tmp",[ { "jocRef": "joc", "execPrecontrollerId": "StopServicecontroller", "primary": { "target": { "execPostconnection": "StartService",{ "host": "centostest-primary", "makeServiceport": true22 }, "authentication": { "mediamethod": {"publickey", "user": "sos", "releasekeyFile": "2.5.0",/home/sos/.ssh/sos_rsa" }, "tarballpackageLocation": "/mnt/releases/scheduler_setups/2.5.0/js7_controller_unix.2.5.0.tar.gz" tmp", "execPre": "StopService", }"execPost": "StartService", "makeService": true }, "installationmedia": { "release": "2.5.3", "hometarball": "/home/sos/js7.target/opt/controller-primary",2.5.3/js7_controller_unix.2.5.3.tar.gz" }, "installation": { "datahome": "/homeopt/sos-berlin.com/js7.target/var/controller-primarystandalone", "data": "/var/sos-berlin.com/js7/controller-standalone", "httpPort": "21444", }"javaHome": "/opt/java/jdk8u202-b08", "configuration": {"javaOptions": "-Xmx256m -Djava.security.egd=file:///dev/urandom" } } } ], "templatesjoc": [ { "members": { "clusterId": "joc", "controllers/templates/https.primary/config"instances": [ { ]"instanceId": 1, "target": { } "connection": { } }"host": "centostest-primary", } ], "jocport": [22 { }, "joc_001 "authentication": { "primarymethod": { "publickey", "targetuser": { "sos", "connectionkeyFile": {"/home/sos/.ssh/sos_rsa" }, "hostpackageLocation": "centostest-primary/tmp", "execPre": "StopService", "portexecPost": 22"StartService", },"makeService": true }, "authenticationmedia": { "release": "2.5.3", "methodtarball": "publickey",2.5.3/js7_joc_linux.2.5.3.tar.gz" }, "userinstallation": "sos", { "keyFile"setupDir": "/hometmp/sos-berlin.com/js7/.ssh/sos_rsa"joc-standalone.setup", "isUser": true, }, "isPreserveEnv": true, "packageLocationhome": "/tmpopt/sos-berlin.com/js7/joc-standalone", "data": "/var/sos-berlin.com/js7/joc-standalone", "execPrehttpPort": "StopService11446", "dbmsConfig": "joc/templates/dbms/h2/response/hibernate.cfg.xml", "execPostdbmsDriver": "StartServicejoc/templates/dbms/h2/response/h2-1.4.200.jar", "javaHome": "/opt/java/jdk-11.0.2+9", "makeService": true }, "javaOptions": "-Xmx256m -Djava.security.egd=file:///dev/urandom" }, "mediaconfiguration": { "releasetemplates": "2.5.0", [ "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_joc_linux.2.5.0.tar.gzjoc/templates/http/resources" }], "installationstartFiles": { "setupDir": "/home/sos/js7.target/opt/joc-primary.setup", "httpIni": "joc/templates/http/start.d/http.ini", "homehttpsIni": "joc/hometemplates/soshttp/js7start.target/opt/joc-primaryd/https.ini", "datasslIni": "joc/hometemplates/soshttp/js7start.target/var/joc-primary",d/ssl.ini" } "httpPort": "11446", } } ] "isUser": true,} } "isPreserveEnv": true, "javaOptions": "-Xmx512m -Djava.security.egd=file:///dev/urandom" }, "configuration": { ], "version": "1.5.3" } |
Agents, Controller Cluster and JOC Cockpit Cluster using HTTPS Connections
The Deployment Descriptor specifies a complete job scheduling environment including
- Host
centostest-primary
andcentostest-secondary
each operate an Agent, a Controller instance and a JOC Cockpit instance. - Controller and JOC Cockpit instances on both hosts act as a cluster. Use of clustering includes to deploy a JS7 license.
- All products use HTTPS connections and are equipped with certificates.
Download example: cluster-joc-controller-agent-https-2022-12-04.descriptor.json
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "descriptor": { "descriptorId": "cluster-joc-controller-agent-https-2022-12-04", "title": "Install or update JOC Cockpit, Controller and Agent Cluster instances using HTTPS connections", "responseDiraccount": "joc/instances/joc_001.primary/responsesosap", "scheduled": "2022-12-02T06:19:12+01:00", "created": "2022-11-30T23:19:12+01:00" }, "templateslicense": [{ "licenseKeyFile": "licenses/sos.pem", "licenseBinFile": "licenses/js7-license.jar" }, "agents": { "joc/templates/https/resources" controllerRefs": [ { ]"controllerId": "controller", "members": [ } }{ } } ] } |
Agents, Controller Cluster and JOC Cockpit Cluster using HTTPS Connections
The Deployment Descriptor specifies a complete job scheduling environment including
- Host
centostest-primary
andcentostest-secondary
each operate an Agent, a Controller instance and a JOC Cockpit instance. - Controller and JOC Cockpit instances on both hosts act as a cluster. Use of clustering includes to deploy a JS7 license.
- All components use HTTPS connections and are equipped with certificates.
Download example: agent-controller-joc-https-2022-12-04.json
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "descriptor": { "agentId": "agent_001", "target": { "connection": { "host": "centostest-primary", "port": 22 }, "authentication": { "method": "publickey", "user": "sos", "keyFile": "/home/sos/.ssh/sos_rsa" }, "packageLocation": "/tmp", "execPre": "StopService", "execPost": "StartService", "makeService": true }, "media": { "release": "2.5.3", "tarball": "2.5.3/js7_agent_unix.2.5.3.tar.gz" }, "installation": { "home": "/opt/sos-berlin.com/js7/agent-primary", "data": "/var/sos-berlin.com/js7/agent-primary", "httpPort": "localhost:31445", "httpsPort": "centostest-primary.sos:31443", "javaHome": "/opt/java/jdk8u202-b08" }, "configuration": { "certificates": { "keyStore": "agents/instances/agent_001/config/private/https-keystore.p12", "descriptorIdkeyStorePassword": "joc-controller-agents-all-20221204jobscheduler", "title": "Install or update Agent, Controller and JOC Cockpit using HTTPS connections", "accountkeyPassword": "sosjobscheduler", "scheduled": "2022-12-02T06:19:12+01:00", "createdtrustStore": "2022-11-30T23:19:12+01:00" }, agents/instances/agent_001/config/private/https-truststore.p12", "license": { "licenseKeyFiletrustStorePassword": "licenses/sos.pemjobscheduler", "licenseBinFile": "licenses/js7-license.jar" }, "certificates": { "controller": { }, "primaryControllerCert": "controllers/instances/testsuite.primary/config/private/centostest-primary.crt", "secondaryControllerCert": "controllers/instances/testsuite.secondary/config/private/centostest-secondary.crt" "templates": [ }, "joc": { "primaryJocCert": "jocagents/instances/joc_001.primary/resources/centostest-primary.crt", templates/https/config" "secondaryJocCert": "joc/instances/joc_001.primary/resources/centostest-secondary.crt" } },] "agents": [ { } "agent_001": { "target": { }, "connection": { "hostagentId": "centostest-primaryagent_002", "porttarget": 22 { }, "connection": { "authentication": { "methodhost": "publickeycentostest-secondary", "userport": "sos",22 "keyFile": "/home/sos/.ssh/sos_rsa" }, }, "authentication": { "packageLocation": "/tmp", "execPremethod": "StopServicepublickey", "execPost": "StartService", "user": "sos", "makeService": true }, "mediakeyFile": { "/home/sos/.ssh/sos_rsa" "release": "2.5.0" }, "tarball "packageLocation": "/mnt/releases/scheduler_setups/2.5.0/js7_agent_unix.2.5.0.tar.gz" tmp", }, "execPre": "StopService", "installation": { "home": "/home/sos/js7.target/opt/agent-primaryexecPost": "StartService", "data "makeService": "/home/sos/js7.target/var/agent-primary", true "httpPort": "localhost:31445", }, "httpsPortmedia": "centostest-primary:31443" { }, "configurationrelease": {"2.5.3", "controller": { "tarball": "2.5.3/js7_agent_unix.2.5.3.tar.gz" "controllerId": "testsuite" }, }, "certificatesinstallation": { "keyStorehome": "agents/instances/agent_001/config/private/https-keystore.p12opt/sos-berlin.com/js7/agent-secondary", "keyStorePassworddata": "jobscheduler/var/sos-berlin.com/js7/agent-secondary", "keyPassword": "jobscheduler", "trustStorehttpPort": "agents/instances/agent_001/config/private/https-truststore.p12"localhost:32445", "trustStorePasswordhttpsPort": "jobscheduler"centostest-secondary.sos:32443", }, "javaHome": "/opt/java/jdk8u202-b08" "templates": [ }, "agents/templates/https/config" "configuration": { ] } "certificates": { } }, { "keyStore": "agents/instances/agent_002": { /config/private/https-keystore.p12", "target": { "connectionkeyStorePassword": {"jobscheduler", "host "keyPassword": "centostest-secondaryjobscheduler", "port": 22 "trustStore": "agents/instances/agent_002/config/private/https-truststore.p12", }, "authenticationtrustStorePassword": {"jobscheduler" "method": "publickey", }, "usertemplates": "sos",[ "keyFile": "/home/sos/.ssh/sos_rsa" "agents/templates/https/config" }, ] "packageLocation": "/tmp", "execPre": "StopService",} "execPost": "StartService",} ] "makeService": true }, ] }, "mediacontrollers": {[ { "releasecontrollerId": "2.5.0controller", "jocRef": "joc", "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_agent_unix.2.5.0.tar.gz" "primary": { }, "target": { "installationconnection": { "homehost": "/home/sos/js7.target/opt/agent-secondarycentostest-primary", "dataport": "/home/sos/js7.target/var/agent-secondary",22 "httpPort": "localhost:32445"}, "httpsPortauthentication": "centostest-secondary:32443" { }, "method": "publickey", "configurationuser": {"sos", "controllerkeyFile": {"/home/sos/.ssh/sos_rsa" }, "controllerId": "testsuite" }"packageLocation": "/tmp", "certificatesexecPre": { "StopService", "keyStoreexecPost": "agents/instances/agent_002/config/private/https-keystore.p12StartService", "makeService": true "keyStorePassword": "jobscheduler", }, "keyPasswordmedia": "jobscheduler", { "trustStorerelease": "agents/instances/agent_002/config/private/https-truststore.p122.5.3", "trustStorePasswordtarball": "jobscheduler" 2.5.3/js7_controller_unix.2.5.3.tar.gz" }, },"installation": { "templateshome": ["/opt/sos-berlin.com/js7/controller-primary", "agents/templates/https/config" "data": "/var/sos-berlin.com/js7/controller-primary", ]"httpPort": "localhost:21444", } "httpsPort": "centostest-primary.sos:21443", } } ], "controllersjavaHome": ["/opt/java/jdk8u202-b08", { "testsuitejavaOptions": { "-Xmx256m -Djava.security.egd=file:///dev/urandom" "primary": { }, "targetconfiguration": { "connectioncertificates": { "hostcert": " "controllers/instances/controller.primary/config/private/centostest-primary.crt", "portkeyStore": 22"controllers/instances/controller.primary/config/private/https-keystore.p12", }"keyStorePassword": "jobscheduler", "authenticationkeyPassword": { "jobscheduler", "methodkeyAlias": "publickeycentostest-primary", "usertrustStore": "soscontrollers/instances/controller.primary/config/private/https-truststore.p12", "keyFiletrustStorePassword": "/home/sos/.ssh/sos_rsajobscheduler" }, "packageLocationtemplates": "/tmp",[ "execPre": "StopService", controllers/templates/https.primary/config" ] "execPost": "StartService", } }, "makeServicesecondary": true },{ "target": { "mediaconnection": { "releasehost": "2.5.0centostest-secondary", "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_controller_unix.2.5.0.tar.gz" "port": 22 }, "installationauthentication": { "homemethod": "/home/sos/js7.target/opt/controller-primarypublickey", "datauser": "/home/sos/js7.target/var/controller-primary", "httpPortkeyFile": "localhost:21444",/home/sos/.ssh/sos_rsa" "httpsPort": "centostest-primary:21443", }, "javaOptionspackageLocation": "-Xmx256m/tmp", }"execPre": "StopService", "configurationexecPost": { "StartService", "certificatesmakeService": {true }, "keyStoremedia": "controllers/instances/testsuite.primary/config/private/https-keystore.p12",{ "keyStorePassword"release": "jobscheduler2.5.3", "keyPasswordtarball": "jobscheduler",2.5.3/js7_controller_unix.2.5.3.tar.gz" }, "trustStore": "controllers/instances/testsuite.primary/config/private/https-truststore.p12", "installation": { "trustStorePasswordhome": "jobscheduler"/opt/sos-berlin.com/js7/controller-secondary", }, "data": "/var/sos-berlin.com/js7/controller-secondary", "templateshttpPort": ["localhost:22444", "controllers/templates/https.primary/config""httpsPort": "centostest-secondary.sos:22443", "javaHome": "/opt/java/jdk8u202-b08", ] "javaOptions": }"-Xmx256m -Djava.security.egd=file:///dev/urandom" }, "secondaryconfiguration": { "targetcertificates": { "connectioncert": { "controllers/instances/controller.secondary/config/private/centostest-secondary.crt", "hostkeyStore": "centostest-secondarycontrollers/instances/controller.secondary/config/private/https-keystore.p12", "portkeyStorePassword": 22"jobscheduler", } "keyPassword": "jobscheduler", "authenticationtrustStore": { "controllers/instances/controller.secondary/config/private/https-truststore.p12", "methodtrustStorePassword": "publickeyjobscheduler", }, "user": "sos", "templates": [ "keyFile": "controllers/hometemplates/sos/https.sshsecondary/sos_rsaconfig" ] }, } "packageLocation": "/tmp",} } ], "joc": [ "execPre": "StopService", { "members": { "execPostclusterId": "StartServicejoc", "instances": [ "makeService": true { }, "mediainstanceId": {1, "releasetarget": "2.5.0",{ "tarballconnection": "/mnt/releases/scheduler_setups/2.5.0/js7_controller_unix.2.5.0.tar.gz"{ }, "host": "centostest-primary", "installation": { "homeport": "/home/sos/js7.target/opt/controller-secondary", 22 "data": "/home/sos/js7.target/var/controller-secondary" }, "httpPortauthentication": "localhost:22444",{ "httpsPort "method": "centostest-secondary:22443publickey", "javaOptions": "-Xmx256m" "user": "sos", }, "configurationkeyFile": { "/home/sos/.ssh/sos_rsa" "certificates": { }, "keyStorepackageLocation": "controllers/instances/testsuite.secondary/config/private/https-keystore.p12/tmp", "keyStorePasswordexecPre": "jobschedulerStopService", "keyPasswordexecPost": "jobschedulerStartService", "trustStoremakeService": "controllers/instances/testsuite.secondary/config/private/https-truststore.p12",true }, "trustStorePassword": "jobscheduler" "media": { }, "templatesrelease": ["2.5.3", "controllers/templates/https.secondary/config" "tarball": "2.5.3/js7_joc_linux.2.5.3.tar.gz" }, ] "installation": { } }"setupDir": "/tmp/sos-berlin.com/js7/joc-primary.setup", } } ], "jochome": ["/opt/sos-berlin.com/js7/joc-primary", { "joc_001": { "data": "/var/sos-berlin.com/js7/joc-primary", "primary": { "httpPort": "target": { localhost:11446", "connectionhttpsPort": {"centostest-primary.sos:11443", "hostdbmsConfig": "centostest-primaryjoc/templates/dbms/mysql/response/hibernate.cfg.xml", "portisUser": 22true, } "isPreserveEnv": true, "authenticationjavaHome": {"/opt/java/jdk-11.0.2+9", "methodjavaOptions": "publickey",-Xmx256m -Djava.security.egd=file:///dev/urandom" "user": "sos"}, "keyFileconfiguration": "/home/sos/.ssh/sos_rsa"{ }, "certificates": { "packageLocation": "/tmp", "cert": "joc/instances/joc.primary/resources/centostest-primary.crt", "execPre": "StopService", "execPostkeyStore": "StartServicejoc/instances/joc.primary/resources/https-keystore.p12", "makeServicekeyStorePassword": true"jobscheduler", }, "mediakeyPassword": {"jobscheduler", "release "trustStore": "2.5.0joc/instances/joc.primary/resources/https-truststore.p12", "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_joc_linux.2.5.0.tar.gz" "trustStorePassword": "jobscheduler" }, }, "installation": { "setupDirstartFiles": "/home/sos/js7.target/opt/joc-primary.setup", { "homehttpIni": "joc/hometemplates/soshttps/js7start.target/opt/joc-primaryd/http.ini", "datahttpsIni": "joc/hometemplates/soshttps/js7start.target/var/joc-primaryd/https.ini", "httpPort": "localhost:11446", "sslIni": "joc/templates/https/start.d/ssl.ini" "httpsPort": "centostest-primary:11443", }, "isUser": true, "templates": [ "isPreserveEnv": true, "javaOptions": "-Xmx512m -Djava.security.egd=file:///dev/urandom" joc/templates/https/resources" }, ] "configuration": { } "responseDir": "joc/instances/joc_001.primary/response", "certificates": { }, { "keyStoreinstanceId": "joc/instances/joc_001.primary/resources/https-keystore.p12", 2, "keyStorePasswordtarget": "jobscheduler",{ "keyPasswordconnection": "jobscheduler",{ "trustStorehost": "joc/instances/joc_001.primary/resources/https-truststore.p12centostest-secondary", "trustStorePasswordport": "jobscheduler" 22 }, "templatesauthentication": [{ "joc/templates/https/resources" "method": "publickey", ] "user": "sos", } },"keyFile": "/home/sos/.ssh/sos_rsa" "secondary": { }, "target": { "connectionpackageLocation": {"/tmp", "hostexecPre": "centostest-secondaryStopService", "portexecPost": 22"StartService", }, "makeService": true "authentication": { }, "methodmedia": "publickey",{ "userrelease": "sos2.5.3", "keyFiletarball": "/home/sos/.ssh/sos_rsa2.5.3/js7_joc_linux.2.5.3.tar.gz" }, "packageLocation": "/tmp", installation": { "execPresetupDir": "StopService/tmp/sos-berlin.com/js7/joc-secondary.setup", "execPosthome": "StartService/opt/sos-berlin.com/js7/joc-secondary", "makeServicedata": true"/var/sos-berlin.com/js7/joc-secondary", }, "mediahttpPort": { "localhost:12446", "releasehttpsPort": "2.5.0", centostest-secondary.sos:12443", "tarballdbmsConfig": "joc/mnttemplates/releasesdbms/scheduler_setups/2.5.0/js7_joc_linux.2.5.0.tar.gz"mysql/response/hibernate.cfg.xml", }, "isUser": true, "installationisPreserveEnv": {true, "setupDirjavaHome": "/homeopt/sosjava/js7.target/opt/joc-secondary.setupjdk-11.0.2+9", "homejavaOptions": "/home/sos/js7.target/opt/joc-secondary",-Xmx256m -Djava.security.egd=file:///dev/urandom" "data": "/home/sos/js7.target/var/joc-secondary"}, "httpPortconfiguration": "localhost:12446",{ "httpsPortcertificates": "centostest-secondary:12443", { "isUsercert": true, "joc/instances/joc.secondary/resources/centostest-secondary.crt", "isPreserveEnvkeyStore": true, "joc/instances/joc.secondary/resources/https-keystore.p12", "javaOptionskeyStorePassword": "-Xmx512m -Djava.security.egd=file:///dev/urandom"jobscheduler", }, "keyPassword": "jobscheduler", "configuration": { "responseDirtrustStore": "joc/instances/joc_001.secondary/response/resources/https-truststore.p12", "certificates": { "trustStorePassword": "jobscheduler" "keyStore": "joc/instances/joc_001.secondary/resources/https-keystore.p12"}, "keyStorePasswordstartFiles": "jobscheduler",{ "keyPasswordhttpIni": "jobschedulerjoc/templates/https/start.d/http.ini", "trustStorehttpsIni": "joc/instances/joc_001.secondary/resources/https-truststore.p12templates/https/start.d/https.ini", "trustStorePasswordsslIni": "jobschedulerjoc/templates/https/start.d/ssl.ini" }, "templates": [ "joc/templates/https/resources" ] } } ] } } ] } |
Resources
...