Ноды
May 9, 2022

Гайд по установке ноды Subspace

Минимальные системные требования: - CPU: 2 CORE - RAM: 2 GB - SSD: 50 GB

Установка для Linux

ВСЯ УСТАНОВКА ПРОВОДИЛАСЬ НА Linux Ubuntu 20.04

1. Устанавливаем адрес кошелька polkadot ( Как узнать адрес? )

SUBSPACE_REWARD_ADDRESS="Здесь указываем адрес кошелька"

2. Устанавливаем название ноды ( Для отслеживания в телеметрии )

SUBSPACE_NODE_NAME="Здесь указываем название ноды. Пример: Name123"

3. Обновляем OS и устанавливаем библиотеки

sudo apt update && sudo apt upgrade -y && sudo apt install wget -y && sudo apt install ocl-icd-opencl-dev libopencl-clang-dev libgomp1 -y

Способ #1 ( Systemd )

1. Скачиваем ноду и фармер

cd ~/ && sudo mkdir subspace && wget -O subspace/node https://github.com/subspace/subspace/releases/download/gemini-1b-2022-jun-18/subspace-node-ubuntu-x86_64-gemini-1b-2022-jun-18 && wget -O subspace/farmer https://github.com/subspace/subspace/releases/download/gemini-1b-2022-jun-18/subspace-farmer-ubuntu-x86_64-gemini-1b-2022-jun-18 && sudo mv subspace /usr/local/bin/

2. Изменяем права скаченных файлов

sudo chmod -R +x /usr/local/bin/subspace

3. Создаем нового пользователя

sudo adduser --system --home=/var/lib/subspace subspace

4. Добавляем юнит для ноды в Systemd

printf "[Unit]
Description=Subspace Node
After=network.target

[Service]
Type=simple
User=subspace
ExecStart=/usr/local/bin/subspace/node \
  --chain gemini-1 \
  --execution wasm \
  --pruning 1024 \
  --keep-blocks 1024 \
  --validator \
  --name $SUBSPACE_NODE_NAME
Restart=always
RestartSec=10
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/subspace-node.service

5. Добавляем юнит для фармера в Systemd

printf "[Unit]
Description=Subspace Farmer
After=network.target
After=subspace-node.service

[Service]
Type=simple
User=subspace
ExecStart=/usr/local/bin/subspace/farmer farm --reward-address $SUBSPACE_REWARD_ADDRESS --plot-size 40G
Restart=always
RestartSec=10
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target" > /etc/systemd/system/subspace-farmer.service

6. Добавляем юниты в автозагрузку и запускаем их

sudo systemctl daemon-reload && sudo systemctl enable subspace-node subspace-farmer && sudo systemctl start subspace-node subspace-farmer
  • Проверка логов
journalctl -u subspace-node -f
journalctl -u subspace-farmer -f
  • Рестарт ноды
sudo systemctl restart subspace-node subspace-farmer
  • Удаление ноды
sudo systemctl stop subspace-node subspace-farmer && sudo systemctl disable subspace-node subspace-farmer && sudo deluser subspace && sudo rm -rf /usr/local/bin/subspace /etc/systemd/system/subspace* /var/lib/subspace
  • Обновление ноды

Если вы только что установили ноду, то обновлять ноду вам не нужно!

sudo systemctl stop subspace-node subspace-farmer && wget -O /usr/local/bin/subspace/node https://github.com/subspace/subspace/releases/download/gemini-1b-2022-jun-18/subspace-node-ubuntu-x86_64-gemini-1b-2022-jun-18 && wget -O /usr/local/bin/subspace/farmer https://github.com/subspace/subspace/releases/download/gemini-1b-2022-jun-18/subspace-farmer-ubuntu-x86_64-gemini-1b-2022-jun-18 && sudo systemctl start subspace-node subspace-farmer

После обновления ноды проверьте логи, если вы видите надпись

Node is running on non-canonical fork, full node and farmer reset is required

То пропишите

sudo systemctl stop subspace-node subspace-farmer && sudo systemctl disable subspace-node subspace-farmer && sudo deluser subspace && sudo rm -rf /var/lib/subspace && cd /usr/local/bin/subspace/ && ./farmer wipe && ./node purge-chain --chain gemini-1 -y && cd ~/ && sudo systemctl daemon-reload && sudo systemctl enable subspace-node subspace-farmer && sudo systemctl start subspace-node subspace-farmer

Способ #2 ( Docker )

СПОСОБ БОЛЬШЕ НЕ АКТУАЛЕН! ИСПОЛЬЗУЙТЕ 1 СПОСОБ!

1. Устанавливаем docker

sudo apt install ca-certificates curl gnupg lsb-release wget jq sed -y && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) 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 -y

2. Устанавливаем docker-compose

mkdir -p ~/.docker/cli-plugins/ && curl -SL https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose && chmod +x ~/.docker/cli-plugins/docker-compose

3. Создаем конфиг нашего проекта

cd ~/ && echo "export SUBSPACE_REWARD_ADDRESS="$SUBSPACE_REWARD_ADDRESS >> .bash_profile && echo "export SUBSPACE_NODE_NAME="$SUBSPACE_NODE_NAME >> .bash_profile && source .bash_profile && sudo mkdir subspace

Вставляем

