Установка ноды STARKNET
Здравствуйте, здесь мы расскажем об установке ноды STARKNET.
В первую очередь нам понадобится сервер с ОС Ubuntu 20.04, нода нетребовательна и хватит минимальной конфигурации сервера 2 процессорных ядра, 2 гигабайта оперативной памяти и SSD емкостью от 1 ТБ.
Итак сервер у нас есть, подключаемся к нему через терминал (использовать можно какой кому удобно).
По завершении процесса устанавливаем необходимые пакеты:
sudo apt install curl git build-essential libssl-dev libffi-dev libgmp-dev pkg-config protobuf-compiler libzstd-dev -y
После установки пакетов ставим Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
когда скрипт запросит выбор нажимаем 1(default)
после выполнения последняя строка будет выглядеть примерно так:
stable-x86_64-unknown-linux-gnu updated - rustc 1.62.1 (e092d0b6b 2022-07-16)
версия 1.72.0 актуальна на момент написания
На текущий момент для работы ноды python больше не нужен !!!
Далее клонируем репозиторий с github:
git clone --branch v0.10.3 https://github.com/eqlabs/pathfinder.git
Сборка занимает минут 10, после окончания нам нужно сделать аккаунт на сайте Alchemy.com
Для этого переходим по ссылке в верхнем правом углу нажимаем "Login"
После этого в открывшемся окне нажимаем "Singup" входим под аккаунтом Google, либо вводим данные и регистрируемся
После этого на указанный email будет отправлено письмо с подтверждением
Проверяем почту, в письме нажимаем кнопку подтверждения, переходим по ссылке, и в открывшемся окне нажимаем кнопку "Get Started"
Далее заполняем данные и жмем "Create App" в поле "Team Name" пишем имя ваше или команды, в поле "App Name" пишем как будет называться ваша нода (исключительно для вашего удобства).
Далее выбираем тарифный план (по умолчанию FREE), и жмем "Continue"
Попросит ввести платежные данные, отказываемся от этого нажав "Skip for now"
Далее предложит твитнуть за вознаграждение, на ваше усмотрение, мы жмем "Skip for now"
И вот мы практически у цели в новом окне жмем "Continue"
Но не тут то было, нас просят указать как можно связаться в мессенджерах и прочее, по желанию можно ввести, а можно нажать "Let`s Go" и мы у цели.
В открывшемся окне нас интересует поле "Api Key"
Копируем данные из этого поля, именно они нужны будут для запуска ноды
Делаем сервис файл и запускаем ноду ( фразу API _KEY - заменить на свой, сгенерированный ключ )
sudo tee /etc/systemd/system/starknetd.service > /dev/null <<EOF [Unit] Description=StarkNet After=network.target [Service] Type=simple User=root WorkingDirectory=/root/pathfinder ExecStart=/root/.cargo/bin/cargo run --release --bin pathfinder -- --ethereum.url https://eth-mainnet.alchemyapi.io/v2/API_KEY Restart=always RestartSec=10 Environment=RUST_BACKTRACE=1 [Install] WantedBy=multi-user.target EOF
sudo systemctl daemon-reload sudo systemctl enable starknetd sudo systemctl start starknetd journalctl -u starknetd -f -o cat
После этого любуемся идущей синхронизацией, на момент написания было 1500 блоков. Далее возвращаемся на сайт и нажимаем на наш APP
В открывшемся окне смотрим, если цифры пошли то все хорошо и ваша нода обменивается данными.
Далее в официальном Дискорде в ветке #🛰-pathfinder-full-node хвастаемся что мы запустили ноду и она работает.
После этого остается только следить за работоспособностью ноды, новостями и ждать.
Дополнение связанное с некоторыми вопросами: когда вы снова подключились к серверу, после закрытия терминала, что бы увидеть статус синхронизации введите команду
С версии 0.9.0 старая база не поддерживается, для обновления базы под новую версию необходимо либо удалить старую базу и запустить синхронизацию заново, или удалить старую базу и скачать офф. снапшот. Так же при обновлении нужно обновить пакеты
sudo apt install curl git build-essential libssl-dev libffi-dev libgmp-dev pkg-config protobuf-compiler libzstd-dev -y
Вышло обновление pathfinder до v0.10.3 для новой установки в гайде все исправлено, для обновления сделайте следующее
sudo systemctl stop starknetd cd pathfinder git fetch git checkout v0.10.3 cargo build --release --bin pathfinder
Что бы увидеть статус синхронизации введите команду
Большое спасибо, за внимание и уделенное время
Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms