Настройка узла HydraDX

https://commonwealth.im/hydradx/proposal/discussion/1230-treasury-tip-request-lenox-noderunnerscom
Если Вам помогли мои своевременные переводы по проекту HydraDX, поддержите пожалуйста мою заявку на получение наград лайком и комментарием. Спасибо!

В этом разделе вы познакомитесь с процессом настройки и запуска узла HydraDX.

ПРЕДУПРЕЖДЕНИЕ

Для запуска узла валидатора требуется определенный набор технических навыков, необходимых для правильной настройки узла и обеспечения его работоспособности. Если вы не уверены в своих навыках в этой области, мы рекомендуем вам вместо установки собственного узла назначить свой HDX опытному валидатору. Тем самым вы защищаете себя и своих номинантов от непреднамеренной потери средств.

00 Требуемые технические характеристики

Для работы узла валидатора HydraDX требуются как минимум следующие технические характеристики:

  • ОС: Ubuntu 20.04
  • Процессор: Intel Core i7-7700K (или имеющий аналогичные характеристики одного ядра)
  • Память: 64 ГБ RAM
  • Хранилище: твердотельный накопитель NVMe емкостью не менее 200 ГБ (объем данных со временем будет расти)

ПРИМЕЧАНИЕ

Это минимальные технические требования, проверенные командой. Хотите убедиться, что на вашем компьютере достаточно ресурсов для запуска узла? Чтобы узнать это, запустите тест производительности.

01 Проверьте, синхронизированы ли ваши системные часы

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

timedatectl | grep "System clock"

System clock synchronized: yes

Если результат отличается, вы можете установить NTP вручную и еще раз убедиться, что ваши системные часы синхронизированы:

apt install ntp
ntpq -p

02 Настройте параметры брандмауэра

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

Если вы не запускаете узел в качестве валидатора, вы также можете рассмотреть возможность открытия 9944 порта (для соединений RPC websocket с внешними приложениями) и 9933 порта (для HTTP-запросов к вашему узлу). Вы можете использовать порт 9944 для подключения к вашему узлу с помощью Polkadot / apps.

03 Загрузите или соберите бинарный файл

Вы можете скачать бинарный файл с последними обновлениями с нашего github.

Кроме того, вы можете собрать бинарный файл из исходного кода:

# Установите зависимости

$ curl https://getsubstrate.io -sSf | bash -s – --fast

# Получить исходный код последней стабильной версии

git clone https://github.com/galacticcouncil/HydraDX-node -b stable

# Соберите бинарный файл

cd HydraDX-node/
cargo build --release

Если вы создали бинарный файл, выполнив описанные выше шаги, путь к вашему файлу будет следующим:

target/release/hydra-dx

04 Запустите бинарный файл

Вы можете запустить бинарный файл, выполнив следующую команду:

{PATH_TO_YOUR_BINARY} --chain lerna --name {YOUR_NODE_NAME} --validator

ПРИМЕЧАНИЕ

Узлам валидатора требуется база данных всей цепи. Если вы запускали узел раньше без флага --validator, вам нужно будет повторно синхронизировать базу данных, очистив цепочку перед запуском узла.

{PATH_TO_YOUR_BINARY} purge-chain --chain lerna

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

05 Запуск с systemd

Чтобы убедиться, что ваш узел автоматически запускается при перезагрузке компьютера, мы рекомендуем запускать узел HydraDX как процесс systemd. Для этого создайте следующий файл и вставьте его содержимое, заменив переменные, обозначенные как {VARIABLE}:

touch /etc/systemd/system/hydradx-validator.service

и вставляем туда следующее содержимое:

[Unit]
Description=HydraDX validator

[Service]
Type=exec
User={YOUR_SYSTEM_USER}
ExecStart={PATH_TO_YOUR_BINARY} --chain lerna --name {YOUR_NODE_NAME} --validator
Restart=always
RestartSec=120

[Install]
WantedBy=multi-user.target

ПРИМЕЧАНИЕ

Рекомендуется установить RestartSec, поскольку он задерживает перезапуск узла в случае сбоя. Это позволяет записывать на диск любые непостоянные данные (например, консенсусное голосование) до перезапуска узла. Перезапуск узла сразу после его сбоя может вызвать двусмысленность или двойное подписание, что в конечном итоге приведет к слэшингу (slashing).

После создания файла конфигурации вы можете взаимодействовать с узлом валидатора HydraDX как системным процессом:

# Запустить узел при загрузке системы

systemctl enable hydradx-validator.service

# Запустить узел вручную

systemctl start hydradx-validator.service

# Проверить статус узла

systemctl status hydradx-validator.service

# Проверить логи узла

journalctl -f -u hydradx-validator.service

Теперь ваш узел HydraDX настроен и работает!

Теперь вы можете выполнить последние шаги, чтобы начать валидацию.

перевод сделан с оригинальной статьи

PS

Я участвую в проекте в качестве валидатора (держу Ноду), а также помогаю команде и проекту переводя официальную документацию https://docs.hydradx.io/ на русский язык. Я публикую ее на форуме в удобном формате, а также мой перевод добавляют в русскую ветку официальной документации https://docs.hydradx.io/ru/. Переводы постоянно поддерживаются в актуальном состоянии.

Если перевод помогает Вам лучше понять проект и освоить его тонкости, значит работа проделана не зря!

Если вы являетесь держателем токенов HDX и хотите их номинировать, то в качестве одной из Нод Валидаторов могу предложить свою - LENOX | NODERUNNERS.COM

7J9hiaAK51cyDFZkUon4aPSfPGgUPuT1KDBWANeCF4j5avz2

Обязательно проверяйте заполненность Валидаторов перед номинированием (не более 64 номинаторов. Если будет больше - то приоритет будет у тех у кого больше стейк), а также не забывайте номинировать в несколько Валидаторов одновременно (до 16 штук)