Lava - перша модульна мережа для доступу до блокчейнів, що запроваджує новий підхід: "специфікації" - це примітив, який дає змогу учасникам без дозволів додавати підтримку нових ланцюжків і сервісів даних у базовий протокол. RPC є першим підтримуваним сервісом мережі. Розробники інтегрують Lava у свої проєкти для отримання даних, а оператори вузлів мережі мотивовані відповідати швидко, точно та надійно. Lava створює швидку, масштабовану та єдину мережу для доступу до багатомережевого світу.
Посібник зі встановлення тестової мережі Lava

Мінімальні вимоги до обладнання:
|
Тип вузла |
CPU |
RAM |
Сховище |
|
Testnet |
4 |
8GB |
150GB |
Встановлення ноди
Автоматичне встановлення
wget -O lava https://raw.githubusercontent.com/111STAVR111/props/main/Lava/lava && chmod +x lava && ./lava
Ручне встановлення
підготовка сервера
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
Встановлення 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
Збірка 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
Ініціалізація
lavad init STAVR_guide --chain-id=lava-testnet-2
lavad config chain-id lava-testnet-2
Створення/відновлення гаманця
lavad keys add <walletname>
АБО
lavad keys add <walletname> --recover
Завантаження Genesis-файлу
curl -s "https://raw.githubusercontent.com/111STAVR111/props/main/Lava/genesis.json" > $HOME/.lava/config/genesis.json
sha256sum $HOME/.lava/config/genesis.json
Встановлення мінімальної ціни газу та пірів/сидів
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
Налаштування прунінгу (опціонально)
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
Налаштування індексатора (опціонально)
indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.lava/config/config.toml
Завантаження addrbook
wget -O $HOME/.lava/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Lava/addrbook.json"
Створення файлу служби
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
Початок роботи
sudo systemctl daemon-reload
sudo systemctl enable lavad
sudo systemctl restart lavad && sudo journalctl -fu lavad -o cat
Створення валідатора
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
Корисні сервіси та інструменти
Видалення вузла:
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)
Також читайте нашу інструкцію - Mantra: опис, встановлення Node