Cosmos Ecosystem
October 20, 2022

Okp4

OFFICIAL LINKS

Website | LinkedIn | Twitter | GitHub | Telegram | Medium | Discord | Whitepaper | Docs

1. Обновление пакетов и установка окружения

cd $HOME
sudo apt update
sudo apt install make clang pkg-config libssl-dev build-essential git jq ncdu bsdmainutils htop -y < "/dev/null"

2. Установка Go

cd $HOME
wget -O go1.18.4.linux-amd64.tar.gz https://golang.org/dl/go1.18.4.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.18.4.linux-amd64.tar.gz && rm go1.18.4.linux-amd64.tar.gz
echo 'export GOROOT=/usr/local/go' >> $HOME/.bash_profile
echo 'export GOPATH=$HOME/go' >> $HOME/.bash_profile
echo 'export GO111MODULE=on' >> $HOME/.bash_profile
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile && . $HOME/.bash_profile
go version

3. Компиляция бинарного файла

cd $HOME
git clone https://github.com/okp4/okp4d.git
cd okp4d
make install
sudo mv $(which okp4d) /usr/local/bin/okp4d
cd $HOME

4. Инициализация узла и скачивание генезиса
Придумайте свое название ноды и задайте значение переменной $Okp4_Nodename

okp4d init $Okp4_Nodename --chain-id okp4-nemeton
wget -qO $HOME/.okp4d/config/genesis.json "https://raw.githubusercontent.com/okp4/networks/main/chains/nemeton/genesis.json"

5. Добавление пиров

peers="f595a1386d5ca2e0d2cd81d3c6372c3bf84bbd16@65.109.31.114:2280,a49302f8999e5a953ebae431c4dde93479e17155@162.19.71.91:26656,dc14197ed45e84ca3afb5428eb04ea3097894d69@88.99.143.105:26656,79d179ea2e1fbdcc0c59a95ab7f1a0c48438a693@65.108.106.131:26706,501ad80236a5ac0d37aafa934c6ec69554ce7205@89.149.218.20:26656,5fbddca54548bf125ee96bb388610fe1206f087f@51.159.66.123:26656,769f74d3bb149216d0ab771d7767bd39585bc027@185.196.21.99:26656,024a57c0bb6d868186b6f627773bf427ec441ab5@65.108.2.41:36656,fff0a8c202befd9459ff93783a0e7756da305fe3@38.242.150.63:16656,2bfd405e8f0f176428e2127f98b5ec53164ae1f0@142.132.149.118:26656,bf5802cfd8688e84ac9a8358a090e99b5b769047@135.181.176.109:53656,dc9a10f2589dd9cb37918ba561e6280a3ba81b76@54.244.24.231:26656,085cf43f463fe477e6198da0108b0ab08c70c8ab@65.108.75.237:6040,803422dc38606dd62017d433e4cbbd65edd6089d@51.15.143.254:26656,b8330b2cb0b6d6d8751341753386afce9472bac7@89.163.208.12:26656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.okp4d/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 100/g' $HOME/.okp4d/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 100/g' $HOME/.okp4d/config/config.toml
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.0uknow\"/;" ~/.okp4d/config/app.toml

6. Изменение настроек прунинга

recent=100
every=0
interval=10

sed -i.back "s/pruning *=.*/pruning = \"custom\"/g" $HOME/.okp4d/config/app.toml
sed -i "s/pruning-keep-recent *=.*/pruning-keep-recent = \"$recent\"/g" $HOME/.okp4d/config/app.toml
sed -i "s/pruning-keep-every *=.*/pruning-keep-every = \"$every\"/g" $HOME/.okp4d/config/app.toml
sed -i "s/pruning-interval *=.*/pruning-interval = \"$interval\"/g" $HOME/.okp4d/config/app.toml

7. Создание и запуск сервисного файла

echo "[Unit]
Description=Okp4 Node
After=network.target

[Service]
User=$USER
Type=simple
ExecStart=$(which okp4d) start --home $HOME/.okp4d
Restart=on-failure
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target" > $HOME/okp4d.service
sudo mv $HOME/okp4d.service /etc/systemd/system
sudo tee <<EOF >/dev/null /etc/systemd/journald.conf
Storage=persistent
EOF

sudo systemctl restart systemd-journald
sudo systemctl daemon-reload
sudo systemctl enable okp4d 

sudo systemctl restart okp4d

8. Создаём кошелек, сохраняем мнемонику
Придумайте свое название кошельку и задайте значение переменной $name_wallet

okp4d keys add $name_wallet

Восстановление кошелька используя мнемонику

okp4d keys add $name_wallet --recover

Проверить синхронизирована ли нода, если результат false – значит нода синхронизирована

curl -s localhost:26657/status | jq .result.sync_info.catching_up

9. После того, как нода синхронизовалась нужно запросить тестовые токены.

Для этого переходим Faucet.okp4.network

Проверить баланс кошелька

okp4d q bank balances ВАШ_АДРЕС_OKP4

10. Создаём валидатора

okp4d tx staking create-validator \
--moniker="$Okp4_Nodename" \
--amount=1000000uknow \
--pubkey=$(okp4d tendermint show-validator) \
--chain-id=okp4-nemeton \
--commission-max-change-rate=0.01 \
--commission-max-rate=0.20 \
--commission-rate=0.05 \
--min-self-delegation=1 \
--from=$name_wallet \
--yes 

Не забывайте сделать buckup файла priv_validator_key.json

Okp4 State Sync

Okp4 monitoring | alerting

Полезные команды CLI в Сosmos sdk