Full Node Installation Guide on Avail

Cumulo
Cumulo.pro
Published in
4 min readNov 25, 2023

Index of contents

· Initial steps
· Installation and execution
· Use SystemD services
Create a service availd

Initial steps

🧊Hardware Requirements:

  • RAM4 GB (8GB recommended)
  • CPU (AMD64/x86 architecture) 2 cores (4 cores recommended)
  • Storage (SSD)20–40 GB (200–300GB recommended)

Installation and execution

🧊Install Rust.

sudo apt-get update
sudo apt install build-essential
sudo apt install --assume-yes git clang curl libssl-dev protobuf-compiler
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
rustup default stable
rustup update
rustup update nightly
rustup target add wasm32-unknown-unknown --toolchain nightly

🧊After making sure you have Rust installed, you can run the Avail node using the following command:

git clone https://github.com/availproject/avail.git
cd avail
mkdir -p output
mkdir -p data
git checkout v1.8.0.2
cargo run --locked --release -- --chain goldberg -d ./output

The last command compiles and runs the Avail Node connected to the Goldberg Network.

Press Ctrl + C to exit the screen.

Use SystemD services

SystemD is a service of daemons , tools and libraries designed to run applications, as background processes, centrally on Linux operating systems.

SystemD system services allow you to configure an application to perform automated processes, such as starting when the system boots, or restarting if the application stops for any reason.

In the case of blockchain nodes, these services are used to control the node application and restart it if it fails.

Create a service availd

To create a service you must perform the following steps:

🧊Create a availd.service file with service instructions.

sudo tee /etc/systemd/system/availd.service > /dev/null <<'EOF'
[Unit]
Description=Avail Validator
After=network.target
StartLimitIntervalSec=0
[Service]
User=root
Type=simple
Restart=always
RestartSec=120
ExecStart=/home/user/avail/target/release/data-avail -d /home/user/avail/avail-node/data --chain goldberg --name CumuloNode
[Install]
WantedBy=multi-user.target
EOF

NOTE : don’t forget to change user to your system user.

🧊 Manage the availd service with the service commands.

Enable automatic restart for your Avail node.

sudo systemctl daemon-reload
sudo systemctl enable availd.service

Start up your Avail node.

sudo systemctl start availd.service

🧊 Check that the node is working.

The status parameter allows you to see the status information about the service. This command is essential to see if it is running or not.

sudo systemctl status availd.service

To exit this screen use the keys:

CTRL + C

🧊 Check service logs in real time.

The journalctl command allows you to view the log generated by the service.

sudo journalctl -f -u availd.service

To exit this screen use the keys:

CTRL + C

If you need to restart the node, use:

sudo systemctl restart availd

To stop the node use:

sudo systemctl stop availd

🧊 For more information you can consult the official Avail documentation:

You can follow Avail at:

Web | Blog | Twitter

Follow Cumulo and join our community:

Web | Twitter | Telegram | Discord

--

--