Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --http-port=4444 \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# creates the home directory if it does not exist
# extracts the tarball to the Controller's home directory
# operates the Controller for HTTP port 4444

Install or Update for Controller ID

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# creates the home directory if it does not exist
# specifies the Controller ID that is a unique identifier:
#   in a Controller Cluster all Controller instances use the same Controller ID
#   for Standalone Controller instances each instance requires a unique Controller ID
# extracts the tarball to the Controller's home directory
# operates the Controller for HTTP port 4444

Install or Update for Secondary Controller Instance in a Cluster

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz
 
./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/opt/sos-berlin.com/js7/controller/sos-berlin.com/js7/controller \
    --controller-id="controller" \
     --http-port=4444 \
    --Standby \
    --make-dirs

# downloads the Controller release tarball from the SOS Web Site using curl
# specifies the Controller ID that is used by all instances in the Controller Cluster
# puts the Controller instance to initial standby mode for use within a cluster, the following applies for cluster setup:
#    the Primary Controller instance is not configured for standby mode
#    the Secondary Controller instance is configured for standby mode
# creates the home directory if it does not exist
# extracts the tarball to the Controller's home directory
# populates the data directory from initial configuration files
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \ 
    --home=/opt/sos-berlin.com/js7/controller \
    --data=/var/sos-berlin.com/js7/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --make-dirs

# downloads the Controller release tarball from the SOS Web Site using curl
# suggests use of separate home and data directories for configuration data, log data etc.
# creates the home and data directories if they do not exist
# extracts the tarball to the Controller's home directory
# populates the data directory from initial configuration files
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
./js7_install_controller.sh \
    --release=2.5.2 \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --license-key=/home/sos/example.pem \
    --make-dirs

# downloads the Controller release tarball from the SOS Web Site
# downloads the binary file for licensed code to enable cluster operations
# creates the home directory if it does not exist
# extracts the tarball to the Controller's home directory
# installs the license key file and binary file for licensed code
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7-license.jar' -o /tmp/js7-license.jar

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --license-key=/home/sos/example.pem \
    --license-bin=/tmp/js7-license.jar \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# downloads the binary file for licensed code to enable cluster operations
# creates the home directory if it does not exist
# extracts the tarball to the Controller's home directory
# installs the license key file and binary file for licensed code
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --exec-start="StartService" \
    --exec-stop="StopService" \
    --make-service \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# extracts the tarball to the Controller's home directory
# creates the Controller's systemd service
# stops and starts the Controller's systemd service
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller/sos/controller \
    --controller-id="controller" \
     --http-port=4444 \
    --exec-start="sudo systemctl start js7_controller" \
    --exec-stop="sudo systemctl stop js7_controller" \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# extracts the tarball to the Controller's home directory
# stops and starts the Controller instance by use of individual commands
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --restart \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# extracts the tarball to the Controller's home directory
# stops and starts the Controller from its instance start script
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --java-home=/opt/java/jdk-11.0.2+9 \
    --java-options="-Xmx512m -Xms256m" \
    --restart \
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# extracts the tarball to the Controller's home directory
# specifies the Java version and Java options to be used
# stops and starts the Controller from its instance start script <home>/bin/controller_instance.sh
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz
retval=/tmp/js7_install_controller.$$.tmp

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --backup-dir=/tmp/backups \
    --log-dir=/tmp/logs \
    --return-values=$retval \
    --exec-start="StartService" \
    --exec-stop="StopService" \
    --make-service \
    --make-dirs
 
log_file=$(cat $retval | grep "log_file" | cut -d'=' -f2)
backup_file=$(cat $retval | grep "backup_file" | cut -d'=' -f2)

