Cover photo

Запускаем ноду Massa

Сегодня установим ноду Massa.

Если собрать 200 очков за оставшиеся 3 эпохи, можно получить награду в тестнете. Начало 19 июня.

Итак, начнем! Теперь нам нужен виртуальный сервер. Я взял VPS на Hetzner, но можно на других. Ссылки ниже:

Hetzner – самый дешевый и популярный хостинг, даст 20евро на старте.
PQHosting - Отечественный хостинг, здесь берите лучше зарубежный Ip-адрес для безопасности.
DigitalOcean – хостинг, который хорош на старте. Дает 200$ бесплатно.
Vultr – хорошие ноды. Сервис дает 100$ новым пользователям. Хорош для тестирования

На Hetzner я взял CPX31, он подходит по системным требованиям.

Панель выбора конфигурации сервера в Hetzner
Панель выбора конфигурации сервера в Hetzner

Теперь нам нужен клиент для удаленного доступа SSH к нашему серверу. Я скачал Putty, но можно любой другой.

Скачать Putty.

Когда мы создали сервер нам предоставили на почту логин и пароль от него, а также ip-адрес. IP заносим в Putty, сохраняем и жмем Open.

Консоль Putty
Консоль Putty

Вводим логин, вводим пароль. (Они пришли к вам, на указанную при регистрации на Hetzner, почту) Система предложит сменить пароль. Теперь все ок:

Обновление паролей на серваке
Обновление паролей на серваке

1. Установка ноды

Далее, выполняем команды по порядку. Сначала скачиваем готовые бинарники с Гитхаба:

wget https://github.com/massalabs/massa/releases/download/TEST.24.1/massa_TEST.24.1_release_linux.tar.gz
Процесс скачивания бинарников
Процесс скачивания бинарников

И распаковываем скачанный архив:

tar zxvf massa_TEST.24.1_release_linux.tar.gz
Распаковка архива
Распаковка архива

Поздравляем! Вы установили ноду!

Перед запуском ноды давайте пропишем ip-адрес вашего сервера в файл конфигурации. (Блок кода расположенный ниже нужно скопировать и вставить в командной строке сразу весь, не построчно!):

sudo tee <<EOF >/dev/null $HOME/massa/massa-node/config/config.toml
[protocol]
routable_ip = "wget -qO- icanhazip.com"
EOF

2. Запуск ноды

Запускаем ноду, придумываем пароль:

cd $HOME/massa/massa-node/ && ./massa-node
Логи работающей ноды
Логи работающей ноды

Нода запустилась, но не расслабляемся.Останавливаем ноду командой Ctrl+С. У меня, кстати, полностью не остановилась, пришлось выходить из консоли и заходить по новой.

Создадим сервисный файл для того что бы ваша нода не останавливалась после закрытия терминала. Слово <ВАШ_ПАРОЛЬ>, и другие слова выделенные скобками <>, заменяйте на свои данные. В данном случае, это тот пароль, который вы только что придумали.

(Блок ниже нужно скопировать в «Блокнот», заменить слово <ВАШ_ПАРОЛЬ> на пароль и вставить целиком в командную строку, но не построчно):

printf "[Unit]
Description=Massa Node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/massa/massa-node
ExecStart=$HOME/massa/massa-node/massa-node -p <ВАШ_ПАРОЛЬ>
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target" > /etc/systemd/system/massad.service

Перезапускаем ноду из сервисного файла:

sudo systemctl daemon-reload
sudo systemctl enable massad
sudo systemctl stop massad && sudo systemctl start massad

Проверяем логи. Если появилось примерно то, что на картинке ниже, то нода работает нормально :

sudo journalctl -f -n 100 -u massad
Правильные логи ноды
Правильные логи ноды

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

3. Запуск клиента. Генерация кошелька

Теперь запускаем клиент. В первый раз он как и нода тоже потребует придумать пароль:

cd $HOME/massa/massa-client/ && ./massa-client
Окно клиента Massa
Окно клиента Massa

Далее генерируем новый кошелек со всеми ключами. Для этого вводим команду:

4. Настройка стейкинга. Покупка роллов

Зарегистрируем кошелек для стейкинга - вводим: wallet_info

Адрес кошелька
Адрес кошелька

Для регистрации копируем адрес из строки Address и добавляем его в команду ниже для стейкинга:

node_start_staking <ваш адрес кошелька>

Проверяем что адрес кошелька попал в стейкинг (верхняя строка в скриншоте ниже):

Выходим из клиента набрав команду Ctrl+C. Проверяем что нода в порядке:

