Clover
@PROBTRADINGМинимальные требования
1 CPU x 2 GB RAM x 40 GB HDD | для ноды
8 CPU x 64 GB RAM x 100 GB HDD | для валидатора
Ubuntu 18.04 +
Арендуем сервер на любом удобном сервисе. Сохраняем IP и пароль от VPS.
Я покупаю здесь: vdsina.ru (быстро и дорого), ihor.ru (медленно и дёшево).
При регистрации по моей ссылке 10% скидка на стоимость всех услуг.
Открываем MobaXterm и создаём сессию. Гайд по MobaXterm.
Установка ноды
Знак "$" - обозначение начала новой команды.
Если строка начинается НЕ со знака "$" - значит, это всё ещё продолжение прошлой команды. Копировать "$" в терминал не нужно.
# создаём пользователя и логинимся в новую учётную запись $ sudo adduser clover_node $ usermod -aG sudo clover_node $ sudo su clover_node # обновляем 'базу данных' и скачиваем необходимые зависимости $ cd && sudo apt-get update $ sudo apt-get upgrade -y $ sudo apt install cmake pkg-config libssl-dev git build-essential clang libclang-dev curl libz-dev tmux -y # устанавливаем 'rustup-nightly' $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh #Enter $ source $HOME/.cargo/env $ rustup install nightly-2020-09-25 $ rustup default nightly-2020-09-25 $ rustup target add wasm32-unknown-unknown --toolchain nightly-2020-09-25 # скачиваем и устанавливаем ноду $ git clone https://github.com/clover-network/clover clover $ cd clover $ cargo build --release
# запускаем ноду в 'tmux', не забываем поменять её никнейм $ tmux new -s clover $ ~/clover/target/release/clover --chain specs/clover-cc1-raw.json --ws-external --rpc-cors all --name "NODE_NICKNAME"
Можно найти себя в списке: telemetry.polkadot.io/#list/Clover
Фикс ошибок
Ошибка во время билда кловера:
Открываем в проводнике файл по пути:
/home/clover_node/clover/runtime/src/lib.rs
На 383-ей строке файла меняем значение "u64" на "1337":
Сохраняем изменения и перезапускаем билд:
$ cargo build --release
Валидатор
Устанавливаем расширение polkadot.js (у меня без него не работал сайт).
Переходим на сайт apps.clover.finance, настраиваем сеть Clover:
Создаём 2 аккаунта с названиями: "STASH" и "CONTROLLER":
Сохраняем мнемонику, скачиваем json-файл (загрузка начнётся автоматически).
После создания двух аккаунтов, запрашиваем токены на адрес STASH-аккаунта с данного крана:
Переводим 1 CLV на счёт CONTROLLER-аккаунта:
Переходим во вкладку "Staking", "Account actions", "Stash":
Не забываем выбрать соответствующие аккаунты:
Вводим пароль, подтверждаем транзакцию. Круто, получилось забондить:
Открываем сессию с нашим сервером. Если нода полностью синхронизировалась (это можно посмотреть здесь), то останавливаем её сочетанием клавиш "Ctrl + C":
Выполняем команду, тем самым запуская валидатора:
$ ~/clover/target/release/clover --validator --name "NODE_NICKNAME"
Сворачиваем окно "tmux" сочетанием клавиш "Ctrl + B", отпускаем, "D".
И выполняем очередную команду:
$ curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9933
Мы получили вывод, копируем всё, что в кавычках после "result":
Возвращаемся на сайт, нажимаем "Session Key":
Вставляем наш ключ из терминала и подтверждаем транзакцию:
Супер, нажимаем "Validate":
Выбираем процент комиссии для валидатора и нажимаем "Validate":
Чтобы удостовериться в правильности действий, идём во вкладку "Waiting" и ищем себя по STASH-аккаунту:
Отлично, красота! Мы стали номинатором или кандидатом.
Не валидатор, конечно, но уже неплохо.
Для валидатора, я так полагаю, нужен стейк побольше, но я уточню этот вопрос.