Перейти к публикации

Рекомендованные сообщения

(изменено)

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

 

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

 

Предлагаю услугу запуска нескольких мастернод одной монеты на одном VPS сервере за 1 Евро в месяц с честными IP адресами.

 

На первом этапе от Вас потребуется:

  • Купить VPS сервер на arubacloud.com. Тарифный план SMART, операционная система Ubuntu Server 16.04 LTS 64bit за 1 Евро в месяц
  • В процессе установки выбрать пароль для рута: 123 (мне проще, в дальнейшем вы его измените), имя для сервера, Aruba01, если это первый сервер, Aruba02, если второй и т.д.
  • Прислать мне:
    • IP адрес сервера (обязательно)

    • Выделенный после установки диапазон IPV6 (обязательно)

    • Ссылку на github монеты, мастерноды которой необходимо установить и их количество

    • Cписок нод для addnode

    • Если есть возможность скачать блокчейн, то ссылку на архив

    • Токен и chatid (userid) бота телеграмм (по желанию)

 

Что сделаю я:

  • Установлю все необходимые для работы мастернод зависимости и ПО (включая MidnightCommander – аналог FAR и TotalCommander для Windows для удобства работы с файлами)
  • Привяжу к серверу 10 IPV6 адресов
  • Установлю ftp сервер
  • При необходимости соберу кошелек из исходников
  • Запущу указанное количество мастернод с информированием о проблемах в телеграмм по alertnotify (ни разу не срабатывало)
  • Пришлю конфигурационный файл для Вашего локального кошелька - активатора

 

На втором этапе от вас потребуется:

  • Купить необходимое количество монет
  • В локальном кошельке создать адреса соответствующие количеству запускаемых мастернод используя для них следующие имена (такая система позволит однозначно идентифицировать сервер и IP адрес мастерноды. Имена кошельков также будут совпадать с именами мастернод в конфигурационном файле кошелька - активатора):
    • Aruba01.00 – кошелек для мастерноды которая будет работать на IPV4 сервера Aruba01
    • Aruba01.01 – кошелек для мастерноды которая будет работать на первом IPV6 сервера Aruba01
    • Aruba01.02, Aruba01.03 и т.д. – кошельки для мастерноды которые будут работать на втором, третьем и т.д. IPV6 сервера Aruba01
  • На каждый из этих адресов перевести сумму залога необходимую для запуска мастерноды
  • Внести транзакции и индекс в присланный мной конфигурационный файл, перезапустить кошелек и запустить мастерноды
  • Поменять пароли для доступа к серверу

 

Сервер и мастерноды будут настроены следующим образом:

  • Каждые 5 минут система будет проверять работающие демоны и, в случае необходимости, запускать их снова
  • Каждые 6 минут система будет проверять работу мастернод, сравнивая количество блоков каждой мастерноды. Если количество блоков хотя бы у одной мастерноды отстает более чем на 1 блок, то информирует об этом в телеграмм боте (бывает, что блоки застревают и мастернода бесконечно пишет masternode successfully started, что являлось правдой на застрявшем блоке, но в действительности уже не так. Возможен уход в другую цепочку)
  • Каждая мастернода и ее блокчейн находятся в своей директории (папке) с именами позволяющими идентифицировать на каком IP адресе она запущена, например:
    • .dextro00мастернода запущена на IPV4
    • .dextro01 – мастернода запущена на первом IPV6
    • .dextro02, .dextro03 и т.д. – мастернода запущена на втором, третьем и т.д. IPV6
  • Каждая папка помимо файлов необходимых для работы мастерноды содержит пять дополнительных файлов:
    • setup – файл конфигурации с именами запускаемых файлов демона, клиента и первые три цифры RPC порта (например, если порт указан 555, то для демона из директории .dextro00 RPC порт будет 55500, для .dextro01 – 55501 и т.д.)
    • start – запуск демона (мастерноды). IP адрес и RPC порт апределяются автоматически из имени директории
    • status – статус мастерноды в формате: .dextro01: 312576 blocks. Masternode successfully started, что означает, что мастернода на первом IPV6 находится на 312576 блоке и успешно работает (работала на этом блоке)
    • stopостановка мастерноды
    • stcall – выполнение RPC запроса к демону (например: ./stcall getinfo)
  • Исполняемый файл mns в домашней директории получает данные о работе всех мастернод и отображает их в следующем виде (также отображает информацию о расходе памяти, загрузке процессора, места на диске, uptime и имя сервера):
    • .dextro01: 312581 blocks. Masternode successfully started.
      .dextro02: 312581 blocks. Masternode successfully started.
      .dextro03: 312581 blocks. Masternode successfully started.
      .dextro04: 312581 blocks. Masternode successfully started.
      .dextro05: 312581 blocks. Masternode successfully started.
      The
      number of blocks is the same
      Видно, что все демоны в одинаковых цепочках и ни один из них не застрял

      Такая система контроля работы мастернод позволяет определить проблему на ранней стадии, а не тогда когда мастернода перешла в статус EXPIRED
       
  • Исполняемый файл wr – запускает остановленные или остановившиеся мастерноды
  • Исполняемые файлы ftpon и ftpoff – для включения и отключения ftp сервера (по умолчанию отключено, пользователь и пароль по умолчанию: sblack, 123)

 