# downloads the release tarball from the SOS Web Site using curl
# creates a backup archive and log file
# extracts the tarball to the Controller's home directory
# provides return values from a temporary file which includes the path to the log file and to the backup archive
# stops and starts the Controller from its systemd service
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz
retval=/tmp/js7_install_controller.$$.tmp

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=4444 \
    --backup-dir=/tmp/backups \
    --log-dir=/tmp/logs \
    --return-values=$retval \
    --restart \
    --show-logs \
    --make-dirs
 || ( backup=$(cat $retval | grep "backup_file" | cut -d'=' -f2 ) \
      && ( test -e "$backup" ) && \
      ./js7_install_controller.sh \
          --tarball=$backup \
          --home=/home/sos/controller \
          --controller-id="controller" \
          --http-port=4444 \
          --log-dir=/tmp/logs \
          --restart \
          --show-logs )

log_file=$(cat $retval | grep "log_file" | cut -d'=' -f2)
backup_file=$(cat $retval | grep "backup_file" | cut -d'=' -f2)

# downloads the release tarball from the SOS Web Site using curl
# creates a backup archive and log file
# extracts the tarball to the Controller's home directory
# reverts the installation from the backup archive in case of failure
# stops and starts the Controller from its instance start script
# operates the Controller for HTTP port 4444

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
curl 'https://download.sos-berlin.com/JobScheduler.2.5/js7_controller_unix.2.5.2.tar.gz' -o /tmp/js7_controller_unix.2.5.2.tar.gz

./js7_install_controller.sh \
    --tarball=/tmp/js7_controller_unix.2.5.2.tar.gz \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=localhost:4444 \
    --https-port=batch.example.com:4444 \
    --private-conf=/home/sos/controller-deployment/private.conf \
    --joc-primary-cert=/home/sos/controller-deployment/centostest-primary.crt \
    --joc-secondary-cert=/home/sos/controller-deployment/centostest-secondary.crt \ 
    --keystore=/home/sos/controller-deployment/https-keystore.p12 \
    --keystore-password=jobscheduler \
    --truststore=/home/sos/controller-deployment/https-truststore.p12 \
    --truststore-password=jobscheduler \ 
    --exec-start=StartService \
    --exec-stop=StopService \
    --make-service
    --make-dirs

# downloads the release tarball from the SOS Web Site using curl
# extracts the tarball to the Controller's home directory
# specifies HTTP port 4444 on the localhost network interface and the same HTTPS port on the server network interface
# specifies the paths to the Primary and Secondary JOC Cockpit's server certificates if a JOC Cockpit Cluster is operated
#     for a Standalone JOC Cockpit the -joc-secondary-cert argument is dropped
# deploys the Controller private configuration file which holds references to keystore and truststore
# deploys keystore and truststore files
# stops and starts the Controller's systemd service

...

Code Block
titleExample for use of Controller Installer Script
linenumberstrue
./js7_install_controller.sh \
    --home=/home/sos/controller \
    --controller-id="controller" \
    --http-port=localhost:4444 \
    --https-port=batch.example.com:4444 \
    --private-conf=/home/sos/controller-deployment/private.conf \
    --joc-primary-cert=/home/sos/controller-deployment/centostest-primary.crt \
    --joc-secondary-cert=/home/sos/controller-deployment/centostest-secondary.crt \ 
    --keystore=/home/sos/controller-deployment/https-keystore.p12 \
    --keystore-password=jobscheduler \
    --truststore=/home/sos/controller-deployment/https-truststore.p12 \
    --truststore-password=jobscheduler \
    --exec-start=StartService \
    --exec-stop=StopService \
    --no-install

# performs no installation but certificate renewal only
# addresses an existing Controller instance operated for HTTP port 4444 on the localhost network interface and the same HTTPS port on the server network interface
# specifies the paths to the Primary and Secondary JOC Cockpit's server certificates if a JOC Cockpit Cluster is used
#     for a Standalone JOC Cockpit the --joc-secondary-cert argument is dropped
# deploys a Controller private configuration file that holds references to keystore and truststore
# deploys keystore and truststore files
# stops and starts the Controller's systemd service

...