January 31, 2022

KYVE

KYVE  - это протокол, который позволяет провайдерам хранить, обеспечивать безопасность и надёжность потоков данных.Децентрализованная архивная структура KYVE стандартизирует, валидирует и хранит потоки данных

KYVE уже поддерживает такие сети, как Avalanche, Cosmos, Polkadot, SmartWeave, Solana, Zilliqa, Evmos, EvmosTendermint, Near, Aurora.

Пулы финансируются токенами KYVE и любой может финансировать эти пулы, делегируя токены KYVE.

Благодаря недавнему переходу от SmartWeave к смарт-контрактам Moonbeam, KYVE теперь совместим с EVM.

Проект интересен тем, что в него вложились некоторые довольно известные фонды: Coinbase Ventures, Permanent Ventures, Hypersphere Ventures, Volt Capital, Mechanism Capital, Mina Foundation, Moonbeam Foundation

Для работы с проектом вам понадобится:

---Браузер с поддержкой Metamask ---Metamask (лучше зарегистрировать новый, поскольку нода просит ввести приватный ключ) ---верифицированный Discord ---Twitter ( Если планируете поднимать Валидатора -нужно либо иметь больше 9 аккаунтов либо больше 10 людей, которые делегируют вам монеты на сумму более  9200 KYVE)

Вы можете поставить для этого проекта ноду, для этого потребуется довольно слабый дешевый Виртуальный Сервер (VPS)

1.Заказываем сервер:

Требования к серверу (VPS) 1 cpu,
2 gb Ram,
40GB SSD,
Linux Ubuntu 20.04

Пошаговая инструкция как арендовать VPS на Vultr

2. Переключаем сеть в Metamask

Открываем метамаск, добавляем новую сеть: Moonbase Alpha.

Network Name: Moonbase Alpha
RPC URL: https://rpc.testnet.moonbeam.network
ChainID: 1287
Symbol: DEV
Block Explorer: https://moonbase-blockscout.testnet.moonbeam.network

Как переключать сеть можно прочесть тут:

3. Добавляем токен KYVE по контракту:

добавляем токен KYVE по контракту. 0x3cf97096ccdb7c3a1d741973e351cb97a2ede2c1

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

В результате  у вас должна быть в Metamask добавлена и включена сеть Moonbase Alpha и отображаться 2 токена: DEV и KYVE.

4. Запрашиваем токены KYVE в кране

Переходим на сайт 

Нажимаем  Connect wallet. выбираем Metamask, в самом Metamask принимаем все, что предложено во всплывающих  диалоговых окнах

Нажимаем Fauсet , нажимаем на Share on Twitter, твиттер сразу предложит отправить твит. Проверьте, чтоб в тексте Твита содержался адрес вашего  Metamask. Нажмите Tweet.

После отправки твита, копируем ссылку на свой пост и вставляем её в соответствующее поле на сайте. Нажимаем Claim your tokens

В правом нижнем углу экрана выскочит оповещение:

И, примерно через 10-30 минут в вашем кошельке появятся 0.01 DEV и 1000 KYVE.

5. Запрашиваем дополнительные токены DEV в кране

заходим дискорд мунбима и во вкладке #moonbase-faucet запросить токены на кошелёк командой: !faucet send 0x0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

где 0x0XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - адрес вашего Metamask В течение примерно 20 минут бот ответит вам и отправит 5  DEV в Metamask

6. Сохраняем ваш приватный ключ от Metamask

Заходим в метамаск  нажимаем “Опции счета” -> Реквизиты счета -> Экспортировать закрытый ключ

После ввода пароля система покажет ваш закрытый приватный ключ. Сохраните его, он понадобится для дальнейших шагов.

Выглядит он вот так

Как достать закрытый приватній ключ можно прочесть тут

7. Подключаемся к серверу через PuTTY(windows).

Если у вас macOS/Linux - то через терминал. Для macOS можно использовать еще, например   Termius

Как подключаться через Putty:

скачиваем отсюда.

Устанавливаем. Запускаем их меню программ Windows программу Putty:

После запуска видим вот такое окно

В верхнем поле вводим IP-адрес своего сервера и нажимаем Open,  после этого появляется окно терминала как на картинке ниже.

сначала вводим логин root, нажимаем Enter.
копируем пароль от вашего сервера в буфер обмена и вставляем в строку password. Для этого нужно кликнуть в поле правой кнопкой мыши (сам пароль не отображается!!!) и нажать Enter. Если все шаги до этого сделаны правильно, вы увидите  примерно такой экран.

это означает, что терминал запущен и  можно вводить команды по установке ПО KYVE

8. установка ПО  KYVE.

Нужно скопировать следующие команды в терминал Команды не нужно вводить вручную. Можно копировать в буфер обмена (Ctrl+C), и вставить правой кнопкой мыши в терминал и нажать Enter.

Создаем переменные. Сейчас мы будем использовать приватный ключ вашего Metamask Заменям  ваш_приватный_ключ  на ваш приватный ключ, копируем команды и вставляем в терминал

key=ваш_приватный_ключ stakeamount=10 export stakeamount=$stakeamount >> $HOME/.bash_profile export key=$key>> $HOME/.bash_profile source ~/.bash_profile

Запускаем скрипт для установки необходимого на сервер:

sudo apt install curl -y

curl -s https://raw.githubusercontent.com/mariofandom/KYVEL/main/KYVE.sh > KYVE.sh && chmod +x KYVE.sh && ./KYVE.sh

Если выполнение команды произошло успешно и система не выдала ошибок, в течение 20 минут с вашего кошелька Metamask будет списано 20 токенов KYVE ( на балансе должно остаться около 980 токенов)  и распределит по 10 токенов  в пулы Avalanche, Moonriver.

Каждый из пулов запускается соответствующим docker-контейнером, эта информация , может пригодится нам в случае неполадок.

Поздравляю! установка завершена!

Оставшиеся монеты вы можете самостоятельно  отправить в любой из 9 доступных пулов. Для этого надо  сначала сменить значение переменной stakeamount. Если вы хотите изменить количество токенов вместо 10 - введите ваше число токенов и запустите команды.

stakeamount=10
export stakeamount=$stakeamount >> $HOME/.bash_profile
source ~/.bash_profile

После этого запустите докер контейнер одного из пулов,  ниже

Запуск пулов по отдельности

Avalanche Вводим команды (можно копировать весь абзац целиком):

docker stop kyve-avalanche-node docker pull kyve/evm:latest && \ docker stop kyve-avalanche-node 2>/dev/null; \ docker container rm kyve-avalanche-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-avalanche-node kyve/evm:latest \ --pool 0x464200b29738367366FDb4c45f3b8fb582AE0Bf8 \ --private-key $key \ --stake $stakeamount \

лог контейнера Avalanche $ docker logs kyve-avalanche-node --follow --tail=100

ждем минут 20. Если баланс уменьшился,  логи не содержат надписи “error” - значит этот контейнер работает правильно.

Вот команды для остальных контейнеров:

Команда для просмотра логов контейнера Moonriver

docker logs kyve-moonriver-node --follow --tail=100

команда перезапуска контейнера Moonriver

$docker stop kyve-moonriver-node docker pull kyve/evm:latest && \ docker stop kyve-moonriver-node 2>/dev/null; \ docker container rm kyve-moonriver-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-moonriver-node kyve/evm:latest \ --pool 0x610D55fA573Bce4D2d36e8ADAAee517B785a69dF \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Cosmos 

docker logs kyve-cosmos-node --follow --tail=100

команда перезапуска контейнера Cosmos 

docker stop kyve-cosmos-node docker pull kyve/cosmos:latest && \ docker stop kyve-cosmos-node 2>/dev/null; \ docker container rm kyve-cosmos-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-cosmos-node kyve/cosmos:latest \ --pool 0x7Bb18C81BBA6B8dE8C17B97d78B65327024F681f \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Celo

docker logs kyve-celo-node --follow --tail=100

команда перезапуска контейнера Celo

docker pull kyve/celo:latest && \ docker stop kyve-celo-node 2>/dev/null; \ docker container rm kyve-celo-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-celo-node kyve/celo:latest \ --pool 0x1588fd93715Aa08d67c32C6dF96fC730B15E1E1A \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Solana 

docker logs kyve-solana-node --follow --tail=100

команда перезапуска контейнера Solana

docker pull kyve/solana-snapshots:latest && \ docker stop kyve-solana-node 2>/dev/null; \ docker container rm kyve-solana-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-solana-node kyve/solana-snapshots:latest \ --pool 0x3124375cA4de5FE5afD672EF2775c6bdcA1Cfdcc \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Evmos

  docker logs kyve-evmos_evm-node --follow --tail=100

команда перезапуска контейнера Evmos

docker pull kyve/evm:latest && \ docker stop kyve-evmos_evm-node 2>/dev/null; \ docker container rm kyve-evmos_evm-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-evmos_evm-node kyve/evm:latest \ --pool 0x24E7b48c3a6E40ea0e50764E617906c9B7cf9F21 \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Evmos Tendermint

docker logs kyve-evmos_tendermint-node --follow --tail=100

команда перезапуска контейнера Evmos Tendermint 

docker pull kyve/cosmos:latest && \ docker stop kyve-evmos_tendermint-node 2>/dev/null; \ docker container rm kyve-evmos_tendermint-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-evmos_tendermint-node kyve/cosmos:latest \ --pool 0xAa3337d1f8F72D544f3843B2089d2DA02BBcbD28 \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера Aurora

docker logs kyve-aurora-node --follow --tail=100

команда перезапуска контейнера Aurora

docker pull kyve/evm-snapshots:latest && \ docker stop kyve-aurora-node 2>/dev/null; \ docker container rm kyve-aurora-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-aurora-node kyve/evm-snapshots:latest \ --pool 0x5C3ea1634E97F44b592524616F4b158D569DF920 \ --private-key $key \ --stake $stakeamount \

Команда для просмотра логов контейнера NEAR

docker logs kyve-near-node --follow --tail=100

команда перезапуска контейнера NEAR

docker pull kyve/near:latest && \ docker stop kyve-near-node 2>/dev/null; \ docker container rm kyve-near-node 2>/dev/null; \ docker run -d -it --restart=always \ --name kyve-near-node kyve/near:latest \ --pool 0xFAb226300F8B481dF35445c22d73fF5cb9C409eD \ --private-key  $key \ --stake $stakeamount \

После того, как мы увидим, что контейнеры, которые мы выбрали - завелись - Переходим по ссылке:https://app.kyve.network/подключаем к сайту ваш Metamask, с установленной сетью  Moonbase Alpha видим вот, на котором ссылки в  пулы, которым мы сдавали в стейкинг монеты с нашей ноды 

Через некоторое время после запуска ноды вам будут начисляться награды в тестовых токена KYVE. Их можно снимать и делать ределигрование.

 Чтобы снять, необходимо зайти в конкретный пул, например в Cosmos и нажать Claim RewardsВсплывает окно  выбора суммы, нажимаем  MAX  и затем   Claim Rewards. Подтверждаем транзакцию в Metamask. Ожидаем завершение операции.  Если все ок, то в течение пары минут на баланс упадут токены KYVE. 

Устранение неполадок

Если выполнение команд не прошло успешно и сервер вывел надписи error. Необходимо проанализировать  логи. Этот этап называется testnet и вполне допустимо, что ПО, которое мы устанавливаем может работать нестабильно, заводиться не с первого раза и  самопроизвольно выключаться. Сначала  смотрим баланс на KYVE кошельке Метамаск.

Если с момента запуска первой команды прошло более 20 минут и баланс не изменился  - значит контейнеры вообще не запустились и необходимо перенастроить те контейнеры,  которые выдают ошибки заново. Для этого нужно одним блоком запустить команду запуска докер-контейнера по соответствующему  контейнеру. и посмотреть логи заново.

 Также система может не пропускать  запуск контейнера если  размер стейка ниже, чем минимальный  в системе для данного пула. На момент написания гайда минимальный размер стейка  9201 KYVE

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

добавить токены в стейк

если вы хотите изменить количество токенов вместо 100 - введите ваше число токенов

stakeamount=100 export stakeamount=$stakeamount >> $HOME/.bash_profile source ~/.bash_profile

смена ключа если вы хотите изменить приватный ключ, вместо ваш_приватный_ключ - введите новое значение

key=ваш_приватный_ключ export key=$key>> $HOME/.bash_profile source ~/.bash_profile

введите команду остановки docker-контейнеров:

docker stop kyve-avalanche-node docker stop kyve-moonriver-node docker stop kyve-cosmos-node docker stop kyve-celo-node docker stop kyve-solana-node docker stop kyve-evmos_evm-node docker stop kyve-evmos_tendermint-node

рестарт контейнера

docker restart kyve-avalanche-node docker restart kyve-moonriver-node docker restart kyve-cosmos-node docker restart kyve-celo-node docker restart kyve-solana-node docker restart kyve-evmos_evm-node docker restart kyve-evmos_tendermint-node

Подписывайся:

👉🏼Публичный канал MAR!O

👉🏼Канал по нодам MAR!O Nodes