February 17, 2023

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

Shardeum это линейно масштабируемая платформа смарт-контрактов на основе EVM, которая обеспечивает низкую плату за газ, сохраняя при этом настоящую децентрализацию и безопасность благодаря динамическому сегментированию состояния.

Сайт проекта | Документация проекта | Discord | GitHub
Telegram канал сообщества Starnodes

Награды

Shardeum собрали в seed-раунде $18 млн, токеномика: 51% - Node mining; 18% - Sale; 15% - Team; 11$ - Foundation; 5% - Ecosystem.

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

CPU 4, RAM 8 GB, SSD 160 GB

Используемые порты:

8080, 9001, 10001 / TCP

Аренда сервера:

1) Хостинг Hetzner - неплохой хостинг для аренды VPS по соотношению цена-качество, подойдет для большинства нод.

2) Хостинг Starnodes - VPS сервера с большой ёмкостью NVME накопителя. Все сервера расположены в датацентре и работают 24/7.

Подготовка сервера

Для начала подготовим сервер и установим нужные пакеты:

sudo apt update
sudo apt install htop mc curl tar wget jq bsdmainutils git make ncdu gcc jq chrony net-tools iotop nload clang libpq-dev libssl-dev build-essential pkg-config openssl ocl-icd-opencl-dev libopencl-clang-dev libgomp1 -y

Теперь нужно поставить docker:

sudo apt install wget jq ca-certificates gnupg -y
source /etc/*-release
rm -f /usr/share/keyrings/docker-archive-keyring.gpg
wget -qO- "https://download.docker.com/linux/${DISTRIB_ID,,}/gpg" | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io apparmor -y

Также docker-compose:

docker_compose_version=`wget -qO- https://api.github.com/repos/docker/compose/releases/latest | jq -r ".tag_name"`
sudo wget -O /usr/bin/docker-compose "https://github.com/docker/compose/releases/download/${docker_compose_version}/docker-compose-`uname -s`-`uname -m`"
sudo chmod +x /usr/bin/docker-compose
docker-compose -v

Устанавливаем ноду

Скачаем и запустим скрипт автоустановки:

curl -O https://gitlab.com/shardeum/validator/dashboard/-/raw/main/installer.sh && chmod +x installer.sh && ./installer.sh

Do you want to run the web based Dashboard? (y/n): введите Y

Set the password to access the Dashboard: введите пароль для дашборда

На следующие вопросы нажимаем: Enter

После установки перейдем в веб морду ноды в браузере:

https://server-IP:8080/

Введите пароль, который вы задали ранее:

На вкладке Maintenance запускаем ноду:

Веб интерфейс глючный, поэтому не стесняемся обновлять страницу.

Так же ноду можно запустить через консоль:

Открыть шелл для управления:

cd ~/.shardeum && ./shell.sh

Запустить:

operator-cli gui start

Запрашиваем монеты в тестовом Faucet:

Теперь запросим тестовые токены для стейкинга в валидатора.

Переходим на страницу и добавляем сеть в метамаск:

https://docs.shardeum.org/Network/Endpoints#connect-wallet

Способ 1 - дискорд

Перейдите в чат sphinx-faucet-1-2:

https://discord.com/channels/933959587462254612/1070780355931541514

Запросите токены: /faucet address metamask

Способ 2 - faucet на сайте

https://faucet-sphinx.shardeum.org/

Теперь нужно застейкать токены на ноде:

Способ 1 - через консоль (надежнее)

Перейдите в шелл в консоли:

cd ~/.shardeum && ./shell.sh

Застейкайте токены:

echo -e ваш_приватник_метамаск | operator-cli stake 10

Проверить что все получилось:

operator-cli stake_info ваш_адрес_метамаск

Если опять все глючит, запустите мини скрипт для стейкинга, который каждые 60 сек будет пытаться это сделать:

while :; do echo -e ваш_приватник_метамаск | operator-cli stake 10; sleep 60; done

Способ 2 - через веб интерфейс (часто глючит, время затратнее)

Проверяете в метамаске, что токены появились и подключаете кошелек в дашборде:

После этого там же жмете ADD STAKE и стейкаете 10 токенов (кран мне отправил 15, а остальное пойдет на комиссию).

Если будет ошибка:

MetaMask - RPC Error: [ethjs-query] while formatting outputs from RPC '{"value":{"code":-32603,"data":{"request":{"id":2376076506425,"jsonrpc":"2.0","params"....

Ресетните метамаск: Settings > Advanced > Reset Account

Успешный результат выглядит так:

Далее периодически вы будете становиться активным валидатором и получать награды, смотрим на вкладке Overview.

Так же может быть полезен Explorer проекта:

https://explorer-sphinx.shardeum.org/

Обновить ноду:

Запустите скрипт переустановки:

curl -O https://gitlab.com/shardeum/validator/dashboard/-/raw/main/installer.sh && chmod +x installer.sh && ./installer.sh

Перейдите в браузере во вкладку Maintenance и нажмите Remove Stake.

Альтернативно в консоли используем:

echo -e ваш_приватник_метамаск | operator-cli unstake

Или мини скрипт, если опять все лагает и не анстейкается:

while :; do echo -e ваш_приватник_метамаск | operator-cli unstake; sleep 60; done

Теперь снова запросите токены в кране и выполните стейкинг из шагов установки ноды.

Удалить ноду:

Удалите ноду в докере:

cd ~/.shardeum
./cleanup.sh
cd ~/
rm -rf .shardeum
rm installer.sh

@starnodes_ru - наш канал в Telegram с новостями и гайдами по тестнетам.
@starnodes_chat - канал, куда можно обратиться за помощью.