echo 'version: "3.8"
services:
node:
image: ghcr.io/subspace/node:gemini-1b-2022-june-02
command: [
"--chain", "gemini-1",
"--execution", "wasm",
"--pruning", "1024",
"--keep-blocks", "1024",
"--validator",
"--name", "$SUBSPACE_NODE_NAME"
]
restart: unless-stopped
farmer:
image: ghcr.io/subspace/farmer:gemini-1b-2022-june-02
command: [
"farm",
"--reward-address", "$SUBSPACE_REWARD_ADDRESS",
"--plot-size", "40G"
]
restart: unless-stopped
depends_on:
- node' >> subspace/docker-compose.yaml

4. Запускаем ноду и фармер

cd ~/subspace && docker compose up -d

ВАЖНО! Для того, чтобы команды снизу работали вы должны перейти в директорию с проектом, прописав

 cd ~/subspace
  • Проверка логов
docker compose logs -f node
docker compose logs -f farmer

Чтобы просматривать одновременно логи ноды и фармера

docker-compose logs -f

Для того, чтобы вернуть командную строку нажмите ctrl + c

  • Рестарт ноды
docker compose restart
  • Удаление ноды
docker compose down -v && cd ~/ && sudo rm -rf ./subspace

Способ #3 ( SCREEN )

СПОСОБ БОЛЬШЕ НЕ АКТУАЛЕН! ИСПОЛЬЗУЙТЕ 1 СПОСОБ!

1. Устанавливаем screen

sudo apt install screen -y

2. Скачиваем ноду и фармер

cd ~/
sudo mkdir subspace
wget -O subspace/node https://github.com/subspace/subspace/releases/download/gemini-1b-2022-june-03/subspace-node-ubuntu-x86_64-gemini-1b-2022-june-03
wget -O subspace/farmer https://github.com/subspace/subspace/releases/download/gemini-1b-2022-june-03/subspace-farmer-ubuntu-x86_64-gemini-1b-2022-june-03

3. Изменяем права скаченных файлов

sudo chmod -R +x subspace

4. Запускаем скрин для ноды

screen -S subspace

5. Запускаем ноду

./subspace/node \
  --chain gemini-1 \
  --execution wasm \
  --pruning 1024 \
  --keep-blocks 1024 \
  --validator \
  --name $SUBSPACE_NODE_NAME

Выходим со скрина, нажав ctrl + a, затем ctrl + d

6. Запускаем скрин для фармера

screen -S subspace-farmer

7. Запускаем фармер

./subspace/farmer farm --reward-address $SUBSPACE_REWARD_ADDRESS --plot-size 40G

Выходим со скрина, нажав ctrl + a, затем ctrl + d

  • Проверка логов
screen -r subspace
screen -r subspace-farmer
  • Рестарт ноды

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

screen -r subspace

Нажимаем ctrl + c, чтобы закрыть ноду если она запущена

Повторяем этап 5

Теперь заходим в скрин фармера

screen -r subspace-farmer

Повторяем этап 7

  • Удаление ноды
screen -S subspace -X quit
screen -S subspace-farmer -X quit
sudo rm -rf ~/subspace

Если screen вы больше нигде не используете, то можете удалить его

sudo apt remove screen -y

Установка для Windows

ВСЯ УСТАНОВКА ПРОВОДИЛАСЬ НА Windows 10 Pro 21H1

1. Скачиваем и распаковываем архив

2. Открываем install.bat и ждем окончания установки

3. Открываем start.bat, вводим название ноды ( Для отслеживания в телеметрии ) и жмем enter

Теперь вводим адрес кошелька polkadot ( Как узнать адрес? ) и жмем enter

У нас запустится 2 Powershell ( нода и фармер ), если их закрыть, то они заново откроются. Для того, чтобы прекратить это достаточно закрыть Subspace Helper. Это специальная мера предосторожности на случай если вы случайно закроете ноду или фармер, или же если нода крашнется

  • Проверка логов

Логи просматриваем в Powershell, никаких команд нет

  • Рестарт ноды

Закрываем Subspace Helper и повторяем 3 пункт

  • Удаление ноды

Запускаем uninstall.bat или же просто удаляем директорию вручную

Помощь

  • Как понять, что нода работает корректно?
    Ответ: Следите за нодой через телеметрию либо же проверяйте логи
  • Что делать если моей ноды нет в телеметрии?
    Ответ: Ничего страшного в этом нет, это нормально, просто проверяйте работоспособность ноды через логи
  • Какой способ установки лучше выбрать?
    Ответ: Лучше всего выбрать 1 способ или 2 способ, однако если у вас есть какие-то трудности в установке и не получается установить ноду этими способами, то тогда воспользуйтесь 3 способом. Так же нужно понимать, что выбирая 3 способ, если нода по каким-то причинам перестанет работать, то вы должны будете перезапустить её вручную
  • Как узнать адрес кошелька polkadot?
    Ответ: Если у вас не установлен кошелек, то вы должны его установить. После чего переходим https://polkadot.js.org/apps/#/accounts и нажимаем в верхнем левом углу по иконке/надписи Polkadot. Листаем вниз и видим раздел "Тестовые сети", нажимаем по разделу и раскрывается список. В списке находим кнопку "Subspace Gemini 1", нажимаем по ней и пролистываем в самый вверх, будет видна кнопка "Переключатель", теперь нажимаем по ней и страница должна перезапуститься. На этой странице вы можете просматривать баланс аккаунта ( кол-во заработанных вами токенов за ноду ). Нажимаем по никнейму аккаунта и справа откроется модальное окно в котором будет виден адрес вашего кошелька, можете скопировать его вручную либо нажав кнопку Copy

Реквизиты

Telegram: https://t.me/IdleX

Discord: Idle#4253

Наш telegram канал: https://t.me/+XFtcfo9CtlNmMmEy

Последнее обновление: 23.06.2022