Radiator Server Documentation — v10.34.2

cluster

Configure cluster inside management { http { ... } } to define cluster members and their connection settings.

Use the same node list and shared secret on every member. Set each process's instance ID with --instance-id or RADIATOR_INSTANCE_ID. Keep the existing management HTTP listener and authentication policy configured.

Example

management {
    http {
        cluster {
            secret env.CLUSTER_SHARED_SECRET;
            timeout 120s;
            retries 2;
            retry_interval 100ms;

            heartbeat {
                interval 2s;
                jitter 1s;
                timeout 1s;
            }

            tls {
                certificate "CLUSTER_NODE_CERT";
                certificate_key "CLUSTER_NODE_KEY";
                server_ca_certificate "CLUSTER_CA";
            }

            node "R00" {
                url "https://node-one.example:8443";
            }
            node "R01" {
                url "https://node-two.example:8443";
            }
        }
    }
}

Settings

  • local_node defaults to server.instance_id and must match a configured node name. Keep the management name and instance ID aligned. Set local_node explicitly when a different management name is needed. The server cluster ID is a separate identifier.
  • secret is required and must be a nonempty string or an environment expression that supplies one. Configure the same value on every member.
  • timeout sets the timeout for all cross-cluster communication and defaults to 120s. It must be greater than 0s and at most 1h.
  • retries sets the number of additional attempts for retryable failures. It defaults to 2 and accepts 0 through 10. Operations that cannot safely be repeated are not retried.
  • retry_interval sets the delay between retry attempts. It defaults to 100ms and accepts 0s through 1h.

Nodes

Add a named node block for each member, including the local member. Node names accept ASCII letters, digits, _ and -, up to 64 characters.

Each node requires a url pointing to its management HTTP or HTTPS listener. Use an origin without credentials, a path, a query or a fragment.

Heartbeat

“Heartbeat checks track which cluster members are reachable. Use the optional heartbeat block to override their settings

SettingPurposeDefaultAccepted values
intervalBase delay between checks.2sGreater than 0s, at most 1h.
jitterMaximum extra random delay.1s0s through 1h.
timeoutMaximum wait for a response.1sGreater than 0s, at most 1h.

TLS

The optional tls block configures outgoing TLS connections to cluster members. When configured, every node URL must use HTTPS.

  • certificate selects the client certificate for mutual TLS.
  • certificate_key selects its private key.
  • server_ca_certificate selects the CA certificate used to verify peers.

Without a tls block, HTTPS uses the native trust store.

Configure incoming TLS on the management listener.