February 9, 2023

Установка ноды Kyve в сети Kaon-1

Здравствуйте сегодня мы расскажем об установке ноды Kyve в сети Kaon-1

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

8GB RAM 200GB of disk space(ssd or nvme) 4Cores CPU

Краткую инструкцию по аренде сервера можно посмотреть тут

Как установить несколько нод на один сервер можно почитать тут

Подробный разбор по установке нод Cosmos можно посмотреть тут.

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

На блоке 443300 обновление ( отслеживать высоту до обновления можно тут)

cd $HOME git clone https://github.com/KYVENetwork/chain/ cd chain git checkout v1.0.0-rc1 make install chmod +x /root/go/bin/kyved && sudo mv /root/go/bin/kyved /usr/local/bin/kyved cd $HOME kyved version --long

Как всегда обновляем наш сервер

sudo apt update && sudo apt upgrade -y

Устанавливаем доп. пакеты

sudo apt install make clang git pkg-config libssl-dev build-essential git gcc chrony curl jq ncdu bsdmainutils htop net-tools lsof fail2ban wget -y

Устанавливаем go и проверяем версию

ver="1.19.4" && \ 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

Скачиваем и перемещаем бинарник

wget https://files.kyve.network/chain/v1.0.0-rc0/kyved_linux_amd64.tar.gz && \ tar -xvzf kyved_linux_amd64.tar.gz && \ mv kyved /usr/local/bin/ && \ rm kyved_linux_amd64.tar.gz

Задаем переменные (CHAIN оставляем без изменений, в остальные вписываем свои данные)

KYVE_CHAIN="kaon-1" KYVE_MONIKER="your_name" KYVE_WALLET="your_name"

Добавляем все в баш профиль

echo 'export KYVE_CHAIN='${KYVE_CHAIN} >> $HOME/.bash_profile echo 'export KYVE_MONIKER='${KYVE_MONIKER} >> $HOME/.bash_profile echo 'export KYVE_WALLET='${KYVE_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile

Инициализируем ноду

kyved init $KYVE_MONIKER --chain-id $KYVE_CHAIN

Прописываем в конфиг имя сети

kyved config chain-id $KYVE_CHAIN

Скачиваем файл генезис

curl https://raw.githubusercontent.com/KYVENetwork/networks/main/kaon-1/genesis.json > ~/.kyve/config/genesis.json

Настраиваем прунинг (по желанию)

pruning="custom" pruning_keep_recent="1000" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.kyve/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.kyve/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.kyve/config/app.toml

Задаём минимальную цену за газ

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.001tkyve\"/;" ~/.kyve/config/app.toml

Добавляем пиры

peers="7258cf2c1867cc5b997baa19ff4a3e13681f14f4@68.183.143.17:26656,e8c9a0f07bc34fb870daaaef0b3da54dbf9c5a3b@15.235.10.35:26656,801fa026c6d9227874eeaeba288eae3b800aad7f@52.29.15.250:26656,bc8b5fbb40a1b82dfba591035cb137278a21c57d@52.59.65.9:26656,430845649afaad0a817bdf36da63b6f93bbd8bd1@3.67.29.225:26656,b68e5131552e40b9ee70427879eb34e146ef20df@18.194.131.3:26656,78d76da232b5a9a5648baa20b7bd95d7c7b9d249@142.93.161.118:26656,97b5c38213e4a845c9a7449b11d811f149fa6710@65.109.85.170:56656,bbb7a427e04d38c74f574f6f0162e1359b66b330@93.115.25.18:39656,1dfe7262db2b9bf51c3b25030e01c89e62640bb1@65.109.71.35:26656,a01d20a3c64a25f5b9199b0273f95cb1471d2b47@65.108.237.231:28656,7820d73c4449e0e4328c9fc4437b00aef8de33c2@5.161.195.113:26656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.kyve/config/config.toml

Создаем сервис файл

sudo tee /etc/systemd/system/kyved.service > /dev/null <<EOF [Unit] Description=kyve After=network-online.target

[Service] User=$USER ExecStart=$(which kyved) start --home $HOME/.kyve Restart=on-failure RestartSec=10 LimitNOFILE=65535

[Install] WantedBy=multi-user.target EOF

И запускаем сервис

sudo systemctl daemon-reload sudo systemctl enable kyved sudo systemctl restart kyved

Смотрим логи и ждем когда нода начнет синхронизироваться

sudo journalctl -u kyved -f -o cat

Или смотрим статус синхронизации (когда "catching_up": false то нода синхронизирована)

curl localhost:26657/status

На блоке 443300 будет обновление

cd $HOME git clone https://github.com/KYVENetwork/chain/ cd chain git checkout v1.0.0-rc1 make install chmod +x /root/go/bin/kyved && sudo mv /root/go/bin/kyved /usr/local/bin/kyved cd $HOME kyved version --long

После синхронизации создаем кошелек (не забываем сохранить мнемоник)

kyved keys add $KYVE_WALLET

Если кошелек уже есть то восстанавливаем с помощью мнемоника

kyved keys add $KYVE_WALLET --recover

Добавляем переменную с адресом кошелька

KYVE_ADDR=$(kyved keys show $KYVE_WALLET -a)

Добавляем переменную в баш профиль

echo 'export KYVE_ADDR='${KYVE_ADDR} >> $HOME/.bash_profile source $HOME/.bash_profile

Монеты будут рассылаться батчами всем топ 10к финалистами интенсивайзд тестнета, проверить баланс

kyved query bank balances $KYVE_ADDR

Если средства успешно поступили, то создаем валидатора (сумму указывайте свою, сколько хотите делегировать с кошелька, указывайте чуть меньше что бы хватило на комиссию)

kyved tx staking create-validator \ --amount 1000000tkyve \ --from $KYVE_WALLET \ --commission-max-change-rate "0.05" \ --commission-max-rate "0.2" \ --commission-rate "0.1" \ --min-self-delegation "1" \ --pubkey $(kyved tendermint show-validator) \ --moniker $KYVE_MONIKER \ --chain-id $KYVE_CHAIN

Задаем переменную с адресом валидатора

KYVE_VALOPER=$(kyved keys show $KYVE_WALLET --bech val -a)

И добавляем ее в баш профиль

echo 'export KYVE_VALOPER='${KYVE_VALOPER} >> $HOME/.bash_profile source $HOME/.bash_profile

Проверка статуса валидатора

kyved query staking validator $KYVE_VALOPER

Делегация средств с кошелька на валидатора (сумму вводите свою)

kyved tx staking delegate $KYVE_VALOPER 1000000tkyve --from $KYVE_WALLET --fees 5000tkyve

Ну и если вдруг ваша нода попала в тюрьму, то выход

kyved tx slashing unjail --from $KYVE_WALLET --fees 5000tkyve

Если вы решили удалить ноду выполните следующее

sudo systemctl stop kyved sudo systemctl disable kyved cd $HOME rm /etc/systemd/system/kyved.service rm /usr/local/bin/kyved rm -r kyve/ rm -r .kyve/

Большое спасибо, за внимание и уделенное время

Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms

С уважением, MMS_Team