Installation
This article describes how to install the correlator using the installer.
Requirements
- Linux x86_64
systemd(systemctl,journalctl)- The
openssl,curl, andhostnameutilities available inPATH. On RHEL-family distributions (RHEL, CentOS, Alma, Rocky, and UBI), thehostnamepackage is not installed by default and must be installed separately, for example, by runningdnf 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:
| Item | Description |
|---|---|
setup.sh | The only entry point: install, update, uninstall, or a menu when run without arguments |
source/smrtc-server | Correlator executable (linux/amd64) |
config/smrtc.yml.sample | Template the node configuration is rendered from |
services/smrtc.service.sample | systemd unit template |
certs/ca-cert-req.sample | openssl request configuration for the cluster certificate authority |
certs/node-cert-req.sample | openssl request configuration for the node certificate: OU equals the cluster name, plus the SAN list |
smrtc-install.yaml.example | Example answer file for an unattended installation |
README-INSTALL.md | Brief installation instructions |
While the installer runs, a staging/ directory appears next to setup.sh. It holds the rendered templates, the generated certificates and, during an update, backups of the previous configuration, keystore, and systemd unit.
Running the Installer
The archive name contains the product version, but it always extracts into the smrtc-linux-installer directory:
tar -xzf smrtc-linux-installer-<version>.tar.gz
cd smrtc-linux-installer
sudo bash setup.sh install
setup.sh parameters:
| Parameter | Description |
|---|---|
-c, --config <yaml> | Runs a non-interactive installation, update, or removal using a YAML answer file |
--dry-run | Applies only to uninstall: shows what will be removed without making changes |
-h, --help | Displays 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:
- 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 - Non-root mode - optional non-root operation and the service user and group (default:
smrtc/smrtc) - 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
- Local administrator credentials - the password for the built-in
adminuser. It is requested only during the initial installation; a joining node receives the administrative account from the cluster - 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
- 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
| Path | Description |
|---|---|
/app/smrtc/bin/smrtc-server | Correlator executable |
/app/smrtc/config/smrtc.yml | Node configuration |
/app/smrtc/config/keystore | Secret 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, telemetry, active lists, and firings |
/etc/systemd/system/smrtc.service | systemd unit |
The smrtc.yml parameters are described in Node Configuration.
Adding a Node to a Cluster
Adding a new node to a Streaming Correlator cluster: deployment sequence, certificate requirements, and automated installation using an answer file.
Updating and Removing the Correlator
Updating an installed Streaming Correlator node, completely removing the correlator from a node, and managing the service.