Introduction
The Sentinel Installer is the quickest and easiest way to deploy Sentinel VoLTE on a Rhino installation. It has two main modes of operation: interactive mode and non-interactive mode. The interactive mode, which is the default mode, allows interactive configuration of the environment and the desired deployment, and non-interactive mode allows unattended installation based on a set of properties read from a file.
Command-line help
The installer can be run with the --help
or -h
argument to print a list of all the supported
arguments:
$ build/bin/installer --help Options: --configure-only : Only run the configure step of the installation, after asking the deployment module configuration questions. (default: false) --no-configure : Only run deploy and bind steps of the installation, not configure. Also skips the questions related to deployment module configuration. (default: false) -D (--deploy-module-deps) MODULES : A comma-separated list of modules to use as dependencies for the locally-created deployment module, either as simple module names or full Ivy strings -P (--print-properties) : Print a list of all the supported properties. This will recreate the local deployment module. (default: false) -d (--debug) : Enable debug logging (default: false) -h (--help) : Print usage information (default: true) -l (--logfile) FILE : Alternate logfile to use (default: /home/user/jan/msw/issues/volte-4617-print- installer-properties/ipsmgw-sdk/build/targe t/log/installer.log) -p (--properties) PROPERTYFILE : Run installer in non-interactive mode, using a property file created with a previous interactive run
Installing Sentinel VoLTE with the Sentinel Installer
Interactive mode
This is the default mode of the installer, which is used if the installer is invoked without any arguments from the root directory of the SDK:
$ build/bin/installer
This mode will ask a variety of questions about the desired setup and configuration of the deployment module:
-
Whether to create an offline repository. This will download all artifacts necessary for a complete installation, and allows to move the Sentinel VoLTE SDK to a machine without internet access at any point of the installation after the creation of the repository. For more information about offline repositories please refer to Running the SDK offline.
-
Basic SDK configuration. This allows configuring things like the Platform Operator name, the product version, and the details of the Rhino installation to use for deployment.
-
Configuration of the deployment module. This is the most substantial part of the installation. Several parameters necessary for a functioning deployment will be configured here. This includes things like addresses of other network functions, charging configuration, and other behavioural tweaks.
All of the answers to these questions will automatically get saved in a properties file named install.properties
.
This file can be used in non-interactive mode to perform an unattended installation.
At the end of the configuration the installer will ask whether to proceed with the actual installation or exit.
This makes it possible to prepare the installation on a workstation, copy the install.properties
file to an SDK on a production machine, and perform the actual installation there.
If there is an install.properties file present in the SDK when interactive mode is run, then the questions will default to the values from the properties file.
|
Non-interactive mode
Non-interactive mode allows an installation to be run unattended, making multiple similar deployments easier. In this mode the installer reads a properties file, either created automatically by the interactive mode or written by hand, to answer the questions that would normally be asked in interactive mode.
Non-interactive mode is invoked by passing the --properties
/-p
argument to the installer, together with the filename of the properties file to use:
$ build/bin/installer --properties install.properties
The installation will then begin immediately based on the values in the properties file.
Running deploy/bind and configure steps separately
Sometimes it may be desired to finish the deployment and binding of an installation, but not the configuration part.
There are two installer arguments available to support this, --no-configure
and --configure-only
.
These arguments can be passed to the installer during one of the two installation modes described above.
Both arguments are supported for both installation modes and any combination thereof.
If the --no-configure
argument is passed to the installer, the questions about the deployment module configuration will be skipped.
If the --configure-only
argument is passed to the installer then only the deployment module configuration questions will be asked.
Specifying deployment module dependencies manually
During normal operation the installer will either determine the upstream deployment module to use automatically, or ask any necessary questions to determine the correct deployment module.
However, in some cases it may be desired to specify the deployment module dependencies manually.
This is possible with the --deploy-module-deps
/-D
argument:
$ build/bin/installer --deploy-module-deps my-full-deploy,my-additional-deploy
The dependencies can be specified either as simple module names, or as full Ivy strings like myorg#branch#mymodule;latest.integration
:
$ build/bin/installer --deploy-module-deps opencloud#volte/2.8.0#sentinel-volte-full-gsm-deploy;2.8.0.0
Specifying a module as a simple name only works for official OpenCloud modules that have an entry in the release.properties
file in the root of the SDK.
Printing out supported properties
In order to make creating install.properties
files easier, it is possible to print out all supported properties with the installer, along with their default values.
This is accomplished with the --print-properties
/-P
argument:
$ build/bin/installer --print-properties You can choose to use the HSS or the HLR. If you select HSS, then supplementary service data will be read from the HSS, and the CMSISDN will be used for SCC TADS Routing. If you select HLR, then supplementary service data will be read from the HLR, and the MSRN will be used for SCC TADS Routing. Use HSS or HLR? [hss] > You can have the option of using CAP-based online charging instead of Diameter Ro-based online charging in your installation. This will deploy additional components. Deploy optional CAP-based online charging components? y/[N] > Creating deployment module deploy-volte ... done. # Available properties: gooffline=false doinstall=true deploymodule=sentinel-volte-hlr-full-deploy supplementary.data=hss deploy.cap=false sdk.component.vendor=UNSET sdk.component.version=1.0 ...
The output of this command can be redirected into a file to create a valid properties file for use in non-interactive mode.
$ build/bin/installer --print-properties > install.properties
This argument can be combined with --deploy-module-deps
to skip potential questions about the exact upstream deployment module to use.
Logfile location
The installer logs all of its interactions and the output of all the commands it runs to a logfile.
The default location for this logfile is build/target/log/installer.log
.
An alternative location can be specified with the --logfile
/-l
argument:
$ build/bin/installer --logfile /tmp/installer.log
This argument can be combined with any other argument.
Enabling debug output
The installer can be run in a debug mode, in which case it will write additional debug information to its logfile.
Debug mode can be enabled with the --debug
/-d
argument:
$ build/bin/installer --debug
This argument can be combined with any other argument.