Установка ноды Stride (НЕАКТУАЛЬНО - МАЙННЕТ)
- Описание проекта
- Автоматическая установка (скрипт)
- Обновление (фикс ошибки 70 500)
- Работа с кошельком
- Работа с валидатором
- Удаление ноды
- Полезные команды
Описание проекта
Проект в сети Cosmos. Stride - это блокчейн, который обеспечивает ликвидность для стабфондовых активов. Используя Stride, вы можете зарабатывать как на стейкинге, так и на DeFi в экосистеме Cosmos IBC.
Документация о проекте - https://docs.stride.zone/
Сейчас проходит период вознаграждаемого тестнета вплоть до запуска майннета, который состоится в августе. Награды будут даже для неактивных валидаторов.
Информация о размерах инвестиций не разглашается, но известно что присутствует Pantera Capital, что уже неплохо.
Минимальные требования к серверу:
Explorer сети: https://stride.explorers.guru/validators | https://poolparty.stride.zone/
Автоматическая установка
Подключаемся к серверу через Putty или MobaXterm, после чего приступаем к установке.
Если вы подключаетесь при помощи Putty, то хорошей привычкой будет являться установка софта при помощи screen.
Для установки screen (если он отсутствует на сервере):
apt install screen -y
После установки запускаем окружение:
screen -S Stride
И уже в нем запускаем автоматический скрипт для установки Stride:
wget -q -O stride.sh https://nodes.wenmoney.io/stride.sh && chmod +x stride.sh && sudo /bin/bash stride.sh
Подробно о работе screen - https://losst.ru/komanda-screen-linux
Ждем окончания установки ноды.
Когда нода будет установлена проверяем логи:
journalctl -u strided -f -o cat
Если нет подключения к пирам
Если отсутствуют пиры (на момент написания статьи они актуальны), то идем в дискорд и ищем пиры (обычно по фразе "peers").
Для установки пиров выполняем команды:
PEERS="НАЙДЕННЫЕ_ПИРЫ" sed -i "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/;" $HOME/.stride/config/config.toml systemctl restart strided.service
Если в логах видите такое, значит все ок и синхронизация пошла:
Обновление (фикс ошибки 70 500)
Перед обновлением вам ОБЯЗАТЕЛЬНО надо проверить, что ваша нода остановилась именно на этой высоте:
strided status 2>&1 | jq ."SyncInfo"."latest_block_height"
Если все ок, то обновляемся через команды:
sudo systemctl stop strided cd $HOME && rm -rf stride git clone https://github.com/Stride-Labs/stride && cd stride git checkout 90859d68d39b53333c303809ee0765add2e59dab && sleep 2 go build -mod=readonly -trimpath -o $HOME/go/bin ./... sudo systemctl restart strided
journalctl -u strided -f -o cat
Возможно будет долго подключаться к пирам - это нормально. Если по логам пошел выше блока 70 500, значит все ок. Если нет - скидывайте скрин в нашу телегу, будем смотреть-помогать.
Работа с кошельком
Так как это космос-нода, то создаем (или восстанавливаем) кошелек для дальнейшей работы с валидатором.
Для начала создадим переменную (имя кошелька) и запишем ее в bash_profile для удобства:
source .bash_profile wallet="walletStride" echo "export WALLET=$wallet" >> $HOME/.bash_profile
source .bash_profile strided keys add $WALLET --keyring-backend os
Получаем адрес кошелька и VALOPER и запишем их в bash_profile для удобства:
ADDRESS=$(strided keys show $WALLET -a)
VALOPER=$(strided keys show $WALLET --bech val -a)
echo 'export ADDRESS='${ADDRESS} >> $HOME/.bash_profile
echo 'export VALOPER='${VALOPER} >> $HOME/.bash_profilestrided query bank balances $ADDRESS
Баланс кошелька отобразится только в том случае, когда нода полностью синхронизируется с сетью!
(ОПЦИОНАЛЬНО) Восстанавливаем кошелек:
strided keys add $WALLET --recover --keyring-backend os
(ОПЦИОНАЛЬНО) Показать список кошельков:
strided keys list
(ОПЦИОНАЛЬНО) Отправить монеты на другой кошелек:
strided tx bank send $WALLET АДРЕС_ПОЛУЧАТЕЛЯ 1000000ustrd --fees 500ustrd -y
(ОПЦИОНАЛЬНО) Удалить кошелек:
strided keys delete $WALLET
Работа с валидатором
Перед созданием валидатора необходимо получить токены ustrd. Для проекта Stride получаем их в дискорд в канале #token-faucet введя команду:
$faucet-stride:ВАШ_АДРЕС_КОШЕЛЬКА
Валидатор создается только после получения токенов и полной синхронизации с сетью!
strided tx staking create-validator \ --chain-id $CHAIN_ID \ --commission-rate 0.05 \ --commission-max-rate 0.2 \ --commission-max-change-rate 0.1 \ --min-self-delegation "1000000" \ --amount 9998000ustrd \ --pubkey $(strided tendermint show-validator) \ --moniker $NODENAME \ --from $WALLET \ --fees 555ustrd
После чего идем в эксплоер и по txhash проверяем транзакцию на предмет успешного создания валидатора (если Success, то валидатор корректно создан).
Делегировать токены в своего валидатора (в примере делегируется 1 токен):
strided tx staking delegate $VALOPER 1000000ustrd --from=$WALLET --chain-id=$CHAIN_ID --fees 500ustrd -y
После чего идем в эксплоер и по txhash проверяем транзакцию на предмет успешного делегирования (если Success, то делегирование прошло успешно).
(ОПЦИОНАЛЬНО) Редактирование валидатора:
strided tx staking edit-validator \ --chain-id $CHAIN_ID \ --from $WALLET \ --fees 500ustrd
(ОПЦИОНАЛЬНО) Проверка статуса валидатора:
strided query staking validator $VALOPER
(ОПЦИОНАЛЬНО) Выход из тюрьмы:
strided tx slashing unjail --from $WALLET --chain-id $CHAIN_ID
Удаление ноды
Для удаления ноды выполните команду (это одна команда):
sudo systemctl stop strided && \ sudo systemctl disable strided && \ rm /etc/systemd/system/strided.service && \ sudo systemctl daemon-reload && \ cd $HOME && \ rm -rf .stride stride && \ rm -rf $(which strided)
Полезные команды
Список полезных команд, которые пригодятся для любой космос-ноды, отличаются только названием проекта.
Проверить последний синхронизированный блок:
strided status 2>&1 | jq ."SyncInfo"."latest_block_height"
sudo journalctl -u strided -f -o cat
curl localhost:26657/status
strided q bank balances $ADDRESS
Ределигировать токены другому валидатору:
strided tx staking redelegate $VALOPER VALOPER_ДРУГОГО_ВАЛИДАТОРА 1000000ustrd --from $WALLET --fees 500ustrd -y
Отправить монеты на другой кошелек:
strided tx bank send $WALLET АДРЕС_ПОЛУЧАТЕЛЯ 1000000ustrd --fees 500ustrd -y
Проголосовать за предложение (говернанс) c ID=1:
strided tx gov vote 1 yes --from $WALLET --fees 500ustrd
Внести депозит в предложение (говернанс) с ID=1:
strided tx gov deposit 1 1000000ustrd --from $WALLET --fees 500ustrd