Skip to main content

General installation

The installation of nevisDetect includes the following software packages:

Package nameComponentRemarks
nevisdetect-<version>.noarch.rpmnevisDetect Persistency, nevisDetect Core, nevisDetect Feature Correlator, nevisDetect Web App, nevisDetect Controller, nevisDetect Message BusContains all nevisDetect components plus an example ActiveMQ message bus
nevisdetect-admin-<version>.noarch.rpmnevisDetect Web App, nevisDetect ControllerContains an embedded Tomcat servlet container.
nevisdetect-core-<version>.noarch.rpmnevisDetect Core
nevisdetect-entrypoint-<version>.noarch.rpmnevisDetect Feature Correlator
nevisdetect-persistency-<version>.noarch.rpmnevisDetect PersistencyContains an embedded Tomcat servlet container. Contains the database schema.
nevisdetectcl-<version>.noarch.rpmnevisDetect AuthStateContains the AuthState that can be integrated into nevisAuth.

Install all software packages with the user "nvauser" and the group "nvbgroup". As a precondition, this user and group must exist.

The software packages of all components are similar from an installation point of view. Therefore, we first give a general description of the installation of nevisDetect and its components (see the subchapters below). In this general part, we use the placeholder <component> in code snippets and descriptions, instead of persistency, admin, core or entrypoint.

After discussing the installation in general, the manual proceeds with a description of each component's installation peculiarities.

File system layout​

The table below describes the layout of the file system:

PathDescriptionType
/opt/nevisdetect/<component>/Read-only base directory of the installation, owned by the user "bin" and group "bin".Installation directory
/opt/nevisdetect/<component>/template/conf/Templates for runtime configuration files in /var/opt/nevisdetect/<component>/conf
/opt/nevisdetect/<component>/util/util.shHelper script used during the post-install- and pre-remove-phase of the package.
/opt/nevisdetect/<component>/util/nevisdetect-<component>Command line interface (CLI) for administration. A link in /usr/bin is created during installation.
/opt/nevisdetect/<component>/bin/nevisdetect-<component>-exec.jarSpring Boot jar containing the application. It must be started via the nevisdetect-<component> CLI/service script or an explicit java -jar call.
/opt/nevisdetect/<component>/bin/nevisdetect-<component>-serverWrapper script that sources env.conf (JAVA_HOME, JAVA_OPTS) and starts nevisdetect-<component>-exec.jar via java -jar. Used as ExecStart in the shipped nevisdetect-<component>.service systemd unit.
/usr/lib/systemd/system/nevisdetect-<component>.serviceSystemd unit file for the component.
/usr/bin/nevisdetect-<component>Alias for /opt/nevisdetect/<component>/util/nevisdetect-<component>.
/var/opt/nevisdetect/<component>/Read/write directory of the installation, owned by the user "nevisdetect" and group "nevisdetect".Spool directory
/var/opt/nevisdetect/<component>/bin/nevisdetect-<component>-exec.jarSpring Boot jar containing the application (see note above; plain, non-executable jar as of 7.2605.0.5).
/var/opt/nevisdetect/<component>/conf/<component>.propertiesMinimal component configuration file.
/var/opt/nevisdetect/<component>/conf/env.confConfiguration file for the nevisdetect-<component> service.
/var/opt/nevisdetect/<component>/conf/example-all-<component>.propertiesComponent configuration file containing all possible configuration attributes.
/var/opt/nevisdetect/<component>/conf/logback.xmllogback configuration file.
/var/opt/nevisdetect/<component>/conf/role-to-permission.propertiesRole to the permission mapping file (only for the admin and persistency components)
/var/opt/nevisdetect/<component>/logs/nevisdetect-<component>.logLog file(s).
/var/opt/nevisdetect/<component>/logs/nevisdetect-<component>.stdoutThe system redirects stdout to this file.

Software package installation​

This section describes the installation of a nevisDetect component.

  1. First, execute the following command to install the components:
rpm -i nevisdetect-<version>.noarch.rpm

During the installation, the software is installed in /opt/nevisdetect/<component>/.

