Guía de Instalación de Light Node en Avail

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

Índice de contenidos

· Introducción
· Pasos iniciales
· Instalación y ejecución
Desde el binario
Desde el código fuente
· Utilizar los servicios de SystemD
Crea un servicio availightd

Introducción

Los Light Clients en Avail permiten interactuar con la blockchain sin necesidad de un full node, utilizando muestreo de disponibilidad de datos para verificar bloques de forma independiente.

Se dividen en dos partes: una para el muestreo y otra para la reconstrucción de datos.

Estos clientes se conectan a la red Avail, realizan muestreo aleatorio en los bloques y verifican estos datos para calcular su confianza. Además, ofrecen una API para consultar datos de bloques procesados.

Pasos iniciales

🧊Requerimientos de Hardware:

  • RAM4 GB (recomendado 8GB)
  • CPU (arquitectura AMD64/x86) 2 núcleos (recomendado 4 núcleos)
  • Almacenamiento (SSD)20–40 GB (recomendado 200–300GB)

Instalación y ejecución

Desde el binario:

🧊Instala los repositorios necesarios.

sudo apt update
sudo apt install make clang pkg-config libssl-dev build-essential

🧊 Crea el directorio de la aplicación.

mkdir -p avail-light
cd avail-light

🧊 Descarga la aplicación en el directorio.

wget https://github.com/availproject/avail-light/releases/download/v1.7.5-rc2/avail-light-linux-amd64.tar.gz

🧊 Descomprime el fichero.

tar -xvzf avail-light-linux-amd64.tar.gz
cp avail-light-linux-amd64 avail-light

🧊Inicia el light client.

./avail-light --network goldberg

Es muy recomendable continuar corriendo el light node con SystemD.

Desde el código fuente:

🧊Instala los repositorios necesarios y Rust.

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config protobuf-compiler libssl-dev jq build-essential protobuf-compiler bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
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

🧊Después de asegurarte de que tienes Rust instalado, puedes ejecutar el light client Avail utilizando el siguiente comando:

git clone https://github.com/availproject/avail-light.git
cd avail-light
git checkout v1.7.3
cargo build --release

El light client ha sido compilado.

Utilizar los servicios de SystemD

SystemD es un servicio de daemons, herramientas y librerías diseñado para ejecutar aplicaciones, como procesos en segundo plano, de manera centralizada en sistemas operativos Linux.

Los servicios de sistema de SystemD te permiten configurar una aplicación para que realice procesos automatizados, como por ejemplo iniciarse cuando se arranque el sistema, o reiniciarse si la aplicación se detiene por algún motivo.

En el caso de los nodos de una blockchain, estos servicios se utilizan para controlar la aplicación del nodo y que esta se reinicie en caso de que falle.

Crea un servicio availightd

Para crear un servicio debes realizar los siguientes pasos:

🧊Crea un archivo availightd.service con las instrucciones del servicio.

sudo tee /etc/systemd/system/availightd.service > /dev/null <<EOF
[Unit]
Description=Avail Light Client
After=network.target
StartLimitIntervalSec=0
[Service]
User=root
ExecStart=$(which avail-light) --network goldberg
Restart=always
RestartSec=120
[Install]
WantedBy=multi-user.target
EOF

🧊Gestiona el servicio availightd con los siguientes comandos del servicio:

Activar el reinicio automático para tu nodo Avail.

sudo systemctl daemon-reload
sudo systemctl enable availightd.service

Poner en marcha tu nodo Avail.

sudo systemctl start availightd.service

🧊Comprueba que el nodo está funcionando.

El parámetro status, permite ver la información de estado sobre el servicio, este comando es fundamental para ver si está en funcionamiento o no.

sudo systemctl status availightd.service

Para salir de esta pantalla usa las teclas:

CTRL + C

🧊Comprueba los registros del servicio en tiempo real.

El comando journalctl permite ver el registro generado por el servicio.

sudo journalctl -f -u availightd

Para salir de esta pantalla usa las teclas:

CTRL + C

En caso de necesitar reiniciar el light client utiliza:

sudo systemctl restart availightd.service

Para detener el light client utiliza:

sudo systemctl stop availightd

🧊 Para más info puedes consultar la documentación oficial de Avail:

Puedes seguir a Avail en:

Web | Blog | Twitter

Sigue a Cumulo y únete a nuestra comunidad

Web | Twitter | Telegram | Discord | Medium | LinkedIn | cumulo.pro

--

--