Installing Boundary under Systemd
This section covers how to install Boundary under the systemd init system on modern Linux distributions. In this section, we'll cover an example of breaking out the controller and worker servers onto separate instances, though you can opt to run both on a single server.
Filesystem Configuration
TYPE
below can be either worker
or controller
if you want to run them independently, e.g. for high availability. If you want to run combined nodes, modify as desired.
/etc/boundary-${TYPE}.hcl
: Configuration file for the boundary service./usr/local/bin/boundary
: The Boundary binary, which can be built from the source or downloaded from our release page./etc/systemd/system/boundary-${TYPE}.service
: Systemd unit file for the Boundary service.
User & Group Configuration
We recommend running Boundary as a non-root user and using this user to manage the Boundary process running under systemd. The example init files here do exactly that. Our example install script below creates a user and group on Ubuntu or Debian-like systems.
Systemd Unit file
Systemd All-in-One Installation Script
Here's a simple install script that creates the boundary
group and user, installs the
systemd unit file, and enables it at startup: