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.
Future releases of JS7 will add the functionality to generate and to download Deployment Descriptors directly from the JS7 Agent inventory.
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
- A number of JSON validators are available online and for use with the command line, for example see http://json-schema.org/implementations.html
- The basic structure includes to specify an array of Agent, Controller and JOC Cockpit objects.
- A Deployment Descriptor can include Agents, Controllers and JOC Cockpit instances individually or as a combination.
Example for an Agent Deployment Descriptor:
{ "descriptor": { "descriptorId": "agent-http-2022-12-04", "title": "Install or update Agent for HTTP connections", "account": "sos", "scheduled": "2022-12-02T06:19:12+01:00", "created": "2022-11-30T23:19:12+01:00" }, "agents": [ { "agent_001": { "target": { "connection": { "host": "centostest-primary", "port": 22 }, "authentication": { "method": "publickey", "user": "sos", "keyFile": "/home/sos/.ssh/sos_rsa" }, "packageLocation": "/tmp", "execPre": "systemctl stop js7.agent_001", "execPost": "systemctl start js7.agent_001" }, "media": { "release": "2.5.0", "tarball": "/mnt/releases/scheduler_setups/2.5.0/js7_agent_unix.2.5.0.tar.gz" }, "installation": { "home": "/opt/sos-berlin.com/js7/agent-primary", "data": "/var/sos-berlin.com/js7/agent-primary", "httpPort": "31445" } } }, ], "controllers": [], "joc": [] }
Explanation:
target
- The Agent deployment package will be deployed to the host
centostest-primary
using thesos
account with a private key file for SSH authentication. The deployment package will be stored to the/tmp
directory. - Before extraction of the deployment package the Agent will be stopped and after extraction it will be started using JS7 - systemd Service Files for automated Startup and Shutdown with Unix Systems
- The Agent deployment package will be deployed to the host
media
- The Agent will be installed or updated to release 2.5.0 using a copy of the tarball as offered from the JS7 - Download page that is made available from a mount point.
installation
- The Agent's
- installation directory is
/opt/sos-berlin.com/js7/agent-primary
. - configuration directory is
/var/sos-berlin.com/js7/agent-primary
.
- installation directory is
- The Agent will make use of HTTP connections and will listen to port
31445
.
- The Agent's
Resources
Links
Pages
Pages
Navigation