Требования к серверу: - 2 CPU
- 8 RAM
- 200 GB storage
Установка
Обновим системные зависимости:
Код:
sudo apt update
sudo apt install
Устанавливаем го (необходим 19+ версии)
Код:
wget -c https://golang.org/dl/go1.19.2.linux-amd64.tar.gz
sudo tar -C /usr/local -xvzf go1.19.2.linux-amd64.tar.gz
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source ~/.profile
go version
rm -rf go1.19.2.linux-amd64.tar.gz
Установим make, zip и jq:
Код:
apt install make unzip jq git
Переходим у установке ноды:
Код:
mkdir okp4
#создаем директорию okp4
cd okp4
#заходим в директорию okp4
wget -P /root/okp4 https://github.com/okp4/okp4d/archive/refs/heads/main.zip
#выкачиваем зип архив репозитория
unzip main.zip
#разархивируем main.zip
rm main.zip
#удаляем архив
cd okp4d-main
#заходим в директорию okp4d-main
sudo apt install build-essential
make build install
okp4d version
CHAIN_ID=okp4-nemeton-1
#объявляем переменную
MONIKER="MiKnowTor"
#заменить MiKnowTor на свое любое имя ноды
okp4d init $MONIKER --chain-id $CHAIN_ID
#инициализируем ноду
Меняем генезис:
Код:
cd /root/.okp4d/config
rm genesis.json
wget genesis.json https://raw.githubusercontent.com/okp4/networks/main/chains/nemeton-1/genesis.json
Добавляем пиры:
Код:
PEERS="[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:60756,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:27363,[email protected]:26656,[email protected]:36656,[email protected]:26656,[email protected]:26656,[email protected]:26601,[email protected]:11684,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.okp4d/config/config.toml
Запускаем ноду:
Сейчас нода не работает как сервис, нужно создать сервисный файл, что бы она работала в фоне, когда мы закроем терминал:
Код:
sudo tee /etc/systemd/system/okp4d.service > /dev/null <<EOF
Далее копируем одной командой:
Код:
[Unit]
Description=Okp4 Node
After=network.target
[Service]
User=$USER
Type=simple
ExecStart=/root/go/bin/okp4d start
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Копируем исполняемый файл
Код:
cd okp4d
sudo cp ./target/dist/okp4d /usr/local/bin/ || exit
Запускаем сервисный файл:
Код:
sudo systemctl daemon-reload
sudo systemctl enable okp4d
sudo systemctl restart okp4d
sudo systemctl status okp4d
Просмотр логов:
Код:
journalctl -u okp4d -f -o cat
Просмотр процесса синхронизации (false - нода синхронизирована):
Код:
curl http://localhost:26657/status | jq .result.sync_info.catching_up
После того, как Ваша нода будет полностью синхронизована - можно переходить к созданию валидатора:
Код:
okp4d keys add wallet
#создаем кошелек - не забудьте все сохранить
Идем в
кран и просим монет
Теперь транзакция на создание валидатора:
[CODE]okp4d tx staking create-validator \ --amount=1000000uknow \ --pubkey=$(okp4d tendermint show-validator) \ --moniker="<NODENAME>" \ --chain-id=okp4-nemeton \ --commission-rate="0.01" \ --commission-max-rate="0.10" \ --commission-max-change-rate="0.01" \ --min-self-delegation="1000000" \ --fees=1000uknow \ --from=wallet \ -y
#заменить <NODENAME> на имя своей ноды[/CODE]
Эксплорер сети
тут