Устнаовка ноды Lambda lambdatest_92001-2
После подключения к серверу, через терминал, обновляем его:
sudo apt-get update && sudo apt upgrade -y
Далее устанавливаем необходимые пакеты:
sudo apt install make clang pkg-config libssl-dev build-essential git gcc chrony curl jq ncdu bsdmainutils htop net-tools lsof fail2ban wget -y
Устанавливаем GO версии 1.18.5 и после установки проверяем версию:
ver="1.18.5" cd $HOME 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" >> ~/.bash_profile source ~/.bash_profile go version
Скачиваем и устанавливаем бинарник:
cd $HOME git clone https://github.com/LambdaIM/lambdavm.git cd lambdavm make build cd build chmod +x /root/lambdavm/build/lambdavm && sudo mv /root/lambdavm/build/lambdavm /usr/local/bin/lambdavm
lambdavm version
1.0.0
Задаем переменные для нашего удобства (LMB_CHAIN оставляем без изменений, в остальные переменные вписываем свои значения):
LMB_CHAIN="lambdatest_92001-2" LMB_MONIKER="YOR_MONIKER" LMB_WALLET="YOUR_WALLET_NAME"
Добавляем переменные в баш профиль
echo 'export LMB_CHAIN='${LMB_CHAIN} >> $HOME/.bash_profile echo 'export LMB_MONIKER='${LMB_MONIKER} >> $HOME/.bash_profile echo 'export LMB_WALLET='${LMB_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile
lambdavm init $LMB_MONIKER --chain-id $LMB_CHAIN
Прописывапем в конфиг имя сети и вывод сохранения кошельков
lambdavm config chain-id $LMB_CHAIN lambdavm config keyring-backend os
wget https://raw.githubusercontent.com/LambdaIM/testnets/main/lambdatest_92001-2/genesis.json mv genesis.json ~/.lambdavm/config/
jq -S -c -M '' ~/.lambdavm/config/genesis.json | shasum -a 256
a8ae88fc3a9d28926ec2c8fb4f191e3a38d5a61c51699de5601e581ec472b290
Задаем и прописываем сиды и пиры:
seeds="ef150ce05782b05bd58ffc90a70d777d96482909@18.143.13.243:26656" peers="ef150ce05782b05bd58ffc90a70d777d96482909@18.143.13.243:26656" sed -i.bak -e "s/^seeds *=.*/seeds = \"$seeds\"/; s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.lambdavm/config/config.toml
Устанавливаем минимальную цену газа:
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.001ulamb\"/;" ~/.lambdavm/config/app.toml
pruning="custom" pruning_keep_recent="100" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.lambdavm/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.lambdavm/config/app.toml sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.lambdavm/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.lambdavm/config/app.toml
sudo tee /etc/systemd/system/lambdavm.service > /dev/null <<EOF [Unit] Description=Lambdavm Daemon After=network-online.target [Service] User=$USER ExecStart=$(which lambdavm) start Restart=always RestartSec=3 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
lambdavm tendermint unsafe-reset-all --home $HOME/.lambdavm
Запускаем сервис и смотрим логи:
sudo systemctl daemon-reload sudo systemctl enable lambdavm sudo systemctl start lambdavm journalctl -f -u lambdavm
Либо смотрим статус и ждем пока синхронизируется
lambdavm status 2>&1 | jq .SyncInfo После того как увидите "catching_up": false нода синхронизировалась
Создаем кошелек !!! Не забываем сохранить мнемоник !!! так же попросит ввести пароль для доступа к кошельку СОХРАНЯЕМ или ЗАПОМИНАЕМ(Если кошелек уже есть и нужно просто восстановить то этой командой lambdavm keys add $LMB_WALLET --recover и вводим мнемоник)
lambdavm keys add $LMB_WALLET
Добавляем адрес кошелька в переменную:
LMB_ADDR=$(lambdavm keys show $LMB_WALLET -a)
Добавляем переменную в баш профиль
echo 'export LMB_ADDR='${LMB_ADDR} >> $HOME/.bash_profile source $HOME/.bash_profile
lambdavm query bank balances $LMB_ADDR
После синхронизации создаем валидатор.
На кошельке Metamask с которого будете делегировать должны быть средства. Тестовые монеты получаем в Discord используя команду: /faucet
Делегация осуществляется через эксплоре: https://app.lambda.top/staking
lambdavm tx staking create-validator \ --amount=1000000000000000000ulamb \ --pubkey=$(lambdavm tendermint show-validator) \ --moniker=$LMB_MONIKER \ --website="" \ --identity="" \ --chain-id=$LMB_CHAIN \ --commission-rate="0.05" \ --commission-max-rate="0.20" \ --commission-max-change-rate="0.01" \ --min-self-delegation="1000000" \ --gas="300000" \ --gas-prices="0.025ulamb" \ --from=$LMB_WALLET --broadcast-mode block
Записываем адрес валидатора в переменную:
LMB_VALOPER=$(lambdavm keys show $LMB_WALLET --bech val -a)
Добавляем переменную в баш профиль:
echo 'export LMB_VALOPER='${LMB_VALOPER} >> $HOME/.bash_profile source $HOME/.bash_profile
lambdavm query staking validator $LMB_VALOPER
Теперь как делегировать средства на валидатор:(1000000ulamb = 1 Монета):
lambdavm tx staking delegate $LMB_VALOPER 1000000ulamb \ --from=$LMB_WALLET \ --chain-id=$LMB_CHAIN \ --fees=200ulamb
Собрать комиссионные + реварды
lambdavm tx distribution withdraw-rewards $LMB_VALOPER \ --from=$LMB_WALLET \ --chain-id=$LMB_CHAIN \ --commission -y
lambdavm tx slashing unjail \ --from $LMB_WALLET \ --chain-id $LMB_CHAIN \ --fees=200ulamb
sudo systemctl stop lambdavm && \ sudo systemctl disable lambdavm && \ rm /etc/systemd/system/lambdavm.service && \ sudo systemctl daemon-reload && \ cd $HOME && \ rm -rf .lambdavm lambdavm && \ rm -rf $(which lambdavm)
Большое спасибо, за внимание и уделенное время
Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms