Node Configuration
Node configuration parameters are specified in /app/smrtc/config/smrtc.yml. The installer populates the values during installation. See Installation. The smrtc process reads them once at startup.
Important
Changing node configuration parameters requires restarting the smrtc service and must be performed separately on each node. These parameters cannot be viewed or edited in the Smart Monitor interface.
Each parameter can be specified either as a key in smrtc.yml or as an environment variable. Both methods are equivalent.
Network and Ports
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
NODE_PORT | node.port | Public port for event ingestion, the management API, and /health | 9919 |
TRANSPORT_PORT | node.transport_port | Inter-node communication port | 9910 |
CLUSTER_NAME | cluster.name | Cluster name; must be the same on all nodes and match the OU field in the node certificate | smrtc_cluster |
NODE_ROLES | roles (top-level list without a section) | Node roles; master indicates a metadata quorum member, while an empty value indicates a non-voting replica | empty |
CLUSTER_NODES | cluster.nodes (list) | Node addresses used to join the cluster | empty |
CLUSTER_ADVERTISE_URL | node.advertise_url | Address that the node advertises to other nodes | empty |
TLS
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
TLS_ENABLED | tls.enabled | Enables TLS | false |
TLS_CERT_FILE | tls.cert_file | Node certificate | empty |
TLS_KEY_FILE | tls.key_file | Node private key | empty |
TLS_CA_CERT_FILE | tls.ca_cert_file | Certificate authority certificate | empty |
Authentication and Keystore
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
DEFAULT_ADMIN_USER | admin.user | Local administrator username; the password is stored in the keystore | admin |
KEYSTORE_FILE | keystore.file | Encrypted secret file | /app/smrtc/config/keystore |
KEYSTORE_PASSPHRASE | keystore.passphrase | Keystore passphrase | not set |
Data Directories
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
METADATA_DATA_DIR | data.metadata_dir | Metadata directory | /app/smrtc/data/metadata |
CLUSTER_DATA_DIR | cluster.data_dir | Cluster state directory | /app/smrtc/data/cluster |
TELEMETRY_DATA_DIR | data.telemetry_dir | Telemetry directory | /app/smrtc/data/telemetry |
FIRES_DATA_DIR | data.fires_dir | Firing log directory | /app/smrtc/data/fires |
ACTIVE_LISTS_DATA_DIR | data.active_lists_dir | Active lists directory | /app/smrtc/data/active-lists |
Engine and Queue
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
WORKER_COUNT | engine.worker_count | Worker pool size and number of internal correlation shards; 0 uses the number of CPU cores | 0 |
STATE_MAX_GROUPS | engine.state_max_groups | Maximum number of correlation groups in memory | 5000000 |
Memory Circuit Breaker
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
INGEST_MEMORY_CB_ENABLED | memory_circuit_breaker.enabled | Memory circuit breaker for event ingestion | true |
INGEST_MEMORY_CB_LIMIT_BYTES | memory_circuit_breaker.limit_bytes | Memory limit in bytes; 0 is determined automatically | 0 |
INGEST_MEMORY_CB_SOFT_PCT | memory_circuit_breaker.soft_pct | Soft limit threshold as a percentage of the limit | 85 |
INGEST_MEMORY_CB_HARD_PCT | memory_circuit_breaker.hard_pct | Hard limit threshold as a percentage of the limit | 92 |
INGEST_MEMORY_CB_RELEASE_PCT | memory_circuit_breaker.release_pct | Limit release threshold as a percentage of the limit | 75 |
Logging
| Parameter | Path in smrtc.yml | Description | Default |
|---|---|---|---|
LOG_FILE | log.file | Log file; an empty value sends output to journald | empty |
LOG_MAX_SIZE_MB | log.max_size_mb | Log file size before rotation, MB | 100 |
LOG_MAX_BACKUPS | log.max_backups | Number of retained log archives | 14 |
LOG_COMPRESS | log.compress | Compresses log archives | true |