Skip to content

DRP Linode

These instructions can also be adapted to work on GCE or other cloud infrastructure.

The following video shows the process:


You can use public Stackscripts to quickly setup your DRP endpoint and attach nodes. They perform the same basic tasks as the code below.

  1. Create an endpoint using zehicle/drp and supply your version and password.
  2. Verify that the DRP Endpoint is available at the https://[endpoint_ip]:8092
  3. Use zehicle/drp-node to attach nodes to the endpoint. You'll need to know the endpoint_ip.
  4. profit.

Install DRP in Linode

You can use the Centos-8 Linux image. While more is recommended, make sure that you have at least 1 GB of RAM. You should open ports 8090/tcp, 8091/tcp, and 8092/tcp to access the DRP server.


DRP_PUBLIC_ADDRESS=<DRP public address>

### Now open the right firewall ports for DRP
firewall-cmd --permanent --add-port=8090/tcp
firewall-cmd --permanent --add-port=8091/tcp
firewall-cmd --permanent --add-port=8092/tcp
firewall-cmd --reload

### Install DRP
curl -fsSL | bash -s -- install --universal --version=$DRP_VERSION --drp-password=$DRP_PASSWORD --ipaddr=$DRP_PUBLIC_ADDRESS


Remember to fill in the public IP address of the system

Once the system is online, you can access DRP using https://\<DRP public address>:8092.

Join a machine to a DRP Endpoint in Linode

Once you have a DRP endpoint installed in Linode, you can create additional linode instances and join them to the DRP endpoint.

Bash script to run on linode instance

DRP_IP=[Public IP of DRP Endpoint]
DRP_PORT=8091 # The fileserver port of the DRP endpoint
OPEN_PORTS="22"  # ports to allow in

for PORT in ${OPEN_PORTS}; do
    firewall-cmd --permanent --add-port=${PORT}/tcp
firewall-cmd --reload

timeout 300 bash -c 'while [[ "$(curl -fsSL -o /dev/null -w %{http_code} ${DRP_IP}:${DRP_PORT}/machines/" != "200" ]]; do sleep 5; done' || false

curl -fsSL http://${DRP_IP}:${DRP_PORT}/machines/ | sudo bash --


Remember to fill in the public IP address of the system