Программно-аппаратная масштабируемая система контроля добычи криптовалюты | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №41 (175) октябрь 2017 г.

Дата публикации: 15.10.2017

Статья просмотрена: 113 раз

Библиографическое описание:

Бушев Ю. В. Программно-аппаратная масштабируемая система контроля добычи криптовалюты // Молодой ученый. — 2017. — №41. — С. 7-10. — URL https://moluch.ru/archive/175/45943/ (дата обращения: 18.11.2019).



В статье описывается подход к организации контроля работы большого количества ферм по добычи криптовалюты. Рассмотрен процесс анализа данных и принятия решений о текущей работоспособности системы. Показан пример взаимодействия между компонентами и управляющим контроллером.

Добыча криптовалюты (майнинг) — деятельность по поддержанию распределенной платформы и созданию новых блоков с возможностью получить вознаграждение в форме новых единиц и комиссионных сборов в различных криптовалютах.

В 2017 году большую популярность получил способ добычи криптовалюты с использованием GPU (видеокарты). Графическая карта компьютера прекрасно подошла из-за специфики алгоритмов криптовалют (за один такт выполняется больше инструкций чем в CPU). Сама майнинг-ферма представляет из себя ничто иное, как обычный компьютер, единственное отличие — комплектация несколькими видеокартами вместо одной.

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

Рис. 1. Схема подключения нескольких майнинг ферм к контроллеру

Внедрение контроллера, специально разработанного программного сервера, работающего на миниатюрном одноплатном компьютере размером с банковскую карту, позволяет производить сбор и анализ данных о работе подключенных к нему ферм. Подключение производится по сети Ethernet. Дополнительно, Ground и Power контакты материнских плат всех ферм подключены к GPIO (general-purpose input/output) и Ground портам на Raspberry Pi.

Рассмотрим процесс инициализации и старта майнинга криптовалюты на примере Ether (обменные единицы в сети Ethereum, платформы для создания децентрализованных онлайн-сервисов на базе блокчейна). Непосредственный запуск ферм осуществляется через контроллер, а именно через WEB интерфейс контроллера. WEB интерфейс представляет из себя обычный WEB сервис, запущенный на Raspberry Pi и доступный внутри сети по протоколу HTTP.

Сразу послу запуска, ферма отправляет запрос на сервер контроллера. Основной смысл данного запроса — получить от контроллера настройки, предназначенные непосредственно для этой фермы.

Рис. 2. Ответ контроллера на запрос инициализации в формате JSON

На Рис. 2. Представлен пример ответа, полученного от контроллера в момент инициализации. Основным параметром здесь является Etherium адрес, необходимый для запуска процесса майнинга.

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

Рис. 3. Отчет о работе майнинг фермы в формате JSON

Запущенная ферма, каждые 15 секунд сообщает контроллеру следующую информацию (Рис. 3):

totalSpeed — Общий хэшрейт фермы.

gpu.name — Имя видеокарты, включая её порядковый номер.

gpu.speed — Хэшрейт видеокарты.

gpu.temperature — Температура графического ядра в градусах Цельсия.

gpu.fanSpeed — Скорость вращения вентиляторов видеокарты в процентах от максимальной скорости.

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

Рис. 4. WEB интерфейс контроллера

Для удобного наблюдения и настроек всей системы был разработан графический WEB интерфейс, показанный на Рис. 4. Он предоставляет возможность удаленного управления всей системой, а именно:

  1. Добавлять / Модифицировать настройки / Удалять фермы, подключенные к контроллеру.
  2. Выполнять Выключение / Включение / Перезагрузку ферм.
  3. Отслеживать состояние всех ферм на одном экране в режиме реального времени.

На Рис. 5 показан процесс конфигурирования фермы, настраиваемыми параметрами являются:

– Name — Имя фермы для отображения в контрольной панели.

– IP Address — Адрес фермы в локальной сети. Именно он используется для идентификации в момент инициализации.

– Power PIN — Номер GPIO контакта на Raspberry Pi, используемый для управлением питанием.

– Status — Текущее состояние фермы. “Запущена” или “Остановлена”.

– ETH Address — Etherium адрес, используемый для процесса майнинга.

– Min rate — Минимальный хэшрейт фермы ниже которого она будет принудительно перезагружена.

– Fan speed (%) — Скорость вращения вентиляторов на видеокартах фермы.

Рис. 5. Процесс настройки одной фермы через контроллер

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

Исходный код проекта доступен публично на GitHub:

– Mining Controller on NodeJS — https://github.com/bushev/mining-controller

