Для запуска и работы ноды Harmony нам нужен облачный сервер. Будем использовать решение от Vultr. Можно использовать AWS от Amazon, как это сделано в гайде от команды Harmony, но Vultr просто дешевле (20$ в месяц против 60$ от AWS) и есть возможность получить бесплатные 50$ и запустить ноду вообще без копейки вложений.

Итак, начнем:

  1. Переходим по ссылке https://www.vultr.com/?ref=8214329-4F (моя реф. ссылка, регистрация по которой дает вам бесплатные 50$, можете регистрироваться без реф. ссылки, тогда придется сразу пополнять баланс для работы сервера) и создаем аккаунт нажимая Sign up, вводим почту и пароль.

Открываем свою почту, переходим по ссылке из письма и заполняем свои данные. Ставим галочки, что не хотите платить сейчас, а только подтвердить свою карту. Не бойтесь вводить данные своей карты, с нее сейчас ничего не спишут. Только когда закончатся 50$ бесплатных, тогда уже придется платить 20$ в месяц за содержание ноды.

Если Вы все правильно сделали, у вас готов аккаунт на балансе которого есть 50$ и можно приступать к настройке сервера. Еще 3$ можно получать за подписку на их Твитер и ретвит поста.

2. Заходим в Products и нажимаем Deploy New Server

3. Выбираем Cloud Compute, сервер по своему желанию. Я выбрал Silicon Valley

Server Type выбираем Ubuntu 18.04 x64, Server Size выбираем за 20$ в месяц

4. Далее нас интересует пункт SSH Keys. Нажимаем Add New. Вводим любое имя, например, HarmonyNode, а во второй столбец нужно ввести ключ, который мы получим из программы. Переходим по ссылке https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html и скачиваем и устанавливаем программу PuTTY в зависимости от вашей системы х32 или х64

После установки заходим в Пуск и в программах находим PuTTY и открываем программу PuTTYgen

В программе нажимаем кнопку Generate и крутим мышкой, чтобы сгенерировался ключ.

Ваш ключ готов, копируем ключ из Public key и сохраняем private key у себя на компьютере. Вставляем public key на сайте во второй столбец и сохраняем.

5. Далее нажимаем правой кнопкой на Manage возле SSH Keys и открываем в новой вкладке

Открываем Firewall и нажимаем Add Firewall Group и вводим имя, например, HarmonyNode

Нам нужно открыть 5 портов:

TCP 22

TCP 6000

TCP 9000

TCP 14555

TCP 9999

В результате у Вас должно получиться вот так:

6. Возвращаемся на главную страницу, выбираем везде HarmonyNode (или как Вы называли), в Server Hostname & Label пишем HarmonyNode и нажимаем кнопку Deploy Now

Сервер работает! Переходим к следующему шагу.

7. Открываем через Пуск программу PuTTY

В Host Name вводим root@ip вашего сервера, который копируете из кабинета Vultr

У меня это root@45.77.5.228, у Вас будет свой и нажимаем кнопку Open

Открывается консоль. Вводим apt update && apt upgrade нажимаем enter и ждем пока обновится.

8. Вводим дальше mkdir -p .hmy/keystore

После -p идет пробел, вводите точно как написано. После каждой команды нажимаем enter.

9. Вводим curl -LO https://harmony.one/wallet.sh

10. Вводим chmod +x wallet.sh

11. Вводим ./wallet.sh -d

12. Теперь создаем кошелек Harmony, вводим ./wallet.sh new

Далее вводим пароль (придумываем) и потом подтверждаем пароль, просто вводите пароль, символы в командной строке отображаться не будут, это нормально.

Получаем кошелек, копируем его себе в блокнот.

13. Создаем BLS, вводим ./wallet.sh blsgen

Далее пароль и подтверждаем пароль.

Копируем себе private key и public key. Private key никому не показываем и не отправляем! Это ключ к Вашему кошельку Harmony.

14. Дальше мы наш кошелек и BLS public key отправляем админу Harmony на почту li@harmony.one или ему в Телеграме t.me/lijiang2087 и ждем, пока Ваш адрес добавят в сеть Harmony.

По ссылке https://raw.githubusercontent.com/harmony-one/harmony/master/internal/genesis/foundational.go вы можете проверить, если Ваш адрес или нет. Если есть, тогда делаем следующее.

15. Открываем консоль как в пункте 7.

Вводим tmux new-session -s node

16. Вводим curl -LO https://harmony.one/node.sh

17. Вводим chmod +x node.sh

18. Вводим ./node.sh

Дальше нужно ввести пароль от BLS, который Вы придумали в шаге 13.

Ждем пока наша нода синхронизируется с сетью. Это будет длиться приблизительно 5 часов. Во время синхронизации Вы будете видеть следующее, как на скрине слева. Можно открыть еще одну консоль, не закрывая консоль, где идет синхронизация и периодически набирать команду, чтобы посмотреть, до какого блока дошла синхронизация (скрин справа).

tac latest/zero*.log | grep -m 1 -Eo “\”blockHeight\”\:[0–9]+”

Синхронизация закончится, когда увидите подобное, как на скрине ниже:

На этом все, Ваша нода настроена и приносит дивиденды! Проверить, как Ваша нода участвует в консенсусе можно по команде tail -f latest/validator*.log | grep BINGO

Вы увидите в реальном времени, как Ваша нода подтверждает блоки.

Проверить баланс кошелька можно командой ./wallet.sh balances или прямо в экспорере https://explorer.harmony.one/#/ введя свой кошелек.

Если у Вас возникли трудности или вопросы, то пишите в русскоязычную группу Harmony https://t.me/harmony_one_ru