cd /$HOME/massa/massa-client/ && ./massa-client wallet_info
Если все ок, картинка будет примерно такая
Если все ок, картинка будет примерно такая

Переходим в Дискорд Massa, в раздел #testnet_faucet и запрашиваем монеты кошелька введя адрес кошелька:

Запрашиваем токены в боте testnet_faucet
Запрашиваем токены в боте testnet_faucet

Проверяем, что токены пришли:

cd /$HOME/massa/massa-client/ && ./massa-client -p <ВАШ_ПАРОЛЬ> wallet_info                      

Заходим в клиент:

cd /$HOME/massa/massa-client/ && ./massa-client -p <ВАШ_ПАРОЛЬ>

В клиенте покупаем ролл следующей командой:

buy_rolls <адрес_вашего_кошелька> 1 0

Например: buy_rolls AU12GoSDG9QeWceUtPvF8D7fadc452bcaG9QeWc 1 0

Не выходим из клиента и даем команду wallet_info. Убеждаемся, что ролл купился:

Токены на кошельке и купленный ролл
Токены на кошельке и купленный ролл

Примерно через 1:40 часа ролл станет активный и начнется стейкинг монеток. (не рекомендуется делать больше 1 ролла, доп. наград не будет, а будет только хуже)

Регистрация ноды в Дискорде:

Нам нужен ip-адрес сервера, его смотрим командой в консоли:

wget -qO– eth0.me

Теперь переходим в Дискорд в ветку #testnet-rewards-registration и жмем реакция к первому посту. Вам напишет MassaBot. Ему отправляем ваш Ip-адрес.

Регистрация бота MassaBot
Регистрация бота MassaBot

Сейчас будем регистрировать саму ноду. Нам понадобится user_id (account ID) – первая замазанная цифра на скришноте. Копируем его и возвращаемся на сервер.

Снова запускаем наш клиент:

cd /$HOME/massa/massa-client/ && ./massa-client -p <ВАШ_ПАРОЛЬ>

В клиенте даем следующую команду:

node_testnet_rewards_program_ownership_proof <адрес кошелька>  <id из дискорда>

В нашем примере команда должна будет выглядеть примерно так: node_testnet_rewards_program_ownership_proof AU12GoSDG9QeWceUtPvF8D7fadc452bcaG9QeWc 636779357981237884264

В ответ вы получите очень длинный ключ, который нужно скопировать и вставить в Discord, в MassaBot.

Длинный ключ для связи Дискорда с нодой
Длинный ключ для связи Дискорда с нодой

Введите команду info в MassaBot. Он должен будет выдать ваши Node ID, Staking Address и IP address, которые должны совпадать с данными в ноде.

Можно проверить совпадение Node ID и IP Address по команде:

cd /$HOME/massa/massa-client/ && ./massa-client -p <BAШ_ПАРОЛЬ> get_status

На этом установка ноды закончена. Награды можно смотреть в боте.

Чтобы посмотреть свои награды вводим команду:

cd /$HOME/massa/massa-client/ && ./massa-client

Затем вводим команду:

get_addresses <ваш_адрес>
Проверка обработки блоков
Проверка обработки блоков

Обновление ноды

Для начала нужно удалить старую ноду и весь мусор, для этого создадим папку для бэкапа: mkdir -v $HOME/massa_backup

Мы создали папку. Командой ls проверили что она появилась
Мы создали папку. Командой ls проверили что она появилась

И скопируем ключи от кошелька этими командами:

cp $HOME/massa/massa-node/config/node_privkey.key $HOME/massa_backup/node_privkey.key
cp $HOME/massa/massa-client/wallet.dat $HOME/massa_backup/wallet.dat

И смело удаляем старую ноду:

sudo systemctl stop massad
rm -rf $HOME/massa
rm -rf /etc/systemd/system/massad.service
rm -rf /etc/systemd/system/multi-user.target.wants/massad.service
При удалении кажется что ничего не произошло, но ноды больше нет
При удалении кажется что ничего не произошло, но ноды больше нет

Возвращаемся к пункту 1 этого гайда (пункт 2 делать не нужно) с установкой бинарников.

Дальше возвращаем ключи домой:

cp $HOME/massa_backup/node_privkey.key $HOME/massa/massa-node/config/node_privkey.key
cp $HOME/massa_backup/wallet.dat $HOME/massa/massa-client/wallet.dat

И делаем рестарт ноды:

Переходим к пункту 4. Покупка роллов и настройка стейкинга, и синхронизируем ноду с Дискорд-ботом.

Все!

Подписывайтесь на нас, здесь будут новые интересные активности!

Subscribe