Установка ноды Masa Finance (НЕАКТУАЛЬНО - ТЕСТНЕТ ПЕРЕНЕСЕН НА 2023)
- Описание проекта
- Автоматическая установка
- Регистрация ноды
- Сохранение ключа nodekey
- Перенос ноды на новый сервер
- Удаление ноды
Описание проекта
Masa — это протокол децентрализованного кредитования, который позволяет физическим и юридическим лицам преодолеть разрыв между CeFi и DeFi для доступа к децентрализованным займам 🌽
Проект получил $3.5M предварительного финансирования. Пишут что нода вознаграждаемая и насыпят в токенах $CORN, который еще не торгуется.
Вознаграждения: вознаграждаемая нода в виде токенов $CORN
Текущая фаза - ожидание запуска 3-ей фазы вознаграждаемого тестнета (ПЕРЕНЕСЕНО НА 2023 ГОД)
Автоматическая установка
Подключаемся к серверу через Putty или MobaXterm, после чего приступаем к установке.
Запускаем автоматический скрипт Masa:
wget -q -O masa.sh https://nodes.wenmoney.io/masa.sh && chmod +x masa.sh && sudo /bin/bash masa.sh
В скрипте после установки будут указаны дальнейшие действия - выполняем их (нужно будет добавить пиров соответствующими командами):
sudo docker exec -it masa-node-v10_masa-node_1 geth attach /qdata/dd/geth.ipc
Добавление пира (вместо BOOTNODE вводите пир):
admin.addPeer('BOOTNODE')
Часть пиров можно добавить отсюда: https://docs.google.com/spreadsheets/d/10i_9yIf15bDKUACAvEwJAu66tw-ZiXJPH08TaoL1qac/edit#gid=1264881235
Если не помогает - идете в Дискорд и ищите там свежие пиры
После добавления пиров чекаем командой (также в GETH-консоли):
net.peerCount
Если это значение больше 1, то нода начнет синхронизацию с сетью.
Проверить статус синхронизации (false - нода либо синхронизиривалась, либо еще не начинала синхронизацию):
eth.syncing
Просмотр информации о состоянии ноды (параметр difficulty должен быть больше 1):
admin.nodeInfo
exit
Остановка ноды (при остановке ноды все пиры удаляются!):
cd ~/masa-node-v1.0 docker-compose down
cd ~/masa-node-v1.0 PRIVATE_CONFIG=ignore docker-compose up -d
Работоспособность ноды проверяется через состояние ноды (важно чтобы difficulty был больше 1), а также через количество подключенных пиров (net.peerCount).
Регистрация ноды
Для регистрации ноды вам необходимо будет зарегистрироваться в личном кабинете, подключить свой свой Metamask и переключиться на сеть Alfajores Testnet.
После регистрации проходим в раздел Node Operators и вводим там EnodeID своей ноды, которая добывается на сервере так (НЕ в geth-консоли):
sudo docker exec -it masa-node-v10_masa-node_1 geth attach /qdata/dd/geth.ipc --exec web3.admin.nodeInfo |grep enode | sed {s/127\.0\.0\.1/`curl -s 2ip.ru`/} | sed "s/^.*\"\(.*\)\".*$/\1/"
Полученное значение вставляем на сайте в поле и нажимаем Register, после чего получим успешное уведомление что нода зарегистрирована.
На скриншоте у меня нода была зарегистрирована еще на 1 этапе тестнета, поэтому отображаются награда за этот этап.
На момент обновление этого гайда личный кабинет немного подглючивает, возможна ситуация когда при добавлении EnodeID у вас он не отобразится в таблице - обещают починить.
Также команда официально подтвердила, что можно регистрировать несколько нод на 1 личный кабинет.
Сохранение ключа nodekey
Ключ от нашей ноды nodekey
находится в директории /var/lib/docker/volumes/masa-node-v10_vol1/_data/dd/geth/
Поэтому необходимо открыть файл через nano
и сохранить ключ себе в блокнот (в будущем - вставить в этот же файл при начале работы следующей фазы):
nano /var/lib/docker/volumes/masa-node-v10_vol1/_data/dd/geth/nodekey
Перенос ноды на новый сервер
Для переноса ноды на другой сервер нам понадобится забрать файл ключа nodekey
из директории /var/lib/docker/volumes/masa-node-v10_vol1/_data/dd/geth/
и перенести на новый сервер по тому же самому пути.
Первоначально нам необходимо установить на новый сервер ноду и запустить ее дабы проверить корректность работы.
Теперь переходим на старый сервер и копируем ключ через scp
командой (там заменяете данные на свои):
scp /var/lib/docker/volumes/masa-node-v10_vol1/_data/dd/geth/nodekey root@NEW_SERVER_IP:/var/lib/docker/volumes/masa-node-v10_vol1/_data/dd/geth/nodekey
То есть заменяем только NEW_SERVER_IP
на IP-адрес нового сервера. После ввода команды система попросит подтверждение, вводим yes
и затем пароль от нового сервера. Далее должно быть копирование ключа на новый сервер:
Чтобы изменения на новом сервере вступили в силу, необходимо перезапустить ноду:
cd ~/masa-node-v1.0 && docker-compose down && PRIVATE_CONFIG=ignore docker-compose up -d
Но так как IP сервера изменился, то необходимо на всякий случай еще раз зарегистрировать свою ноду.
Удаление ноды
Перед удалением ноды не забудьте сохранить свой ключ nodekey. Сначала стопам ноду:
cd ~/masa-node-v1.0 && docker-compose down
Затем смотрим контейнеры с Masa:
sudo docker ps -a
Если остались контейнеры с masa, то их необходимо остановить и удалить вручную
<container-id> заменить на идентификатор текущего контейнера:
sudo docker stop <container-id> sudo docker rm <container-id>
cd ~ rm -rf ~/masa-node-v1.0 sudo docker volume rm masa-node-v10_vol1