Система легко расширяется самостоятельно. Если потребуется запустить еще одну мастерноду этой же монеты, то для этого нужно:

  • Остановить любую мастерноду
  • Скопировать директорию этой мастерноды в директорию со следующим индексом (в нашем примере .dextro06)
  • Запустить новую ноду выполнив файл start из этой директории или использовать wr
  • Прописать индекс (06 вместо 05) в файлы wr и mns
  • Запустить wr или подождать 5 минут – мастерноды запустятся автоматически

 

Для запуска мастернод другой монеты потребуется предварительно настроить файл setup и в дальнейшем для мастернод этой монеты использовать его.

Также просто происходит остановка (навсегда) мастернод: указываем меньший индекс в wr и mns, глушим ненужные мастерноды командами stop в соответствующих директориях.

 

Из практики могу сказать, что для большинства форков на одном сервере одновременно хорошо работают 8 мастернод, иногда 9, реже 10. Есть прожорливые форки которым тесно уже при количестве 7 штук. Рекомендую поднять 5 мастернод, посмотреть на расход памяти, добавлять ноды по одной (можно без активации – просто запустив очередного демона) проверяя расход память и работу в течение длительного периода.

 

Стоимость услуги видится в районе 1000 рублей в любом удобном Вам эквиваленте. Является услугой "под ключ" и не является обучением.

 

Изменено пользователем Serzh Black

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

:- ) В текущей версии реализовано управление мастернодами через Телеграм бота:

  • Перекличка серверов - если обнаружился молчун, то значит он в дауне
  • Получение статуса мастернод и номера блока с любого сервера, подключенного к боту
  • Остановка/запуск конкретной мастерноды на любом из серверов
  • Бонус: выполнение любых команд на сервере через Телеграм бота

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Alex_kr спасибо! из около 40 форков, которые я разворачивал только одна монета не работала на IPV6. Точнее, она запускалась, активировалась и внешне работала, но награды мастерноде не приходили. Это был Versus. Остальные работали без проблем

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Небольшое видео о работе бота. Бот еще сырой и имеет недостатки, но работает и свои функции выполняет.

 

Теперь, получив в телеграм уведомление типа: /Aruba06 ~/dextro The number of blocks is different, достаточно тапнуть на имени сервера, посмотреть в чем там дело и, при необходимости, перезапустить мастерноду, выполнить внешнюю команду или забить на все это хозяйство, допить пиво и утром, если само не рассосалось, открыть терминал

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поднял ноду REOSC. На одногиговом VPS чувствует себя вольготно. Блоки занимают чуть более 300 метров. В памяти поместятся еще две ноды точно. Ради эксперимента запустил одного демона. Работает. Но не активировал

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Демонстрационный бот: https://t.me/Masternodes_maintenance_demo_bot

 

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

 

Команда /start - перекличка серверов подключенных к боту

 

Для исполнения внешних команд на сервере используется следующий синтаксис:

/demoserver >ls

Выполнит команду ls на сервере demoserver

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×