Running VAST means spawning a process of the
vast executable. A VAST process
can operate in two modes:
- Server: runs continuously and listens on a network socket accepting connections.
- Client: connects to the server to (1) submit a request and receive a response, (2) publish data, or (3) subscribe to data.
A server contains a special component called the node that acts as container for pluggable components implemented as actors. In the future, VAST you will be able to connect multiple nodes together to create a distributed system.
A standard deployment consists of a server close to the data sources and multiple clients that publish events and submit queries:
Start a server
start command spins up a VAST server that blocks until told to
By default, a VAST server listens on localhost and TCP port 42000.
Usually you would invoke
vast start only for testing purposes in a terminal.
In production you would typically use a service manager, e.g., systemd on
Stop a server
There exist 3 ways stop a server:
- Hit CTRL+C in the same TTY where you started VAST.
- Send the process a SIGINT or SIGTERM signal, e.g., via
pkill -2 vast. Sending VAST a SIGTERM is the same as (1).
Option (3) comes in handy when you are working with a remote VAST server.
Spawn a client
Every command except for
start is a client command that interacts with a
vast help for a list of available commands.
To select a specific VAST server to connect to,
configure the endpoint, e.g., by providing
--endpoint=host:port on the command line, exporting the environment variable
VAST_ENDPOINT=host:port, or setting the configuration option
vast.endpoint: host:port in your