– Mining Rig Runner on NodeJS — https://github.com/bushev/mining-rig-runner

Литература:

  1. Майнинг. // Википедия. URL: https://ru.wikipedia.org/wiki/Майнинг (дата обращения: 11.10.2017).
  2. Overclocking RX cards on Linux // Reddit. URL: https://www.reddit.com/r/MoneroMining/comments/5wdduz/overclocking_rx_cards_on_linux/ (дата обращения: 11.10.2017)
Основные термины (генерируются автоматически): WEB, ферма, GPIO, JSON, контроллер, HTTP, GPU, ETH, CPU, PIN.


Похожие статьи

Реализация VGA-интерфейса на базе FPGA фирмы Altera

Управление техническими системами с помощью web-интерфейса. Автоматизированная система управления роботом-манипулятором PM-01 на базе программируемого логического контроллера CX9001 фирмы BECKHOFF.

Программирование синусоидального и пилообразного сигналов...

‒ RCC – для управления тактовым генератором; ‒ GPIO – для управления портами ввода-вывода

gpio_dacchannel1.GPIO_Pin = GPIO_Pin_4

Headless-архитектура информационной системы предприятия

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

На данный момент наиболее распространенными форматами передачи структурированных данных являются XML и JSON — оба они...

Внедрение системы мониторинга метрик в серверное приложение...

CPU, JSON, операционная система, время задержки, использование памяти, схема взаимодействия, данные, метрика, процесс.

Регулирование скважности сигнала при помощи аналогового...

gpio.GPIO_Pin = GPIO_Pin_8

Анучин А. С. Системы управления электроприводов: учебник для вузов / А. С. Анучин. – М.: Изд. дом МЭИ, 2015.

Разработка автоматизированной системы управления процессом...

Выбран управляющий контроллер SIEMENS S7 1500 SIMATIC CPU 1511–1 PN, и подобраны модули ввода/вывода. В работе было проведено обновление всех средств автоматизации, а так же выбран панельный программный логический контроллер SIEMENS S7 1500 SIMATIC...

Программирование трехфазного генератора с синусоидальными...

‒ DMA – для управления прямым доступом к памяти (DMA). Рис. 1. Выбор фирмы микроконтроллера.

gpio.GPIO_Pin = GPIO_Pin_8

Технология создания веб-сайта туристского предприятия...

В статье рассматривается процесс разработки веб-сайта для туристской организации ООО «КонТур», г. Владивосток. Необходимость собственного информационного ресурса для турфирмы в настоящее время обусловлено как развитием интернет-технологий...

Похожие статьи

Реализация VGA-интерфейса на базе FPGA фирмы Altera

Управление техническими системами с помощью web-интерфейса. Автоматизированная система управления роботом-манипулятором PM-01 на базе программируемого логического контроллера CX9001 фирмы BECKHOFF.

Программирование синусоидального и пилообразного сигналов...

‒ RCC – для управления тактовым генератором; ‒ GPIO – для управления портами ввода-вывода

gpio_dacchannel1.GPIO_Pin = GPIO_Pin_4

Headless-архитектура информационной системы предприятия

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

На данный момент наиболее распространенными форматами передачи структурированных данных являются XML и JSON — оба они...

Внедрение системы мониторинга метрик в серверное приложение...

CPU, JSON, операционная система, время задержки, использование памяти, схема взаимодействия, данные, метрика, процесс.

Регулирование скважности сигнала при помощи аналогового...

gpio.GPIO_Pin = GPIO_Pin_8

Анучин А. С. Системы управления электроприводов: учебник для вузов / А. С. Анучин. – М.: Изд. дом МЭИ, 2015.

Разработка автоматизированной системы управления процессом...

Выбран управляющий контроллер SIEMENS S7 1500 SIMATIC CPU 1511–1 PN, и подобраны модули ввода/вывода. В работе было проведено обновление всех средств автоматизации, а так же выбран панельный программный логический контроллер SIEMENS S7 1500 SIMATIC...

Программирование трехфазного генератора с синусоидальными...

‒ DMA – для управления прямым доступом к памяти (DMA). Рис. 1. Выбор фирмы микроконтроллера.

gpio.GPIO_Pin = GPIO_Pin_8

Технология создания веб-сайта туристского предприятия...

В статье рассматривается процесс разработки веб-сайта для туристской организации ООО «КонТур», г. Владивосток. Необходимость собственного информационного ресурса для турфирмы в настоящее время обусловлено как развитием интернет-технологий...

Задать вопрос