July 11, 2023

Установка Ноды DeFund

Особенности проекта:

Это проект построен на базе космоса. Поэтому поняв как запустить ноду, какие команды и для чего, вы сможете запускать почти все ноды на космосе. Подкрепим свой мозг новой практикой)

Рубрика почемучки)

Ответ на вопрос в голове, для чего ставить ноду? Да-да, за звонкую монету, ну и прокачать все же наши скиллы. Космос одна из быстрорастущих сетей. Проект DeFund обещает раздать токены для стимулирования сообщества:

  • 5% для валидаторов тестовой сети
  • 10% для участников приватной тестовой сети
  • 15% для участников публичной тестовой сети
  • 40% для участников ATOM, OSMO и AKT
  • 30% для поставщиков ликвидности DETF
Более подробно какие активности можно изучить ТУТ

О проекте:

DeFund позволяет создавать децентрализованные биржевые фонды (формально называемые dETF) с базовыми активами из десятков и десятков блокчейнов (и быстро растущих). После создания dETF любой пользователь DeFund может инвестировать в любой из предложенных созданных dETF. Хотите инвестировать в индекс, который отслеживает CoinMarketCap Top 20? Без проблем. Хотите инвестировать в следующие крупные арбитражные фонды, вперед. Возможности безграничны.

Описание дословно взято с их сайта. Это же прекрасный проект. Создан чтобы из денег делать деньги) Ну и заставить нас расстаться с деньгами для оплат их комиссии)

На борту нет топовых Фондов. Есть предварительная информация по токеномике. ТЫК В название гайда написано, установка ноды, погнали)

Установка ноды

Чтобы поставить ноду, нам нужен сервер. Как же без нашего любимого Hetzner

Желательно ставить Ноду на отдельный сервер. Все команды выполнять под root. Если вы подселяете ноду, желательно создать нового пользователя. Проверить не будет ли конфликта по портам.

Минимальные требования:

• Ubuntu 20.04 и младше

• Процессор (CPU): 4 ядра и выше
• Оперативная память (RAM): 8 GB и больше
• Хранилище (Память): 300 GB SSD ( SATA или NVMe ) и больше

Не забываем сохранить IP и пароль для доступа к серверу! Более опытные могут привязать SSH ключ.

Все эти данные вставляем в MobaXterm (бесплатного фукционала хватит с головой).

После того как подключились к серверу переходим к установке:

Обновляемся:

sudo apt update

Устанавливаем архиватор, для распаковки снепшота:

sudo apt install -y curl git jq lz4 build-essential unzip

Создаем bash профиль с настройками:

bash <(curl -s "https://raw.githubusercontent.com/nodejumper-org/cosmos-scripts/master/utils/go_install.sh")
source .bash_profile
Если вы подселяете к другим нодам, можно не делать это

Указываем имя вашего моникера (делаю это для удобства. Привычка загонять все в переменные):

NODE_MONIKER="shon1256"

Установка ноды:

cd || return
rm -rf defund
git clone https://github.com/defund-labs/defund.git
cd defund || return
git checkout v0.2.6
make install

Проверка версии:

defundd version 

Ответ:

defundd config keyring-backend test
defundd config chain-id orbit-alpha-1
defundd init "$NODE_MONIKER" --chain-id orbit-alpha-1
curl -s https://raw.githubusercontent.com/defund-labs/testnet/main/orbit-alpha-1/genesis.json > ~/.defund/config/genesis.json
curl -s https://snapshots2-testnet.nodejumper.io/defund-testnet/addrbook.json > $HOME/.defund/config/addrbook.json

Прописываем сиды и пиры:

SEEDS="f902d7562b7687000334369c491654e176afd26d@170.187.157.19:26656,2b76e96658f5e5a5130bc96d63f016073579b72d@rpc-1.defund.nodes.guru:45656"
PEERS=""
sed -i 's|^seeds *=.*|seeds = "'$SEEDS'"|; s|^persistent_peers *=.*|persistent_peers = "'$PEERS'"|' $HOME/.defund/config/config.toml
sed -i 's|^pruning *=.*|pruning = "custom"|g' $HOME/.defund/config/app.toml
sed -i 's|^pruning-keep-recent  *=.*|pruning-keep-recent = "100"|g' $HOME/.defund/config/app.toml
sed -i 's|^pruning-interval *=.*|pruning-interval = "10"|g' $HOME/.defund/config/app.toml
sed -i 's|^snapshot-interval *=.*|snapshot-interval = 0|g' $HOME/.defund/config/app.toml
sed -i 's|^minimum-gas-prices *=.*|minimum-gas-prices = "0.0001ufetf"|g' $HOME/.defund/config/app.toml
sed -i 's|^prometheus *=.*|prometheus = true|' $HOME/.defund/config/config.toml

Сервисный файл:

sudo tee /etc/systemd/system/defundd.service > /dev/null << EOF
[Unit]
Description=Defund Node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which defundd) start
Restart=on-failure
RestartSec=10
LimitNOFILE=10000
[Install]
WantedBy=multi-user.target
EOF

Ордер Бук:

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

Скачиваем и распаковываем снепшот (Мы же не хотим ждать неделю пока нода догонит нужную высоту блока):

SNAP_NAME=$(curl -s https://snapshots2-testnet.nodejumper.io/defund-testnet/info.json | jq -r .fileName)
curl "https://snapshots2-testnet.nodejumper.io/defund-testnet/${SNAP_NAME}" | lz4 -dc - | tar -xf - -C "$HOME/.defund"

Стартуем ноду:

sudo systemctl daemon-reload
sudo systemctl enable defundd
sudo systemctl start defundd

Смотрим Логи:

sudo journalctl -u defundd -f --no-hostname -o cat

Результат (если у вас ошибка как у меня, но блоки идут, просто ждем пока нода синхронизируется):

Дополнительно проверяем состояние синхронизации. Как обычно должно true измениться на false:

defundd status 2>&1 | jq .SyncInfo

Создание валидатора:

Первым делом создаем наш кошелек:

defundd keys add wallet
!!! НЕ ЗАБЫВАЕМ СОХРАНИТЬ СИД ФРАЗУ И НАШ КОШЕЛЕК, ИНАЧЕ ВСЕ СРЕДСТВА БУДУТ ПОТЕРЯНЫ, РАБОТАЛИ ЗРЯ !!!

Идем в дискорд и запрашиваем тестовые токены:

!faucet ваш кошелек

Пример:

!faucet defund1jy6q9cr8k0kzmg859q9pczz550705zk669a9zw

Проверяем наш баланс в explorers или командой в терминале:

defundd q bank balances Адрес вашего кошелька

Создаем валидатора:

defundd tx staking create-validator \
--amount=10000000ufetf \
--pubkey=$(defundd tendermint show-validator) \
--moniker="$NODE_MONIKER" \
--chain-id=orbit-alpha-1 \
--commission-rate=0.1 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.05 \
--min-self-delegation=1 \
--fees=2000ufetf \
--from=wallet \
-y

Ну и проверочка нашего валидатора:

defundd q staking validator $(defundd keys show wallet --bech val -a)

Чтобы получить награды, не обязательно находиться в активном сете. Но если вы хотите, вам нужно раздобыть не менее 500 тестовых токенов. Дергать кран не советую)

Полезные команды

  • Посмотреть логи
sudo journalctl -u defundd -f --no-hostname -o cat
  • Рестарт ноды
sudo systemctl restart defundd
  • Проверить баланс кошелька
defundd q bank balances Адрес вашего кошелька