Mina Mainnet
  • Summary
  • Technical Requirements
  • RUSSIAN
    • Создание и проверка ключей
    • Варианты запуска ноды
      • Запуск Mina с Докером
      • Запуск Mina без Докера
    • Обновление ноды для Докера
    • Обновление ноды для Сервиса
    • CLI. Импорт ключа, отправка токенов, делегирование
    • Настройка TMUX
    • Настройка Снарк Стоппера
  • ENGLISH
    • Generating and verifying keys
    • Node launch options
      • Running Mina with Docker
      • Running Mina without Docker
    • Update for Docker
    • Update for Service
    • CLI. Key import, sending tokens
    • Setting up TMUX
    • Setting up Snark Stopper
  • Explorers
  • Mina Explorer from Staketab
  • Mina explorer from @Garethtdavies
  • Related materials
    • Mina Academy from Staketab
    • How to stake MINA from Staketab
    • Troubleshooting guide from @Garethtdavies
    • Docker guide from @Garethtdavies
    • Mina Snark Stopper from @Whataday2day
    • Official Mina docs
Powered by GitBook
On this page
  • Описание
  • Подготовка
  • Установка JSON
  • Устанавливаем пакет git, если он не установлен на сервере:
  • 1. Установка без Докера:
  • 1.1 Запуск
  • 2. Установка с Докером:
  • 3. Решения ошибок
  • 4. Обновление
  • 5. Удаление

Was this helpful?

  1. RUSSIAN

Настройка Снарк Стоппера

v1.2.4

PreviousНастройка TMUXNextGenerating and verifying keys

Last updated 4 years ago

Was this helpful?

Описание

Скрипт будет полезен тем, кто запускает Производителя блоков и Снарк Воркера на одном сервере. Воркер использует все ваши ядра процессора на 100%, что негативно сказывается на производителе блоков. Скрипт позволяет остановить Снарк Воркера за 3 минуты до производства блока и включит его опять через 10 минут.

Данный скрипт создан пользователем @whataday2day#1271

Подготовка

Установка JSON

sudo apt install jq -y

Устанавливаем пакет git, если он не установлен на сервере:

yes | sudo apt install git

Ваш snark worker должен быть ЗАПУЩЕН.

Проверьте файл конфигурации. Есть несколько вариантов, которые вы можете переназначить.

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

sudo iptables -D OUTPUT -d 172.16.0.0/12 -j DROP

1. Установка без Докера:

Запускать нужно в новой сессии TMUX

sudo apt-get update \
&& sudo apt-get install python3-venv tmux git -y \
&& git clone https://github.com/c29r3/mina-snark-stopper.git \
&& cd mina-snark-stopper \
&& python3 -m venv venv \
&& source ./venv/bin/activate \
&& pip3 install -r requirements.txt

Теперь нужно добавить в конфиг стоппера ваш публичный ключ и комиссию Воркера. Открываем конфиг командой:

nano $HOME/mina-snark-stopper/config.yml

В строке WORKER_PUB_KEY: YOUR_PUBLIC_KEY измените YOUR_PUBLIC_KEY на $MINA_PUBLIC_KEY В строке WORKER_FEE: 1 замените значение комиссии например с 1 на 0.25

1.1 Запуск

tmux new -s snark-stopper -d venv/bin/python3 snark-stopper.py

Просмотр логов:

tmux attach -t snark-stopper

2. Установка с Докером:

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

curl -s https://raw.githubusercontent.com/c29r3/mina-snark-stopper/master/config.yml > config.yml; \
touch snark_stopper.log

Теперь нужно добавить в конфиг стоппера ваш публичный ключ и комиссию Воркера. Открываем конфиг командой:

nano $HOME/config.yml

В строке WORKER_PUB_KEY: YOUR_PUBLIC_KEY измените YOUR_PUBLIC_KEY на $MINA_PUBLIC_KEY В строке WORKER_FEE: 1 замените значение комиссии например с 1 на 0.25

Запускаем контейнер:

touch snark_stopper.log; \
chmod 666 snark_stopper.log; \
sudo docker run -d \
--volume $(pwd)/config.yml:/mina/config.yml \
--volume $(pwd)/snark_stopper.log:/mina/snark_stopper.log \
--net=host \
--restart always \
--name snark-stopper \
c29r3/snark-stopper

Просмотр логов:

sudo docker logs -f snark-stopper

3. Решения ошибок

Если снарк-стоппер не может подключиться к порту 3085:

Нужно проверить доступность порта:

nc -t -vv localhost 3085

Результат должен быть примерно таким: Connection to localhost 3085 port [tcp/*] succeeded!

Если соединение зависает, то возможны следующие варианты:

  • Доступ к порту 3085 заблокирован через ufw\iptables

  • Вы не добавили флаг контейнера докеров -p 127.0.0.1:3085:3085

  • Узел еще не синхронизирован. По этой причине стоппер не может подключиться

Порт отвечает, но стоппер по-прежнему не может подключиться:

sudo iptables -D OUTPUT -d 172.16.0.0/12 -j DROP

это из-за блокировки частных подсетей, которые использует докер.

Обновить образ докера

После выполнения приведенной ниже команды перейдите к шагу 2.

sudo docker rm -f snark-stopper \
&& sudo docker pull c29r3/snark-stopper

4. Обновление

Удаляем файл с конфигом и контейнер и скачиваем новый образ:

sudo docker rm -f snark-stopper; \
curl -s https://raw.githubusercontent.com/c29r3/mina-snark-stopper/master/config.yml > config.yml; \
sudo docker pull c29r3/snark-stopper

Далее продолжаем с пункта 1 или 2.

5. Удаление

rm -rf mina-snark-stopper \
&& sudo docker rm -f snark-stopper \
&& sudo docker system prune -af
https://github.com/c29r3/mina-snark-stopper