All components provide a command line interface for administration:

  • Core component: nevisdetect-core
  • Administration component: nevisdetect-persistency
  • Persistency component: nevisdetect-admin
  • Entrypoint component: nevisdetect-entrypoint
  • Message bus component: nevisdetect-mq

See also the example of the nevisDetect Core component (nevisdetect-core) below:

root@nevisrdf-1:/var/opt/rpms# nevisdetect-core

usage:
nevisdetect-core start # starts the core component
nevisdetect-core stop # stops the core component
nevisdetect-core restart # restarts the core component
nevisdetect-core status # displays the status of the core component
nevisdetect-core handover # creates the default configuration of the core component
  1. As a subsequent step, you have to create the spool directory. For this, execute the command nevisdetect-<component> handover.

The following happens during the handover:

  • Creation of the spool directory structure (when it not already exists).
  • Generation of the following files:
    • /var/opt/nevisdetect/<component>/conf/<component>.properties
    • /var/opt/nevisdetect/<component>/conf/example-all-<component>.properties
    • /var/opt/nevisdetect/<component>/conf/env.conf
    • /var/opt/nevisdetect/<component>/conf/logback.xml

The configuration of the runtime environment of a service is located in the file env.conf.

caution

As of nevisDetect 7.2605.0.5, nevisdetect-<component>-exec.jar is a plain (non-executable) Spring Boot jar and can no longer be run directly (for example ./nevisdetect-<component>-exec.jar). Start it via nevisdetect-<component> start or an explicit java -jar invocation.

If you maintain a custom systemd unit, stop pointing ExecStart directly at nevisdetect-<component>-exec.jar. Instead set ExecStart=/opt/nevisdetect/<component>/bin/nevisdetect-<component>-server and WorkingDirectory=/var/opt/nevisdetect/<component> so that env.conf is found, and move any custom JAVA_HOME/JAVA_OPTS into /var/opt/nevisdetect/<component>/conf/env.conf.

The following sample code block illustrates the installation of the nevisDetect Core service:

# variables used by the nevisdetect-core service script, which starts
# /var/opt/nevisdetect/core/bin/nevisdetect-core-exec.jar via "java -jar"
APP_NAME=nevisdetect-core
JAVA_OPTS="-Xmx1024M -XX:+UseG1GC -Dloader.path=/var/opt/nevisdetect/core/libs -Dlogback.configurationFile=/var/opt/nevisdetect/core/conf/logback.xml -Dlogging.config=/var/opt/nevisdetect/core/conf/logback.xml -Dspring.main.web-environment=false"
LOG_FOLDER=/var/opt/nevisdetect/core/logs
LOG_FILENAME=nevisdetect-core.stdout

# variables used by the application i.e. logback and spring
export NEVISDETECT_SPOOL_DIR=/var/opt/nevisdetect/core/
export NEVISDETECT_APP_NAME=nevisdetect-core

During the handover, the following minimal component configuration file is created: /var/opt/nevisdetect/<component>/conf/<component>.properties. This file only contains required configuration attributes related to the connectivity of the components of nevisDetect. Therefore, you need to further configure the file. The following code block gives an example of such a configuration for the nevisDetect Core component:

# JMS connectivity
jms.client.brokerURL=ssl://nevisrdf-1.zh.adnovum.ch:8282
jms.client.keyStore=file:/var/opt/neviskeybox/default/rdf-dev/core_keystore.jks
jms.client.keyStorePassword=rdf-core
jms.client.trustStore=file:/var/opt/neviskeybox/default/rdf-dev/truststore.jks
jms.client.trustStorePassword=rdf-test

# HTTP client SSL configuration
http.client.keyStore=file:/var/opt/neviskeybox/default/rdf-dev/core_keystore.jks
http.client.keyStorePassword=rdf-core
http.client.trustStore=file:/var/opt/neviskeybox/default/rdf-dev/truststore.jks
http.client.trustStorePassword=rdf-test

#URL of the persistency service
persistency.server.URL=https://nevisrdf-1.zh.adnovum.ch:8181/nevisdetect/persistency

Software package de-installation​

To deinstall all nevisDetect components, run the following command:

rpm -e nevisdetect-<version>.noarch

During the deinstallation, the services are stopped and deregistered. The spool directory is not modified, so a subsequent installation will have the same configuration.