Полная Нода (Full Node)

Пошаговая инструкция по запуску полной ноды Umee

Установка

Перед тем, как начать установку, проверьте актуальную версию umeed в официальном репозитории, в соответствующей таблицеarrow-up-right. Там указаны актуальные версии исполняемых файлов, а также ID текущих сетей.

Вы можете выбрать между сборкой umeed из исходного кода или простым скачиванием бинарного файла, подходящего для нужной вам ОС и архитектуры в списке релизовarrow-up-right.

Для установки umeed из исходного кода, убедитесь, что на вашей ОС установлен Golang версии 1.17 или более поздней. Инструкции по установке Go доступны на официальной страницеarrow-up-right.

Когда Go установлен правильно, клонируйте репозиторий Umee и установите бинарный файл:

# Замените vX.Y.Z на подходящую вам версию, например, v1.0.1
$ git clone --depth 1 --branch vX.Y.Z https://github.com/umee-network/umee.git
$ cd umee && make install

После установки удостоверьтесь, что всё работает, проверив версию:

circle-exclamation
$ umeed version

Минимальные Системные Требования

Рекомендуемые системные требования для запуска Umee будут различаться в зависимости от вариантов использования и желаемой функциональности ноды. Например, необходимое количество дискового пространства будет различаться для архивной ноды или для ноды, предоставляющей снэпшоты для быстрой синхронизации. В общем мы рекомендуем минимальные системные требования:

  • 2+ vCPU

  • 4+ GB RAM

  • 120+ GB SSD

Инициализация

Перед тем как запустить ноду нам необходимо пройти процедуру инициализации нашей ноды:

Команда выше создаёт и инициализирует директорию .umee по адресу $HOME по умолчанию. Эта директория содержит необходимые вам файлы для запуска ноды с genesis.json файлом по умолчанию. Вы можете изменить расположение директории .umee, указав при инициализации флаг --home

circle-info

Обратите внимание, что при присоединении к существующей сети указанное значение --chain-id не так важно, так как далее файл genesis.json будет нами заменён.

После инициализации, перезапишите изначальный файл genesis.json, используя файл для выбранной вами сети. Вы сможете найти актуальные genesis.json файлы в нашем репозиторииarrow-up-right или в другом доверенном источнике:

circle-info

Удостоверьтесь, что SHA256 сумма genesis файла совпадает со значением в репозитории Umee.

Конфигурация

Перед стартом вашей ноды, важно удостовериться и изменить конфигурацию, как вам необходимо. Есть три главных конфигурационных файла, которые располагаются в ~/.umee/config :

  • config.toml: Используется для конфигурации Tendermint. Для изучения Tendermint воспользуйтесь официальной документациейarrow-up-right.

  • app.toml: Используется для конфигурации приложения Umee. Он включает такие параметры как размер обрезки (pruning), синхронизация, минимальная комиссия за газ и настройки API/gRPC.

  • client.toml: Используется для конфигурировании с клиентской стороны при использовании приложения umeed для командной строки для взаимодействия с сетью. Эта конфигурация является совершенно необязательной и в основном используется для удобства, чтобы избежать ввода одних и тех же аргументов в команды приложение umeed в командной строке.

И config.toml и app.toml хорошо закомментированы, внутри даны пояснения как изменять те или другие настройки.

Мы рекомендуем как минимум удостовериться и по возможности откорректировать следующие параметры:

  • app.toml

    • minimum-gas-prices: Установите это значение не пустым для того, чтобы нода при процессинге транзакций запрашивала минимальную комиссию и не проводила транзакции бесплатно, например minimum-gas-prices = "0.001uumee". Напомним, что комиссия за транзакцию рассчитана как fee = (tx.gasLimit * tx.gasPrice), поэтому комиссия за транзакцию должна быть как минимум (minimumGasPrice * tx.gasPrice)

    • pruning: По умолчанию приложение будет хранить 362 880 блоков и обрезать оставшиеся. Вам следует изменить это значение, если вы хотите обрезать весь блокчейн (pruning = "everything") или если хотите хранить весь блокчейн (pruning = "nothing")

    • min-retain-blocks: Это значение относится к обрезке блоков Тендерминтом. Оно отличается от pruning, который относится к записям самого приложения. Когда значение не пустое, приложение будет уведомлять Tendermin обрезать блоки, расположенные за значением min-retain-blocks. Помните, что приложение будет требовать минимальное количество блоков, установленное в pruning. Поэтому это поле не должно быть меньше чем pruning.

    • api.enable: Позволяет дать доступ к API (gRPC HTTP gateway) сервису.

    • grpc.enable: Позволяет дать доступ к gRPC сервису.

  • config.toml

    • rpc.laddr: По умолчанию, RPC Tendermint слушает интерфейс на localhost. Если вам необходимо иметь внешний доступ к RPC Tendermint, установите этот параметр на 0.0.0.0 чтобы иметь доступ на всех интерфейсах/IP.

    • p2p.external_address: Установите это значение на публичный и статичный адрес IP вашей ноды. Это поможет удостовериться другим нодам при p2p соединении иметь возможность успешно присоединиться к вашей ноде.

    • p2p.seeds: Пропишите здесь список доступных seed нод. Seed ноды это ноды, которые обменяются с вашей нодой актуальной информацией о пирах, а затем отсоединятся. Оставьте пустым это значение если у вас нет доступных или известных пиров для соединения.

    • p2p.persistent_peers: Укажите здесь список доступных и доверенных пиров.

Cosmovisor И Управление Сервисами

Мы поддерживаем использование systemd в дополнение к cosmovisor, бинарный супервизор сети cosmos для управления вашим umeed.

Для детальных инструкций по установке cosmovisorarrow-up-right, пожалуйста прочтите инструкции по установкеarrow-up-right.

circle-exclamation

Last updated