Ojo | Testnet - установка ноды
Требования к серверу:я взяла СPХ31 хетцнере
Установка
Подготавливаем сервер:
Код:
sudo apt-get update -y && sudo apt upgrade -y && sudo apt-get install make build-e
Код:
#устанавливаем го
sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go1.19.7.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
eval $(echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee /etc/profile.d/golang.sh)
eval $(echo 'export PATH=$PATH:$HOME/go/bin' | tee -a $HOME/.profile)
Код:
NODE_MONIKER="MONIKER"
#заменить MONIKER на имя своей ноды (придумать)
Копируем репозиторий:
Код:
git clone https://github.com/ojo-network/ojo.git
#выкачиваем репозиторий проекта
cd ojo
#переходим в папку ojo
git checkout v0.1.2
make install
ojod version
#проверяем версию (HEAD-ad5a2377134aa13d7d76575b95613cf8ed12d1e4)
Инициализируем проект:
Код:
ojod config keyring-backend test
ojod config chain-id ojo-devnet
Код:
ojod init "$NODE_MONIKER" --chain-id ojo-devnet
Добавляем сиды в конфиг:
Код:
sed -i -e "s|^seeds *=.*|seeds = \"3f472746f46493309650e5a033076689996c8881@ojo-testnet.
Доп настройки (прунинг/цена газа):
Код:
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
$HOME/.ojo/config/app.toml
Код:
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0uojo\"|" $HOME/.ojo/config/app.toml
агружаем генезис файл и адрбук:
Код:
curl -Ls https://snapshots.kjnodes.com/ojo-testnet/genesis.json > $HOME/.ojo/config/genesis.json
Код:
curl -Ls https://snapshots.kjnodes.com/ojo-testnet/addrbook.json > $HOME/.ojo/config/addrbook.json
Создаем сервисный файл:
Код:
sudo tee /etc/systemd/system/ojod.service > /dev/null << EOF
[Unit]
Description=Ojo Node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which ojod) start
Restart=on-failure
RestartSec=10
LimitNOFILE=10000
[Install]
WantedBy=multi-user.target
EOF
Код:
ojod tendermint unsafe-reset-all --home $HOME/.nibid --keep-addr-book
Перезапускаем сервисный файл:
Код:
sudo systemctl daemon-reload
sudo systemctl enable ojod
sudo systemctl start ojod
Просмотр логов:
Код:
sudo journalctl -u ojod -f --no-hostname -o cat
Снепшот (если хотите):
Код:
sudo systemctl stop ojod
sudo apt update
sudo apt install lz4 -y
cp $HOME/.ojo/data/priv_validator_state.json $HOME/.ojo/priv_validator_state.json.backup
ojod tendermint unsafe-reset-all --home $HOME/.ojo --keep-addr-book
curl https://snapshots2-testnet.nodejumper.io/ojo-testnet/null_2023-05-12.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.ojo
mv $HOME/.ojo/priv_validator_state.json.backup $HOME/.ojo/data/priv_validator_state.json
sudo systemctl start ojod
sudo journalctl -u ojod -f --no-hostname -o cat
Команды кошелька:
Код:
ojod keys add wallet
#создать новый кошелек
#запишите мнемонику!!!
ojod keys add wallet --recover
#восстановить существующий кошелек
ojod q bank balances $(ojod keys show wallet -a)
#проверка баланса
Получаем токены:
Идем в дискорд, ветка #testnet-faucet
Проверяем синхронизацию ноды:
Код:
ojod status 2>&1 | jq .SyncInfo.catching_up
#ответ false - значит нода синхронизирована
Только когда нода синхронизирована - создаем валидатора:
Код:
ojod tx staking create-validator \
--amount=9000000uojo \
--pubkey=$(ojod tendermint show-validator) \
--moniker="$NODE_MONIKER" \
--chain-id=ojo-devnet \
--commission-rate=0.1 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.05 \
--min-self-delegation=1 \
--fees=2000uojo \
--from=wallet \
-y
Эксплорер сети
тут
Данные о своем валидаторе:
Код:
ojod q staking validator $(ojod keys show wallet --bech val -a)
Заделегировать токены себе (10 шт):
Код:
ojod tx staking delegate $(ojod keys show wallet --bech val -a) 10000000uojo -