Introduction
- The JS7 Agent can be installed and operated in any Unix and Windows environments that meet the prerequisites.
- The Agent is installed on Unix systems without use of an installer by extracting a .tar.gz archive.
- The Agent can be installed on Windows systems
- without use of an installer by extracting a .zip archive. This allows a portable installation that requires no administrative privileges or
- by running the Agent installer in headless mode.
- by running the Agent graphical installer, see JS7 - Agent - Installation Using the Windows Graphical Installer.
Prerequisites
- A Java Runtime Environment starting from version 1.8 is required. For details see Which Java versions is JobScheduler available for?
Download
- Download the Agent archive for the target system from the JS7 - Download page.
- For Unix systems:
- A .tar.gz archive is available that is extracted to create the Agent's directory structure (see below).
js7_agent_unix.<release>.tar.gz
- A .tar.gz archive is available that is extracted to create the Agent's directory structure (see below).
- For Windows systems:
- A .zip archive is available that is extracted to create the Agent's directory structure (see below).
js7_agent_windows.<release>.zip
- A .zip archive including the installer is available that is used to run the installer in headless mode.
js7_agent_windows_installer.<release>.zip
- A .zip archive is available that is extracted to create the Agent's directory structure (see below).
- For Unix systems:
Installation Video
This video explains the installation.
Installation from the .tar.gz/.zip Archive
Installation
- Extract the downloaded archive file to a directory.
- After extraction the resulting directory structure includes (only files and folders immediately relevant):
agent
license.gpl
(copy of GPLv3 (General Public License) )license.html, license.txt
(copy of JS7 JobScheduler Commercial License Agreement)ThirdParty.txt
(list of 3rd party components and licenses included with the JS7 Agent)bin
agent.cmd|sh
- The Start Script for Windows/Unix platforms
agent_credential_value.cmd|sh
- The script for access to a credential store on Windows/Unix platforms
agent_instance.sh-example
- The template for the Agent Instance Start Script
agent_watchdog.cmd|sh
- Restarts the Agent for Windows/Unix platforms
lib
(directory for Java libraries)service
(directory for operation as a Windows Service)var
(configuration directory)config
(directory for configuration files)agent.conf
(general Agent configuration)private
(directory for security related configuration files)private.conf-example
(security related configuration)- For setting up HTTPS connections see JS7 - Agent Configuration Items
- For setting up authentication and digital signature checks
trusted-pgp-keys
(empty directory, can be used to add individual PGP public keys for signing, see JS7 - Secure Deployment)trusted-x509-keys
(directory to hold X.509 certificates for signing, see JS7 - Secure Deployment)sos.intermediate-ca.pem
(default certificate of SOS to allow deployment with JOC Cockpit)
logs
(directory for log files)work
(directory for work files)
yade
(directory for the YADE file transfer utility)
- On Windows Systems:
- You have to modify the directory permissions for the above
.\logs
and.\service
directories if you extracted the Agent to e.g.C:\Program Files
.- This step is not required if you extract the Agent e.g. to
C:\ProgamData
. Start a command prompt with elevated administrative rights and execute e.g.
Allow full acces for "Users" on .\service and .\logs directoriescd "path\to\installation-directory" icacls "service" /L /grant *S-1-5-32-545:(OI)(CI)F icacls "logs" /L /grant *S-1-5-32-545:(OI)(CI)F
- This step is not required if you extract the Agent e.g. to
- You have to modify the directory permissions for the above
- If more than one run-time instance of an Agent starting from the same Agent installation is used then every instance has to use its individual
./var_<http-port of the instance>
data directory, e.g../var_4445
,./var_4447
etc. as each Agent instance has to use an individual port when operated on the same server. - To start the Agent you can use the commands explained with the JS7 - Agent - Command Line Operation article or your can automate startup from the instructions provided by the below chapter "Automated Startup and Shutdown".
Update
Preparation
- Stop any running JS7 Agent instances. Note that more than one Agent instance can be launched from a single Agent installation.
- Prepare to rollback in case that the update of the JS7 Agent is not successful:
- Make a backup of the Agent's installation directory and configuration directory, e.g. by creating a .tar.gz/.zip archive.
- Installation Directory:
- The default installation directory for the Agent is
/opt/sos-berlin.com/js7/agent
for Unix systems,C:\Program Files\sos-berlin.com\js7\agent
for Windows systems.
- The default installation directory for the Agent is
- Configuration Directory
- The default configuration directory for the Agent is
/home/<user-account>/sos-berlin.com/js7/agent_<http-port>
for Unix systems,C:\ProgramData\sos-berlin.com\js7\agent_<http-port>
for Windows systems.
- The default configuration directory for the Agent is
- Installation Directory:
- Make a backup of the Agent's installation directory and configuration directory, e.g. by creating a .tar.gz/.zip archive.
Running the Update
The update of the JS7 Agent is performed from the same download archive as used for a fresh installation.
- When extracting files to a location that has already been used then existing files with the same name will be overwritten. Files added by the user will remain in place.
- This is particularly true for the Agent Start Script
./bin/agent.sh|cmd
, which should not be modified by users. Instead, apply changes to a new Agent Instance Start Script file./bin/agent_<http-port>.sh|cmd
. This script is used to configure a number of environment variables and before executing the Agent Start Script.
- This is particularly true for the Agent Start Script
- The .tar.gz/.zip archive includes Java libraries in the
./lib
directory that ship with file names that are unique to every Agent release.- Therefore, before extracting files, rename or remove an existing
./lib
directory in order to store libraries from the current Agent release only in this directory.
- Therefore, before extracting files, rename or remove an existing
Example for Installation from the Unix Command Line
The Agent is installed with a few straightforward commands:
# download archive (consider to use a current release that matches the Controller release) curl 'https://download.sos-berlin.com/JobScheduler.2.1/js7_agent_unix.2.1.0.tar.gz' --output js7_agent_unix.2.1.0.tar.gz # extract archive tar xvzf js7_agent_unix.2.1.0.tar.gz # find extracted files in the "agent" sub-directory ls -la agent # prepare an instance start script from the example cd agent/bin cp -p agent_instance.sh-example agent_4445.sh # optionally activate/adjust environment variables in agent_4445.sh # JS7_AGENT_HTTP_PORT=4445 # JAVA_HOME=... # run the Agent ./agent_4445.sh start
Installation using the Windows Installer in Headless Mode
The installer is available for Windows systems only.
- To run the Windows installer in graphical mode see JS7 - Agent - Installation Using the Windows Graphical Installer.
- To run the Windows installer in headless mode consider the information below.
Installation
After extraction of the installer .zip archive the directory structure will include:
agent_install.xml
(installer response file)install_agent.txt
(installation notes)js7_agent_windows.<release>.jar
(installer library for a given release)license.txt, license.html
(copy of JS7 JobScheduler Commercial License Agreement)setup.cmd
(installer script)
Installer Response File
- The Agent installation uses the
agent_install.xml
response file, which includes parameters such as the installation path, ports, etc.- For a fresh installation the installer response file is included with the downloaded archive.
- The default location of the
agent
_install.xml
file from a previous installation is:C:\Program Files\sos-berlin.com\js7\agent
The
agent_i
nstall.xml
file is explained with the code listing below. The comments included are intended to be self-explanatory.
Download: agent_install.xml
Running the Installer
Running the installer of the JS7 Agent on Windows systems
Running the installer of JS7 Agent on Windows systemsC:\temp\agent.[release]> setup.cmd agent_install.xml
Directory Structure
After installation the resulting directory structure will be similar to that described in the Installation from .tar.gz/.zip Archive chapter above.
Directories for installation and configuration of the Agent might differ.
Installation Log
The installer creates a log file in the directory specified in the JS7_AGENT_LOGS
environment variable or in the logs
sub-directory of the Agent configuration directory.
- The default location of the
logs
directory is:C:\ProgramData\sos-berlin.com\js7\agent_<http-port>
- Installation log files are named according to the pattern
Install_V<release>_<date-time>_....log
where<
release>
is the release number and<
date-time>
refers to the point in time of installation. - For further information about logging see JS7 - Logging.
Update
Preparation
- Stop any running JS7 Agent instances. Note that more than one Agent instance can be launched from a single Agent installation.
- Prepare to rollback in case the update of the JS7 Agent is not successful.
- Make a backup of the Agent's installation and configuration directories, e.g. by creating a .zip archive.
- Installation Directory:
- The default installation directory for the Agent is
C:\Program Files\sos-berlin.com\js7\agent
- The default installation directory for the Agent is
- Configuration Directory
- The default configuration directory for the Agent is
C:\ProgramData\sos-berlin.com\js7\agent_<http-port>
- The default configuration directory for the Agent is
- Installation Directory:
- Make a backup of the Agent's installation and configuration directories, e.g. by creating a .zip archive.
Running the Update
The update procedure makes use of the same installer response file as described for a fresh installation.
Steps to run the installer are the same as described for a fresh installation.
Rollback
Rolling back an Installation from .tar.gz/.zip Archive
- To rollback the installation of a JS7 Agent instance, remove the newly created installation and configuration directories of the JS7 Agent.
- Restore the directories from a previous backup, e.g. by extracting the respective .tar.gz/.zip backup archives to the installation and configuration directories.
Rolling back an Installation by the Windows Installer in Headless Mode
- To perform the rollback of a JS7 Agent installation run the uninstaller from the command line.
- The default location of the
uninstall.cmd
file is:C:\Program Files\sos-berlin.com\js7\agent\Uninstaller
- The default location of the
- Restore from a previous backup, e.g. by extracting the .tar.gz/.zip archive to the installation and configuration directories.
- Re-install the Windows Service from the command line:
- Switch to the
.\bin
directory of the Agent installation.- The default location of the
.\bin
directory is:C:\Program Files\sos-berlin.com\js7\agent\bin
- The default location of the
Run the Agent Instance Start Script installs the Agent's Windows Service:
agent_<http-port>.cmd
install
-service
- Switch to the
Automated Startup and Shutdown
Startup and shutdown configurations apply for Unix systems. These are executed by the root
account e.g. from /etc/init.d
scripts and use systemd
.
- Note the use of the
JS7_AGENT_USER
environment variable from the./bin/agent_<http-port>.sh
instance start script to run an Agent that is started byroot
for a different user account. - A sample service file for use with
systemd
can be found at./bin/agent.service-example
. - For details see JS7 - systemd Service Files for automated Startup / Shutdown with Unix Systems
Operation of the Agent by a Windows Service is recommended for Windows systems as such services can be configured to start/stop automatically on server startup and shutdown.
- Consider assigning a service account to the JS7 Agent service with the Windows Service Panel.
- Consider allowing the JS7 Agent service to be automatically started on server startup.
Initial Operation
Having completed the installation or update of a JS7 Agent you can start the Agent either manually or from its Unix daemon/Windows Service, see JS7 - Agent Command Line Operation.
Further References
- Installation
- Operation
- Configuration