MainMet
November 3, 2024

Руководство по установке валидатора Elixir Mainnet


Гайды. Ноды. Тестнеты | Teletype "OdaNoder" | Mirror "OdaNoder" | Telegram группа


Оглавление:

Быстрая установка с использованием скриптов

Ручная установка

Обновление валидатора


Подготовка оборудования

Рекомендуемые требования:

  • Оперативная память: 8 ГБ.
  • Скорость интернета: стабильное подключение на 100 Мбит/с.
  • Хранилище: 100 ГБ свободного места.

Быстрая установка с использованием скриптов

С таким скриптом вам не придется вручную выполнять каждый шаг: он автоматизирует все необходимые действия, включая ввод параметров, настройку Docker Compose и выдачу готовых команд для управления.

Шаг 1: Установка Docker и Docker Compose

sudo apt update
sudo apt install curl wget git nano htop tree net-tools openssh-server npm -y
bash <(curl -s https://raw.githubusercontent.com/odanoder/scripts/refs/heads/main/docker/docker_compose_ru_off.sh)
bash <(curl -s https://raw.githubusercontent.com/odanoder/scripts/refs/heads/main/docker/add_user_docker_ru.sh)

Выходим из текущей сессии (выполнить повторную авторизацию под нашим пользователем).

Шаг 2: Генерация приватного ключа валидатора

Для валидатора потребуется кошелек, предназначенный только для этой задачи. Для генерации приватного ключа используйте MetaMask:

  • Создайте новый аккаунт в MetaMask: нажмите значок «My Accounts», затем «+ Create Account».
  • Скопируйте приватный ключ: откройте меню «Account Details», нажмите «Export private key».
Внимание: Используйте этот кошелек только для работы валидатора!

Шаг 3: Установка самого валидатора

После того как был установлен Docker и Docker Compose выполняем этот скрипт

bash <(curl -s https://raw.githubusercontent.com/odanoder/networks/refs/heads/main/elixir/elixir_mainnet_install_ru.sh)

Теперь ваш валидатор Elixir настроен и работает, поддерживая основную сеть.


Ручная установка

Руководство по установке валидатора Elixir Mainnet вручную с использованием Docker Compose

Это руководство поможет вам настроить и запустить валидатор на основной сети Elixir для поддержки сети и заработка вознаграждений.

Шаг 1: Установка Docker и Docker Compose

bash <(curl -s https://raw.githubusercontent.com/odanoder/scripts/refs/heads/main/docker/docker_compose_ru_off.sh)
bash <(curl -s https://raw.githubusercontent.com/odanoder/scripts/refs/heads/main/docker/add_user_docker_ru.sh)

Выходим из текущей сессии (выполнить повторную авторизацию под нашим пользователем).

Шаг 2: Генерация приватного ключа валидатора

Для валидатора потребуется кошелек, предназначенный только для этой задачи. Для генерации приватного ключа используйте MetaMask:

  • Создайте новый аккаунт в MetaMask: нажмите значок «My Accounts», затем «+ Create Account».
  • Скопируйте приватный ключ: откройте меню «Account Details», нажмите «Export private key».
Внимание: Используйте этот кошелек только для работы валидатора!

Шаг 3: Настройка валидатора

 cd $HOME && mkdir elixir && cd elixir

Создайте файл validator.env для настроек валидатора:

STRATEGY_EXECUTOR_DISPLAY_NAME=YourValidatorName
STRATEGY_EXECUTOR_BENEFICIARY=YourWalletAddres
SIGNER_PRIVATE_KEY=YourPrivateKeyWithout0x

STRATEGY_EXECUTOR_DISPLAY_NAME — Название валидатора, которое будет отображаться в сети Elixir.
STRATEGY_EXECUTOR_BENEFICIARY — Адрес кошелька для получения вознаграждений.
SIGNER_PRIVATE_KEY — Приватный ключ кошелька (без префикса 0x).
nano validator.env

Вставить в фаил validator.env приведенный ниже текст, подставив свои значения.

ОбъяснениеNAME_NODE_ELIXIR - Название валидатора, которое будет отображаться в сети Elixir.MY_ADDRESS_REWARD - Адрес кошелька для получения вознаграждений.VALIDATOR_PRIVATE_KEY - Приватный ключ кошелька (без префикса 0x)
# Valid environments are "prod" and "testnet"
ENV=prod

# Allowed characters A-Z, a-z, 0-9, _, -, and space
STRATEGY_EXECUTOR_DISPLAY_NAME=NAME_NODE_ELIXIR

# The Ethereum address to receive ELX rewards for this validator
STRATEGY_EXECUTOR_BENEFICIARY=MY_ADDRESS_REWARD

# A private key used only for this validator. Note: Does not begin with "0x"
SIGNER_PRIVATE_KEY=VALIDATOR_PRIVATE_KEY

Пример как должен выглядеть фаил validator.env

ENV=prod

STRATEGY_EXECUTOR_DISPLAY_NAME=MyNodeName
STRATEGY_EXECUTOR_BENEFICIARY=0xe10C191F857529295823C3743AfeA26AE9a3a00b
SIGNER_PRIVATE_KEY=e412ab1b5c2c0d5c04d6d0d46e478c67ed46f78c5e65d1ed4ac70f56e9655d30

Шаг 5: Настройка Docker Compose для запуска валидатора

Создайте файл Docker Compose: Создайте файл docker-compose.yml в рабочей директории с таким содержанием:

cd $HOME/elixir && nano docker-compose.yml

Приведенный ниже текст скопировать в фаил docker-compose.yml

version: '3'
services:
  elixir-validator:
    image: elixirprotocol/validator
    container_name: elixir
    env_file:
      - ./validator.env
    restart: always
    ports:
      - "17690:17690"  # для мониторинга состояния и метрик

Эта команда запустит валидатор в фоновом режиме. Контейнер настроен для автоматического перезапуска при сбоях.

docker compose up -d

Мониторинг и проверка состояния

После запуска можно проверить статус контейнера и просмотреть логи:

docker ps  # для проверки запущенных контейнеров
docker logs -f elixir  # для просмотра логов в реальном времени

Чтобы проверить состояние валидатора и метрики, откройте в браузере:


Обновление валидатора (если вышло новое обновление)

По мере обновлений от команды Elixir вам потребуется обновлять Docker-образ:

  1. Остановите и удалите контейнер:docker kill elixir docker rm elixir
  2. Скачайте обновленную версию образа:cd $HOME/elixir && docker pull elixirprotocol/validator
  3. Перезапустите контейнер:cd $HOME/elixir && docker compose up -d

Теперь ваш валидатор Elixir настроен и работает, поддерживая основную сеть.