June 8, 2022

Protocol Node Kyve с поддержкой Kysor

Для этого руководства я взял информацию с github проекта https://github.com/kyve-org/kysor.

Команда разработала Cosmovisor для всех протокол нод в сети KYVE (KYSOR).

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

Итак, давайте начнем процесс установки

Обновляем все пакеты

sudo apt update && sudo apt upgrade -y

Устанавливаем Yarn

sudo apt install curl
curl https://deb.nodesource.com/setup_14.x | sudo bash
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt upgrade -y
sudo apt install nodejs=14.* yarn build-essential jq -y

Создаем переменные

POOL_ID="Номер EVM пула"
STAKE="кол-во токенов для стейка"
echo "export POOL_ID=$POOL_ID" >> $HOME/.bash_profile
echo "export STAKE=$STAKE" >> $HOME/.bash_profile
source $HOME/.bash_profile

Скачиваем Kysor

git clone https://github.com/kyve-org/kysor.git
cd $HOME/kysor

Создаем директорию secrets и текстовый файл мнемоника

mkdir $HOME/kysor/secrets
echo 'Ваш мнемоник' > $HOME/kysor/secrets/mnemonic.txt

Затем передайте файл в папку secrets arweave.json либо через MobaXterm, либо через SCP, для локального ПК выполните команду следующим образом. Замените путь с локального ПК и IP-адрес сервера:

scp C:\arweave.json [email protected]:/root/kysor/secrets/

Проверяем наличие файлов в папке

ls -la $HOME/kysor/secrets/

Заменяем конфиг kysor.conf.ts, копируем полностью, без изменений.

tee $HOME/kysor/kysor.conf.ts > /dev/null <<EOF
import { IConfig } from "./src/faces";
const config: IConfig = {
  // target of the host machine, can be either "linux" or "macos"
  // important for downloading the correct binaries
  hostTarget: "linux",
  
  // whether KYSOR should auto download new binaries
  // if set to false, you have to insert the binaries manually
  autoDownload: true,
  
  // whether KYSOR should verify the checksums of downloaded binaries
  // if autoDownload is false this option can be ignored
  verifyChecksums: true,
  
  // settings for protocol node
  // notice that mnemonic and keyfile is missing, those need to be files under the secrets directory
  protocolNode: {
    // the ID of the pool you want to join as a validator
    // an overview of all pools can be found here -> https://app.kyve.network
    poolId: $POOL_ID,
    
    // the network you want to run on
    // currently only the testnet network "korellia" is available
    network: "korellia",
    
    // the amount of $KYVE you want to stake
    // will only get applied if you are not a validator yet
    // once you are a validator you can manage your stake in the KYVE app
    initialStake: $STAKE,
    
    // the amount of bytes the node can use at max to cache data
    // 1000000000 equals 1 GB which is usually enough
    space: 1000000000,
    
    // specify verbose logging
    // is often recommended in order to have a more detailed insight
    verbose: true,
  },
};

export default config;
EOF

Устанавливаем Kysor, Я рекомендую запускать процесс в screen

cd $HOME/kysor
yarn install
yarn build

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

sudo tee <<EOF >/dev/null /etc/systemd/system/kyved.service
[Unit]
Description=Protocol Node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/kysor
ExecStart=yarn start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF

Запускаем сервисный файл

sudo systemctl daemon-reload && sudo systemctl enable kyved && sudo systemctl start kyved

Смотрим логи

journalctl -u kyved -f -o cat

СМЕНА ПУЛА

sudo systemctl stop kyved 
nano $HOME/kysor/kysor.conf.ts 

находим значение poolId:

Указываем необходимый пул

После сохраняем - ctr+o enter и выходим из нано - ctr+x

sudo systemctl restart kyved

Поздравляю! Вы стали валидатором протокол ноды KYVE!

Чат для общения: https://t.me/russianbears1

Авторский канал: https://t.me/cryptorussianbears