Ссылки:
- Web — https://masa.finance/
- Telegram — https://t.me/masafinance
- Discord — https://discord.gg/masafinance
- Twitter — https://twitter.com/getmasafi
- GitHub — https://github.com/masa-finance
Рекомендуем подписаться сразу на все социальные сети проекта для получения последних обновлений. На Discord есть ветка для валидаторов.
Где найти тестнеты, подробно у нас на сайте.
Статус и дополнительная информация
- Статус проекта: Активен
- Даты тестенета: Не анонсировано
- Сложность железа: Слабое
- Сложность установки: Базовая
- Вознаграждение: Не анонсировано
- Лок токенов: Не анонсировано
Системные требования к проекту Masa Finance:
- CPU: 2 cores
- RAM: 4GB
- SSD: 80GB
- OS: Ubuntu 20.04 LTS
Рекомендуем хостинги для установки ноды:
- Hetzner (20$ на счет при регистрации)
- Digital Ocean
- PQ Hosting (можно оплачивать криптой)
- VDSina (можно оплачивать криптой и картой мир)
Что нужно сделать что бы стать валидатором Masa Finance?
- Зарегистрироваться как валидатор (ссылка ниже).
- Установить и проверить на работоспособность ноду (ниже).
- Обновить ноду (ниже).
- Заполнить форму и отправить Enode ID (ссылка ниже).
- Зарегистрироваться на все официальные сети Masa Finance для получение актуальной информации.
Регистрируемся как валидатор проекта Masa
Для регистрации как валидатор, переходим по ссылке.
После отправки почты, вы должны увидеть сообщение You are in!
Добавьте свой Email в WhiteList
Перейдите по ссылке и оставьте свой email.
Аренда VPS сервера для проекта Masa Finance
Мы будем арендовать сервер для проекта Masa Finance на DigitalOcean. Регистрируйтесь по нашей ссылке и получите 100$ на 60 дней.
Регистрация на DigitalOcean
Нажимаем Free credit active … Регистрируемся в платформе.
Выбирайте удобный способ для создания аккаунта. После создания аккаунта, нужно будет подвязать карту для активации аккаунта.
Деньги с карты списываться не будут. Выбираем Add a Card и привязываем свою карту с DigitalOcean. После активации карты, у вас не счету будет 100$.
Вас перекинет на страницу проектов, где у вас скорее всего ничего не будет. Переходим к аренде VPS сервера.
Аренда VPS сервера под Masa Finance
Для аренды VPS сервера на DigitalOcean, нажимаем Create — Droplets (Create cloud server).
Choose an image
Выбираем операционную систему.
Выбираем версию Ubuntu 20.04 LTS.
Choose a plan
Выбираем Basic. В поле CPU options указываем Regular with SSD.
Ниже выбираем железо под требования проекта Masa Finance. Нам нужно минимум 2 ядра, 80 GB SSD, 8 GB RAM. Такой пакет сейчас стоит $20 в месяц.
Add block storage
Тут ничего не указываем.
Choose a datacenter region
Выбираем где будет находится наш сервер, его локацию.
Оставляем по умолчанию.
Authentication
Способ авторизации или входа на сервер.
Способ авторизации оставляем Password. Задаем пароль и сохраняем его.
Finalize and create. How many Droplets? Choose a hostname
Указываем сколько серверов нам нужно и имя сервера. Лучше выбрать что то осознанное, например MasaFinance.
Add tags and Select Project
Финальная стадия аренды VPS сервера на DigitalOcean, это выбор тегов и проекта.
Теги не обязательно, проект будет по умолчанию, если вы не создавали своих.
Нажимаем «Create Droplet».
Процесс создания занимает какое то время. Придется подождать.
После создания VPS сервера, переходим на него.
Заходим в консоль сервера. Имя пользователя root. Пароль который вы указали.
Ссылка на список команда — https://github.com/setar/masa-node-v1.0/blob/main/masa-node_service_ru.md
Как установить ноду Masa Finance
Команды вставляем правой кнопкой мыши в консоль. Копируем команды по одной строчке. Команда закончит выполнение, когда вы увидите строку root@имя вашего проекта: ~. Ждите эту строчку, не спешите.
Обновляем Ubuntu
sudo apt-get update && sudo apt-get upgrade -y
Оставляем Keep the local version currently installed.
Устанавливаем полезные пакеты
sudo apt install apt-transport-https net-tools git mc sysstat atop curl tar wget clang pkg-config libssl-dev jq build-essential make ncdu -y
Создаем пользователя masa
sudo addgroup p2p
sudo adduser masa --ingroup p2p --disabled-password --disabled-login --shell /usr/sbin/nologin --gecos ""
Install GO 1.17.5
ver="1.17.5"
cd ~
wget --inet4-only "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> ~/.profile
source ~/.profile
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >>
/home/masa/.profile
Собираем бинарные пакеты ноды
sudo su masa -s /bin/bash
cd ~
source ~/.profile
git clone https://github.com/masa-finance/masa-node-v1.0
cd masa-node-v1.0/src
make all
exit
Устанавливаем бинарные пакеты в систему
sudo -i
cp /home/masa/masa-node-v1.0/src/build/bin/* /usr/local/bin
exit
Инициализация ноды
sudo su masa -s /bin/bash
cd ~
source ~/.profile
cd $HOME/masa-node-v1.0
geth --datadir data init ./network/testnet/genesis.json
exit
Cоздаем сервис (сменить NODE_NAME на уникальное, не использовать пробел < > |)
sudo -i
NODE_NAME="Измени-имя_ноды"
!!! в следующем блоке имя ноды не меняем
Вставляем и исполняем первую строчку. А все что от [Unit] до Exit вставляем один копипастом.
tee /etc/systemd/system/masad.service > /dev/null <<EOF
[Unit]
Description=MASA
After=network.target
[Service]
Type=simple
User=masa
ExecStart=/usr/local/bin/geth \\
--identity ${NODE_NAME} \\
--datadir /home/masa/masa-node-v1.0/data \\
--bootnodes "enode://7612454dd41a6d13138b565a9e14a35bef4804204d92e751cfe2625648666b703525d821f34ffc198fac0d669a12d5f47e7cf15de4ebe65f39822a2523a576c4@81.29.137.40:30300" \\
--emitcheckpoints \\
--istanbul.blockperiod 10 \\
--mine \\
--miner.threads 1 \\
--syncmode full \\
--verbosity 5 \\
--networkid 190260 \\
--rpc \\
--rpccorsdomain "*" \\
--rpcvhosts "*" \\
--rpcaddr 127.0.0.1 \\
--rpcport 8545 \\
--rpcapi admin,db,eth,debug,miner,net,shh,txpool,personal,web3,quorum,istanbul \\
--port 30300
Restart=on-failure
RestartSec=10
LimitNOFILE=4096
Environment="PRIVATE_CONFIG=ignore"
[Install]
WantedBy=multi-user.target
EOF
exit
Запуск сервиса, включение автозагрузки и проверка статуса
sudo systemctl daemon-reload
sudo systemctl enable masad
sudo systemctl restart masad
sudo systemctl status masad
Готово, нода Masa Finance установлена! Для выхода в root нажимаем CTR+C.
Работа с нодой Masa
Проверка логов
Вариант 1 — полный лог
journalctl -u masad -f
Вариант 2 — лог с фильтром
journalctl -u masad -f |grep "new block"
Выход из просмотра логов по Ctrl+c
Так запускается консоль управления нодой (geth консоль)
geth attach ipc:/home/masa/masa-node-v1.0/data/geth.ipc
После того, как мы попали в Geth JavaScript console!, мы можем выполнить нижеперечисленные команды для проверки работы ноды.
Примеры команд geth консоли.
Каталог ноды (там и вся цепочка хранится и конфиги ноды с ключами и кошельки)
admin.datadir
Проверка подключения к сети (верный ответ true)
net.listening
Проверка числа активных подключений (верный ответ больше нуля)
net.peerCount
Смотрим сколько подключений к ноде. У нас показывает 17, значит все работает хорошо.
Проверка нахождения в состоянии синхронизации
Проверка нахождения в состоянии синхронизации (верный ответ false, но он бывает как в полном начале когда еще ничего не скачано, так и в случае полной синхронизации с сетью). В процессе выдает увеличивающиеся значения первой строки до совпадения со второй.
eth.syncing
Видим сколько блоков всего и высоту самого высокого блока. Значит все хорошо.
Проверка общего состояния нод
Проверка общего состояния ноды (Смотрим на строку difficulty: , она должна быть больше еденицы и равна текущему блоку. текущий блок можно спросить у коллег).
admin.nodeInfo
Посмотрите что бы было прописано имя вашей ноды.
Полный перечень всех подключений (короткий список)
admin.peers.forEach(function(value){console.log(value.network.remoteAddress+"\t"+value.name)})
Полный перечень всех подключений (длинный список)
admin.peers
Выйти из geth консоли можно комбинацией CTR+D. Периодически нужно проверять что нода работает.
Update Masa Node to Release v1.03-testnet.2.0
Обновляем ноду до релиза 1.03.
systemctl stop masad
sudo su masa -s /bin/bash
Удаляем прежнюю цепочку монеты и ранее собранные бинарные пакеты. Затем обновим репозитарий
. ~/.profile
cd ~/masa-node-v1.0
find data/geth/* -type f -not -name 'nodekey' -delete
rm -f src/build/bin/*
git pull
Собираем бинарные пакеты
cd ~/masa-node-v1.0/src
make all
exit
Устанавливаем бинарные пакеты в систему
sudo -i
cp -f /home/masa/masa-node-v1.0/src/build/bin/* /usr/local/bin
exit
Инициализация ноды
sudo su masa -s /bin/bash
cd ~
source ~/.profile
cd $HOME/masa-node-v1.0
geth --datadir data init ./network/testnet/genesis.json
exit
Обновим файл сервиса (сменить NODE_NAME на уникальное, не использовать пробел < > |)
sudo -i
NODE_NAME="Измени-имя_ноды"
!!! в следующем блоке имя ноды не меняем
Выполняем первую строчку. Далее копируем все от [Unit] до Exit и выполняем.
tee /etc/systemd/system/masad.service > /dev/null <<EOF
[Unit]
Description=MASA
After=network.target
[Service]
Type=simple
User=masa
ExecStart=/usr/local/bin/geth \\
--identity ${NODE_NAME} \\
--datadir /home/masa/masa-node-v1.0/data \\
--bootnodes "enode://7612454dd41a6d13138b565a9e14a35bef4804204d92e751cfe2625648666b703525d821f34ffc198fac0d669a12d5f47e7cf15de4ebe65f39822a2523a576c4@81.29.137.40:30300" \\
--emitcheckpoints \\
--istanbul.blockperiod 10 \\
--mine \\
--miner.threads 1 \\
--syncmode full \\
--verbosity 5 \\
--networkid 190260 \\
--rpc \\
--rpccorsdomain "*" \\
--rpcvhosts "*" \\
--rpcaddr 127.0.0.1 \\
--rpcport 8545 \\
--rpcapi admin,db,eth,debug,miner,net,shh,txpool,personal,web3,quorum,istanbul \\
--port 30300
Restart=on-failure
RestartSec=10
LimitNOFILE=4096
Environment="PRIVATE_CONFIG=ignore"
[Install]
WantedBy=multi-user.target
EOF
exit
Запуск сервиса, включение автозагрузки и проверка статуса
sudo systemctl daemon-reload
sudo systemctl enable masad
sudo systemctl restart masad
sudo systemctl status masad
Готово, нода Masa обновлена!
Опциональный тюнинг системы
Удаляем снапы из системы (опционально)
snap list
snap remove lxd
snap remove core18
snap remove snapd
apt purge snapd
rm -rf ~/snap
rm -rf /home/chia/snap
rm -rf /var/snap
rm -rf /var/lib/snapd
Удалить привязку к облаку (опционально)
sudo touch /etc/cloud/cloud-init.disabled
Выключить все флажки кроме последноего «None»
dpkg-reconfigure cloud-init
sudo apt-get purge cloud-init
sudo rm -rf /etc/cloud/ && sudo rm -rf /var/lib/cloud/
Тут внимательно — будет перезагрузка (отвязка от облачных сервисов требует перезагрузки).
sudo reboot
Выключить автоапгрейд (опционально)
sudo systemctl mask unattended-upgrades.service
sudo systemctl stop unattended-upgrades.service
Статус строка screen (опционально)
echo "hardstatus alwayslastline
hardstatus string '%{gk}[ %{G}%H %{g}][%{= kw}%-w%{= BW}%n %t%{-}%+w\][%= %{=b kR}(%{W} %h%?(%u)%?%{=b kR} )%{= kw}%=][%{Y}%l%{g}]%{=b C}[ %d.%m.%Y %c:%s ]%{W}'
defscrollback 10000
" > ~/.screenrc
Подключаем синхронизацию времени
timedatectl list-timezones
# тут смотрим вывод и выбираем свою зону timedatectl set-timezone Europe/Moscow
# задаем выбранную
apt-get install ntp
sntp --version
sntp 4.2.8p12@1.3728-o (1)
nano /etc/ntp.conf
Произвести вот такие правки
# pool 0.ubuntu.pool.ntp.org iburst
# pool 1.ubuntu.pool.ntp.org iburst
# pool 2.ubuntu.pool.ntp.org iburst
# pool 3.ubuntu.pool.ntp.org iburst
server 0.ru.pool.ntp.org
server 1.ru.pool.ntp.org
server 2.ru.pool.ntp.org
server 3.ru.pool.ntp.org
service ntp restart
service ntp status
systemctl enable ntp
ntpq -p
Регистрация валидатора в Masa
После запуска ноды, нужно зарегистрировать Node ID по ссылке.
Где взять Node enode ID?
Переходим в консоль. Выполняем команду:
geth attach ipc:/home/masa/masa-node-v1.0/data/geth.ipc
admin.nodeInfo
Смотрим Node enode ID.
Копируем ID ноды и вставляем в форму. Копируем все что после enode:// …. enode://494ab3e9c506b52a1dceaeca8f98b1578bed397daaf60b91446b09ebad0faf320feebe643eb5a876e6e42006e4a2554bf8d5d20512195904a63b45fabbd4e6a9@178.62.237.122:30300
Копируйте свою ноду и вставляйте в форму.
Подписывайтесь на официальные каналы проекта. Особенно Discord.
Testnet 2.0: Phase 2
1.06.2022 запустился второй этап тестнета. Для держателей ноды, нужно заполнить форму.
Это нужно сделать до 9.09.2022.
Рекомендуем хостинги для установки ноды:
- Hetzner (20$ на счет при регистрации)
- Digital Ocean
- PQ Hosting (можно оплачивать криптой)
- VDSina (можно оплачивать криптой и картой мир)