Настройка для API-ноды
Публичные API-ноды важная составляющая для блокчейна, особенно когда есть заинтересованность в развитии приложений (сервисов, игр, ботов и пр.), которые часто повышают ценность всего проекта.
Ниже описан вариант установки API-ноды (с хранением истории операций за неделю). Для такой, оптимальный вариант - сервер с 16 Гб оперативной памяти и 100 Гб SSD накопителя, Ubuntu 18.04/20.04.
Устанавливаем ноду
Устанавливаем Docker (если его ещё нет).
Скачиваем большую часть блоков напрямую с сервера (чтобы не тратить 2 суток на их получение и лишнюю нагрузку делегатских seed-нод).
Добавляем конфиг ноды (указанные в нём 202800
блоков = неделя). Какие плагины нужны для ваших целей, можно уточнить в чате делегатов https://t.me/golos_witnesses
Запускаем ноду в докер-контейнере.
После загрузки докер-образа и реплея (который занимает несколько часов), с получением логов вида handle_block "Got 0 transactions on block 35071930 by ..."
нода готова к работе.
Устанавливаем Nginx
Добавляем файл для своих настроек Nginx.
Копируем в него правила, предварительно заменив адрес server_name
на свой субдомен/домен (не забыв привязать его в настройках DNS к нашему IP сервера). Бесплатные домены можно зарегистрировать напр. здесь.
Сохраняем изменения Ctrl+O
, подтверждаем Enter
, выходим Ctrl+X
.
Устанавливаем Certbot
После следующей команды потребуется ввести:
E-mail, на который будут отправляться уведомления о необходимости продления сертификата;
Согласиться с правилами сервиса введя
A и Enter
;Отказаться от рассылки
N и Enter
;Подтвердить добавление сертификатов к указанным доменам вводом
Enter
;Отказаться от редиректа, введя
1 и Enter
.
Будут добавлены настройки в файл node.conf
, которые можно перепроверить командой ниже и найти строки с пометкой # managed by Certbot
в конце файла.
Выходим из файла Ctrl+X
.
Перезапускаем Nginx.
Проверяем статус Nginx.
Мы запустили публичную API-ноду, к которой можно подключаться как по адресу https://test.lexai.host
(RPC) так и wss://test.lexai.host/ws
(WebSockets).
Кроме того, если на API-ноду ожидается большое количество запросов, советуем обратить внимание на сервис Jussi, который позволяет перед нодой настроить кеш-слой на базе Redis и Nginx.
При получении письма на e-mail о необходимости обновить сертификат (раз в 90 дней), это можно сделать командой:
Есть вопросы?
Можно уточнить в чате делегатов https://t.me/golos_witnesses
Last updated