mait.sh1.132.1

Private beta: features and content may change. No warranty; use at your own risk.

Customize VaaS Server

Set the port, path prefix and route, the session limits and timeouts, storage and retention, the Helm chart values, and what each application chooses.

Beta
Network

One TLS port, an optional path prefix, and a route that passes TLS through.

All settings are environment variables, read when the relay starts; restart after a change. Environment variables override the optional settings file your on-premise setup describes, which overrides the defaults. In the file, put lowercase names without the VAAS_ prefix under a vaas block, for example idle_timeout: 600.

VariableDefaultEffect
VAAS_PORT8443 (9443 in the container image)TLS port for the WebSocket relay, the HTTPS API and health
VAAS_BIND_ADDRESS0.0.0.0Address of the metrics listener
VAAS_PATH_PREFIXemptyPrefix for every public route, for example /vaas behind a router that keeps the path; health then answers at /vaas/health

The relay terminates TLS itself and checks each client's credential, so a proxy in front must pass TLS through unchanged. On Kubernetes the chart's TCP route uses Traefik with ingressRoute.tcp.hostSni; without Traefik set ingressRoute.tcp.enabled: false and expose Service port 8443 with a TCP load balancer. When you set a path prefix, add it to the health probes, to every client address and to the address you give your applications.

Sessions

How long applications wait, how many may wait, how large a frame may be.

VariableDefaultEffect
VAAS_HALF_OPEN_TIMEOUT30Seconds the first application waits for its partner
VAAS_IDLE_TIMEOUT300Seconds without traffic in one direction before the relay ends; each direction is timed separately
VAAS_MAX_SESSIONS_PER_CN100Waiting sessions allowed per account
VAAS_MAX_TOTAL_SESSIONS10000Waiting sessions allowed across all accounts
VAAS_MAX_FRAME_SIZE1048576Largest WebSocket frame and message, in bytes

Raising the limits raises memory use. Lowering the timeouts frees idle capacity sooner but ends quiet sessions earlier. The join message must always arrive within 10 seconds of connecting; that limit is fixed. Sessions never resume.

Storage

Where data lives and what is kept.

VariableDefaultEffect
VAAS_DATABASE_URLa file under /var/lib/vaasSession record and daily totals. Leave the default; the directory must be writable by the service user of the image
VAAS_RETENTION_DAYS7Days of detailed session record to keep; keep it above 2
VAAS_METRICS_ENABLEDtrueStarts the metrics listener
VAAS_METRICS_PORT9090Port for the metrics
MAIT_CHANNELunsetRelease channel of this relay: stable, beta or edge. For this relay it only labels metrics and daily totals. Without a value the label is unknown. Any other value stops the relay at start. Keep one value per database
MAIT_LOG_FORMATunsetjson for one JSON object per log line

Keep the metrics listener on a private network and never expose it to peers. An invalid value, such as text where a number is expected or an unsupported MAIT_CHANNEL, stops the relay at start with failed to load vaas-server config.

Mesh

How long members stay attached and whether relays share presence.

These apply when AIDCX containers join networks through the relay.

VariableDefaultEffect
VAAS_MESH_LEASE_SECS90Seconds a member stays attached without a heartbeat
VAAS_MESH_SWEEP_INTERVAL_SECS15How often expired members are removed
VAAS_MESH_FEDERATION_PEERSemptyComma-separated base addresses of other relays that receive this relay's mesh presence changes; empty turns it off
VAAS_MESH_FEDERATION_CLIENT_CERTemptyPath of a credentials file with the vaas:mesh feature that this relay presents to those relays
Chart values

What the Helm chart exposes.

ValueEffect
image.tagThe relay version to run
channelThe release channel label, as for MAIT_CHANNEL
liveAccess.urlThe account-access address from your on-premise setup
persistence.storageClass, persistence.sizeThe volume for /var/lib/vaas; the default is 2 GiB
ingressRoute.tcp.enabled, ingressRoute.tcp.hostSniThe Traefik route that passes TLS through for your hostname
replicaCountMust stay 1; the chart refuses higher values
envRelay settings, including the four mesh settings with their defaults; supply the complete list, because a Helm list replaces the chart's entries

Default resources are requests of 100m CPU and 64 MiB memory and limits of 500m CPU and 256 MiB. On a cluster that enforces network policies, add a policy that allows inbound traffic on 8443 from your ingress controller, on 9090 from your monitoring namespace if you scrape metrics, and outbound traffic from the relay to the account-access address. Start from helm show values ./vaas-server-chart.

Application side

Each application picks its own token and credential.

The relay does not push settings to applications. Each application is given the relay address, the server trust file and its own credential; applications that pair choose their own token, which must be fresh and unpredictable. The separate VaaS client command-line tool always uses the relay MAIT hosts for your channel and has no option for another address, so use the HTTP endpoints to list or end sessions on your own relay.