Cosmos Ecosystem
November 5, 2022

Defund

OFFICIAL LINKS

Website | Twitter | GitHub | Medium | Discord

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

cd $HOME
sudo apt update && sudo apt upgrade -y
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.19.1.linux-amd64.tar.gz https://golang.org/dl/go1.19.1.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.1.linux-amd64.tar.gz && rm go1.19.1.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/defund-labs/defund
cd defund
git checkout v0.1.0
make install
cd $HOME

4. Инициализация ноды и скачивание genesis и addrbook:

Придумайте свое название ноды и замените <<node_name>>

defundd init <<node_name>> --chain-id defund-private-2
wget -qO $HOME/.defund/config/genesis.json "https://raw.githubusercontent.com/defund-labs/testnet/main/defund-private-2/genesis.json"
wget -O $HOME/.defund/config/addrbook.json https://github.com/88Mikhail88/My_Testnets/blob/main/Defund/addrbook.json

5. Добавление seeds и peers:

seeds="85279852bd306c385402185e0125dffeed36bf22@38.146.3.194:26656"
peers="d9184a3a61c56b803c7b317cd595e83bbae3925e@194.163.174.231:26677,5e7853ec4f74dba1d3ae721ff9f50926107efc38@65.108.6.45:60556,f114c02efc5aa7ee3ee6733d806a1fae2fbfb66b@65.108.46.123:56656,aa2c9df37e372c7928435075497fb0fb7ff9427e@38.129.16.18:26656,f2985029a48319330b99767d676412383e7061bf@194.163.155.84:36656,daff7b8cbcae4902c3c4542113ba521f968cc3f8@213.239.217.52:29656"
sed -i.default "s/^seeds *=.*/seeds = \"$seeds\"/;" $HOME/.defund/config/config.toml
sed -i "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/;" $HOME/.defund/config/config.toml
# Устанавливаем минимальную цену за газ
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.0025ufetf\"/" ~/.defund/config/app.toml

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

recent=100
every=0
interval=10

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

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

echo "[Unit]
Description=defund
After=network.target

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

[Install]
WantedBy=multi-user.target" > $HOME/defund.service
sudo mv $HOME/defund.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 defund

sudo systemctl restart defund

8. Создаём кошелек, сохраняем мнемонику:

Придумайте свое название кошельку и замените <<wallet_name>>

defundd keys add <<wallet_name>>

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

defundd keys add <<wallet_name>> --recover

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

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

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

Для этого переходим в discord в ветку faucet и запрашиваем тестовые токены.

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

defundd q bank balances <<address>>

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

defundd tx staking create-validator \
--moniker="<<node_name>>" \
--amount=1000000ufetf \
--pubkey=$(defundd tendermint show-validator) \
--chain-id=defund-private-2 \
--commission-max-change-rate=0.01 \
--commission-max-rate=0.20 \
--commission-rate=0.05 \
--min-self-delegation=1 \
--from=<<wallet_name>> \
--yes 

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

Defund State Sync

Defund monitoring | alerting

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


UPD Defund

systemctl stop defund

defundd tendermint unsafe-reset-all --home $HOME/.defund

wget -O $HOME/.defund/config/defund-private-3-gensis.tar.gz "https://raw.githubusercontent.com/defund-labs/testnet/main/defund-private-3/defund-private-3-gensis.tar.gz"

rm -rf $HOME/.defund/config/genesis.json

cd $HOME/.defund/config/

tar -xzvf defund-private-3-gensis.tar.gz

rm -rf defund-private-3-gensis.tar.gz

cd $HOME

defundd config chain-id defund-private-3 

systemctl restart defund

journalctl -u defund -f -o cat

В логах вы должны увидеть

Всем Удачи!