minefieldplatform
Введение
Компанийская система управления собственным майнинговым парком, предназначенная для работы службы эксплуатации. Уже запущена и работает некоторое время.
Внимание при развертывании
- Проект разворачивается с использованием nginx + gunicorn + supervisor
- Перед развертыванием необходимо создать базу данных и таблицы, а также запустить redis
- Необходимо заранее выполнить SSH-соединение между всеми машинами
Технологическая стопка проекта
- Проект разработан на Python 3.6 и Django 2.2 в рамках традиционной модели MTV
- Также используются такие компоненты как MySQL, Redis, Celery, Nginx, Ansible
- Основные функции проекта включают модули CMDB и TASK
Дашборд
Отображает информацию дашборда

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

- На этой странице отображается общий обзор активов, облачные метки позволяют быстро фильтровать неработающие и вышедшие из строя машины путем щелчка по соответствующей метке
Информация о машинах
* Эта страница отображает детальную информацию об активах, включая серверы хранения и GPU-машины. Изменение и удаление возможны через эту страницу, но новые записи нельзя добавить.
- Новая запись выполняется через имитацию автоматического обнаружения. Когда машина заходит в систему, используется начальный скрипт для запуска задачи каждые 10 минут, которая отправляет подробную информацию о машине (включая аппаратные данные и plot-информацию) в специальные папки прыжкового сервера (например, /tmp/storage и /tmp/gpu), где имя файла совпадает с адресом IP. Прыжковый сервер проверяет эти папки каждые 10 минут, обрабатывает данные и концентрирует их в специальные файлы, затем передает их на машину, где расположен проект (/tmp/). Система регулярно считывает информацию каждого устройства из этих файлов и обновляет базу данных.## ЗАДАЧИ
Используется для выпуска задач обслуживания и просмотра деталей задач
Общие задачи

- Использует playbook для выполнения задач с помощью API Ansible. Playbook можно настроить самостоятельно, несколько IP-адресов разделены запятой.
- После создания задачи, если нажать кнопку "Сохранить", она будет сохранена в списке задач, но не выполнена. Для выполнения задачи её следует найти в списке задач.
Список задач

- До выпуска задачи можно просмотреть её детали, нажав кнопку "Просмотр". Можно либо выпустить задачу, либо отменить её
- После отмены задачи можно просмотреть её детали, нажав кнопку "Просмотр"
- После выпуска задачи можно просмотреть её детали, нажав кнопку "Просмотр"
План развития
Планируемые дальнейшие шаги:
- Первым делом требуется обновление модуля управления майнинговой фермой согласно требованиям компании
- Вторым шагом планируется добавление функции аутентификации пользователей майнинговой фермы
Комментарии ( 0 )