Running a Avail Full Node with Binaries

bigrod
2 min readOct 29, 2023

--

This guide provides step-by-step instructions on how to set up and run a full node for the Avail network using pre-compiled binaries. Whether you’re a beginner or an experienced node operator, this guide aims to make the process straightforward.

We recommend downloading the pre-compiled binary for speed and convenience.

ATTENTIONS: if Your server OS is not debian 11/12, ubuntu 2204/2304, fedora 37/38, pls use docker to run the avail node.

  1. hardware requirements

This is the hardware configuration required to set up an Avail node:

Component Minimum Recommended

RAM: 4GB 8GB

CPU (amd64/x86 architecture): 2core 4core

Storage (SSD): 20–40GB 200–300GB

2. OS requirements

stable Linux server distributions, recommended ubuntu 2204/2304; debian 11/12; fedora 37/38

This guild uses ubuntu 2204 to deploy the avail full node.

ssh to your node server and create a directory avail

mkdir avail

cd avail

Download the latest pre-compiled binaries(version 1.8.0.0) for ubuntu 2204 from github.com, uncompress it and change name to data-avail

wget https://github.com/availproject/avail/releases/download/v1.8.0.0/amd64-ubuntu-2204-data-avail.tar.gz

tar xf amd64-ubuntu-2204-data-avail.tar.gz

mv amd64-ubuntu-2204-data-avail data-avail

Try to run node

./data-avail --base-path $(pwd)/data --chain goldberg --name YOUR_NODE_NAME_HERE

If you find log bellow in your terminal, node run successfully, now click CTRL-C to terminate node running, then run node using screen or systemd:

Syncing, target=#621376 (8 peers), best: #797 (0xf462…59a4), finalized #512 (0xea92…03c9), ⬇ 273.0kiB/s ⬆ 16.2kiB/s

run node with screen

screen -mS avail

./data-avail --base-path $(pwd)/data --chain goldberg --name YOUR_NODE_NAME_HERE

Now your node is running, pls check it in https://telemetry.avail.tools/. You can click ctrl-a d to detached from screen, or run “screen -x avail” to attach into screen again.

If you don’t want to use screen, you can use systemd to run the avail node.

create avail.service file, change YOUR_NODE_NAME_HERE to your actual node name and paste bellow totally to your terminal.

cat > avail.service <<EOF
[Unit]
Description=Avail
After=network.target network-online.target
Requires=network-online.target

[Service]
Type=simple
ExecStart=$(pwd)/data-avail --base-path $(pwd)/data --chain goldberg --name YOUR_NODE_NAME_HERE
Restart=always
RestartSec=120

[Install]
WantedBy=multi-user.target
EOF

move avail.service to system /lib/systemd/system and run it.

sudo mv avail.service /lib/systemd/system/

sudo systemctl daemon-reload

sudo systemctl enable avail

sudo systemctl start avail

now your node is running, you can check the node status, and find the log bellow.

Syncing, target=#621376 (8 peers), best: #797 (0xf462…59a4), finalized #512 (0xea92…03c9), ⬇ 273.0kiB/s ⬆ 16.2kiB/s

sudo systemctl status avail

sudo journalctl -f -u avail

If your node can not run successfully, you can try other methods such as docker or compile node from source.

--

--