Skip to main content
Version: 6.1

Installation

This article describes how to install SMRTC using the installer.

Requirements

  • Linux x86_64
  • systemd (systemctl, journalctl)
  • The openssl, curl, and hostname utilities available in PATH. On RHEL-family distributions (RHEL, CentOS, Alma, Rocky, and UBI), the hostname package is not installed by default and must be installed separately, for example, by running dnf install hostname
  • Root privileges (sudo), unless non-root mode is used
  • Available ports: 9919 for the public API and event ingestion, and 9910 for inter-node communication

Distribution Contents

The distribution archive contains:

  • the smrtc-server executable
  • configuration templates in the config/, services/, and certs/ directories
  • the systemd unit for the smrtc service

Running the Installer

tar -xzf smrtc-linux-installer.tar.gz
cd smrtc-linux-installer
sudo bash setup.sh install

setup.sh parameters:

ParameterDescription
-c, --config <yaml>Runs a non-interactive installation, update, or removal using a YAML answer file
--dry-runApplies only to uninstall: shows what will be removed without making changes
-h, --helpDisplays help

Running setup.sh without arguments opens an action selection menu (install, update, or uninstall). The default action is update if the /etc/systemd/system/smrtc.service unit already exists on the system, and install if it does not.

Installation Steps

The interactive installation consists of six steps:

  1. Installation directories - the installation directory (default: /app/smrtc) and log directory (default: /app/logs/smrtc). If an existing installation is detected on the host, the installer suggests its paths as the default values
  2. Non-root mode - optional non-root operation and the service user and group (default: smrtc/smrtc)
  3. Cluster settings - whether the node joins an existing cluster, transport addresses of running nodes, whether the node is a metadata master, and the cluster name. For details about cluster deployment, see Adding a Node to a Cluster
  4. Local administrator credentials - the password for the built-in admin user. It is requested only during the initial installation; a joining node receives the administrative account from the cluster
  5. TLS settings - whether to use an existing certificate authority or generate a new one, as well as the CN, country, state or region, city, organization, external IP address, and Subject Alternative Names (SANs) for the node certificate
  6. Search Anywhere Framework connection - addresses, TLS usage, username, and password. A joining node specifies only the password; it receives the other values from the cluster

The public port is fixed at 9919 and is not requested during this step. After installation, the smrtc service is enabled and started, and the correlator address is registered in Search Anywhere Framework.

Verifying the Installation

Check whether the node is operational by sending a request to /health. The endpoint reports node readiness, including the status of the control plane, correlation, active lists, and event ingestion:

cat /app/smrtc/certs/ca.crt > smrtc-local-ca.crt
curl --cacert smrtc-local-ca.crt https://<host>:9919/health

After a successful installation, the STREAMING CORRELATOR group appears under Settings in the Search Anywhere Framework interface.

File Locations

PathDescription
/app/smrtc/bin/smrtc-serverCorrelator executable
/app/smrtc/config/smrtc.ymlNode configuration
/app/smrtc/config/keystoreSecret storage for the admin password and Search Anywhere Framework connection password
/app/smrtc/certs/TLS material: ca.crt, ca.key, node-cert.pem, and node-key.pem
/app/smrtc/data/Node data: Raft metadata, cluster state, active lists, and rule triggers
/app/smrtc/content/Content packs imported at startup (soc-baseline.zip during the initial installation)
/etc/systemd/system/smrtc.servicesystemd unit

The smrtc.yml parameters are described in Node Configuration.