Modes de paiement Abuse

Réseau Lava. Installation du nœud

24.08.2024, 16:49

Lava est le premier réseau modulaire pour l'accès aux blockchains qui introduit une nouvelle approche : les "spécifications" sont une primitive qui permet aux participants d'ajouter la prise en charge de nouvelles chaînes et de nouveaux services de données au protocole sous-jacent sans autorisations. RPC est le premier service pris en charge par le réseau. Les développeurs intègrent Lava dans leurs projets pour récupérer des données, et les opérateurs de nœuds du réseau sont motivés pour répondre de manière rapide, précise et fiable. Lava crée un réseau rapide, évolutif et unifié pour accéder à un monde multi-réseaux.

Guide d'installation du réseau de test Lava

Lava — первая модульная сеть для доступа к блокчейнам,

Configuration matérielle minimale requise :

Type de nœud

CPU

RAM

Stockage

Testnet

4

8GB

150GB

Installation du nœud

Installation automatique

wget -O lava https://raw.githubusercontent.com/111STAVR111/props/main/Lava/lava && chmod +x lava && ./lava

Installation manuelle

préparation du serveur

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y

Installer GO 1.21.6

ver="1.21.6"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version

Version 19.08.24

cd $HOME && mkdir $HOME/go/bin/
wget -O lavad https://github.com/lavanet/lava/releases/download/v2.5.0/lavad-v2.5.0-linux-amd64
chmod +x lavad
mv lavad $HOME/go/bin/lavad
lavad version --long | grep -e commit -e version

Initialisation

lavad init STAVR_guide --chain-id=lava-testnet-2
lavad config chain-id lava-testnet-2

Création/restauration du portefeuille

lavad keys add <walletname>

OU

lavad keys add <walletname> --recover

Téléchargement du fichier Genesis

curl -s "https://raw.githubusercontent.com/111STAVR111/props/main/Lava/genesis.json" > $HOME/.lava/config/genesis.json 
sha256sum $HOME/.lava/config/genesis.json

Définition du prix minimum du gaz et des pairs/sidéraux

sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0ulava"/" $HOME/.lava/config/app.toml
external_address=$(wget -qO- eth0.me) 
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.lava/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.lava/config/config.toml

Configuration de l'élagage (optionnel)

pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="100"
sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.lava/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.lava/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.lava/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.lava/config/app.toml

Configuration de l'indexeur (optionnel)

indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.lava/config/config.toml

Téléchargement de l'addrbook

wget -O $HOME/.lava/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Lava/addrbook.json"

Création d'un fichier de service

sudo tee /etc/systemd/system/lavad.service > /dev/null <<EOF
[Unit]
Description=lava
After=network-online.target
[Service]
User=$USER
ExecStart=$(which lavad) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

StateSync Lava Testnet

SNAP_RPC=https://lava.rpc.t.stavr.tech:443
peers="46a02fc2908aec60985fd2852c424907d6f79ed7@lava.peers.stavr.tech:197"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.lava/config/config.toml
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); 
BLOCK_HEIGHT=$((LATEST_HEIGHT - 100)); 
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1true| ; 
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|1"$SNAP_RPC,$SNAP_RPC"| ; 
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|1$BLOCK_HEIGHT| ; 
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|1"$TRUST_HASH"| ; 
s|^(seeds[[:space:]]+=[[:space:]]+).*$|1""|" $HOME/.lava/config/config.toml
lavad tendermint unsafe-reset-all --home /root/.lava

Commencer

sudo systemctl daemon-reload
sudo systemctl enable lavad 
sudo systemctl restart lavad && sudo journalctl -fu lavad  -o cat

Création d'un validateur

lavad tx staking create-validator 
  --amount 1000000ulava 
  --from <walletName> 
  --commission-max-change-rate "0.1" 
  --commission-max-rate "0.2" 
  --commission-rate "0.1" 
  --min-self-delegation "1" 
  --pubkey  $(lavad tendermint show-validator) 
  --moniker STAVR_guide 
  --chain-id lava-testnet-2 
  --identity="" 
  --details="" 
  --website="" -y

Services et outils utiles

Suppression d'un nœud :

sudo systemctl stop lavad
sudo systemctl disable lavad
rm /etc/systemd/system/lavad.service
sudo systemctl daemon-reload
cd $HOME
rm -rf .lava
rm -rf $(which lavad)

Lire aussi nos instructions - Mantra : description, installation de Node