Skip to main content
Version: Tenzir v4.9

Deploy a node

A node is a managed service for pipelines and storage.

Install a node

Start at app.tenzir.com and click Add in the nodes pane. Then select your platform.

Docker

We provide Docker images and a Docker Compose file for a container setup. Install a node as follows:

  1. Enter a name for your node and click the download button to obtain the docker-compose.NODE.yaml configuration file where NODE is the name you entered for your node.
  2. Run
    docker compose -f docker-compose.NODE.yaml up

Edit the Docker Compose file and change environment variables to adjust the configuration.

Linux

We offer a native deployment on various Linux distributions. Install a node as follows:

  1. Enter a name for your node and click the download button to obtain a platform.yaml configuration file.
  2. Move the platform.yaml to <sysconfdir>/tenzir/plugin/platform.yaml so that the node can find it during startup where <sysconfdir> might be /etc. See the configuration files documentation for more options.
  3. Run our installer to install a binary package on any Linux distribution:
    curl https://get.tenzir.app | sh

The installer script asks for confirmation before performing the installation. If you prefer a manual installation you can also perform the installer steps yourself.

Download the latest Debian package and install it via dpkg:

dpkg -i tenzir-static-amd64-linux.deb

macOS

Please use Docker with Rosetta until we offer a native package.

Start a node

Implicit start with Docker

You can skip this step if you use Docker because docker compose up already starts a node for you.

Run the tenzir-node executable to start a node:

tenzir-node
      _____ _____ _   _ ________ ____
|_ _| ____| \ | |__ /_ _| _ \
| | | _| | \| | / / | || |_) |
| | | |___| |\ |/ /_ | || _ <
|_| |_____|_| \_/____|___|_| \_\

v4.0.0-rc6-0-gf193b51f1f
Visit https://app.tenzir.com to get started.

This will spawn a blocking process that listens by default on the TCP endpoint 127.0.0.1:5158. Select a different endpoint via --endpoint, e.g., bind to an IPv6 address:

tenzir-node --endpoint=[::1]:42000
Unsafe Pipelines

Some pipeline operators are inherently unsafe due to their side effects, e.g., reading from a file. When such operators run inside a node, you may involuntarily expose the file system to users that have access to the node, or when you connect the node to the Tenzir platform and manage it via app.tenzir.com. This may constitute a security risk.

We therefore forbid pipelines with such side effects by default. If you are aware of the implications, you can remove this restriction by setting tenzir.allow-unsafe-pipelines: true in the tenzir.yaml of the respective node.

Stop a node

There exist two ways stop a server:

  1. Hit CTRL+C in the same TTY where you ran tenzir-node.
  2. Send the process a SIGINT or SIGTERM signal, e.g., via pkill -2 tenzir-node.

Sending the process a SIGTERM is the same as hitting CTRL+C.

Automate the deployment

Read our guides on automating the deployment of a node: