Установка ноды OKP4
Здравствуйте сегодня мы расскажем об установке ноды OKP4
Оригинальная инструкция находится тут.
OKP4 — это domain-specific layer-1, предназначенный для обмена данными с минимальным доверием. Блокчейн объединяет активы, совместно используемые участниками, в Dataverse: данные, алгоритмы, программное обеспечение, хранилище и вычисления, чтобы обеспечить приложения нового поколения. Любой участник получает вознаграждение благодаря этим новым цепочкам создания стоимости., более подробно можно прочитать на официальном сайте.
Рекомендуемые требования для сервера
8GB RAM 200GB+ of disk space 4 Cores (modern CPU's)
Краткую инструкцию по аренде сервера можно посмотреть тут
В связи с последней политикой Contabo, если будете переезжать на Hetzner можете воспользоваться нашей ссылкой, будем благодарны.
Как всегда обновляем наш сервер
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 и проверяем версию
ver="1.19.1" && \ 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
После этого скачиваем и устанавливаем бинарник
git clone https://github.com/okp4/okp4d.git cd okp4d make install cd $HOME
Задаем переменные (CHAIN оставляем без изменений, в остальные вписываем свои данные)
OKP4_MONIKER="your_name" OKP4_CHAIN="okp4-nemeton-1" OKP4_WALLET="your_name"
echo 'export OKP4_MONIKER='${OKP4_MONIKER} >> $HOME/.bash_profile echo 'export OKP4_CHAIN='${OKP4_CHAIN} >> $HOME/.bash_profile echo 'export OKP4_WALLET='${OKP4_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile
wget -qO $HOME/.okp4d/config/genesis.json "https://raw.githubusercontent.com/okp4/networks/main/chains/nemeton-1/genesis.json"
pruning="custom" pruning_keep_recent="100" pruning_keep_every="0" pruning_interval="50" sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.okp4d/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.okp4d/config/app.toml sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.okp4d/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.okp4d/config/app.toml
Настраиваем минимальную цену за газ
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.025uknow\"/" $HOME/.okp4d/config/app.toml
Выключаем индексер (по желанию)
indexer="null" sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.okp4d/config/config.toml
PEERS=9c462b1c0ba63115bd70c3bd4f2935fcb93721d0@65.21.170.3:42656,a4a96019d2fbc1b5df07940cd971585311166acd@65.108.206.118:61356,ee4c5d9a8ac7401f996ef9c4d79b8abda9505400@144.76.97.251:12656,2e85c1d08cfca6982c74ef2b67251aa459dd9b2f@65.109.85.170:43656,264256d32511c512a0a9d4098310a057c9999fd1@okp4.sergo.dev:12233,4ea26ce893d8f4f89a7b49b9bd77e0fbd914e029@65.109.88.162:36656,8d8fdad759361a57121903632adbd66ad072b1ab@okp4-testnet.nodejumper.io:29656,e3c602b146121c88d350bd7e0f6ce8977e1aacff@161.97.122.216:26656,3c805c2dead7b7a3a1d3ba2399d4d62153322413@65.108.2.41:36656,9d1482bc31fb4578a5c7f7f65c4e0aaf2dfc2336@213.239.215.77:34656,a7f1dcf7441761b0e0e1f8c6fdc79d3904c22c01@[2a02:c206:2093:4875::1]:36656,a7f1dcf7441761b0e0e1f8c6fdc79d3904c22c01@38.242.150.63:36656,99f6675049e22a0216af0e2447e7a4c5021874cd@142.132.132.200:28656,9392c27a9a561c31e7a920dc6f577d663c473ef8@154.12.225.88:26656
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.okp4d/config/config.toml
sudo tee /etc/systemd/system/okp4d.service > /dev/null <<EOF [Unit] Description=okp4Node After=network-online.target
[Service] User=$USER ExecStart=$(which okp4d) start Restart=on-failure RestartSec=3 LimitNOFILE=65535
sudo systemctl daemon-reload && sudo systemctl enable okp4d && sudo systemctl restart okp4d
Смотрим логи и ждем когда нода начнет синхронизироваться
Или смотрим статус синхронизации (когда "catching_up": false то нода синхронизирована)
На блоке 1 033 598 необходимо обновиться на версию 4.0.0 (посмотреть высоту до блока можно тут)
cd $HOME rm -r okp4d/ git clone https://github.com/okp4/okp4d.git cd okp4d git checkout v4.0.0 make install cd $HOME
После синхронизации создаем кошелек (не забываем сохранить мнемоник)
Если кошелек уже есть то восстанавливаем с помощью мнемоника
Добавляем переменную с адресом кошелька
Добавляем переменную в баш профиль
echo 'export OKP4_ADDR='${OKP4_ADDR} >> $HOME/.bash_profile
source $HOME/.bash_profile
Теперь нам необходимо получить средства на кошелек. Для этого переходим по ссылке и запрашиваем токены на баланс кошелька
После запроса проверяем баланс
Если средства успешно поступили, то создаем валидатора (сумму указывайте свою, сколько хотите делегировать с кошелька, указывайте чуть меньше что бы хватило на комиссию)
okp4d tx staking create-validator \ --amount 1000000uknow \ --commission-max-change-rate "0.1" \ --commission-max-rate "0.2" \ --commission-rate "0.1" \ --min-self-delegation "1" \ --pubkey $(okp4d tendermint show-validator) \ --moniker $OKP4_MONIKER \ --chain-id $OKP4_CHAIN \ --from $OKP4_WALLET \ --gas-prices 0.025uknow
Задаем переменную с адресом валидатора
echo 'export OKP4_VALOPER='${OKP4_VALOPER} >> $HOME/.bash_profile source $HOME/.bash_profile
Делегация средств с кошелька на валидатора (сумму вводите свою)
okp4d tx staking delegate $OKP4_VALOPER 90000uknow --from $OKP4_ADDR --chain-id $OKP4_CHAIN --fees=5000uknow
Ну и если вдруг ваша нода попала в тюрьму, то выход
okp4d tx slashing unjail --from $OKP4_WALLET --chain-id $OKP4_CHAIN
Ну а если вы решили удалить ноду то введите следующие команды
sudo systemctl stop okp4d sudo systemctl disable okp4d cd $HOME rm /etc/systemd/system/okp4d rm /usr/local/bin/okp4d rm -r okp4d/ rm -r .okp4d/
Большое спасибо, за внимание и уделенное время
Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms