Повна нода

Детальний покроковий посібник з запуску повної ноди Umee

Установка

Перш ніж продовжити, обов'язково зверніться до репозиторія Umee, щоб перевірити, яка версія umeed потрібна для мережі, в якій ви хочете запустити свою ноду, а також ID ланцюжка.

Оператори можуть вибрати або установку двійкового файлу umeed з вихідного коду, або завантаження випуску для вашої конкретної ОС і архітектури зі сторінки випусків.

Щоб встановити двійковий файл umeed з вихідного коду, спочатку переконайтеся, що встановили Golang 1.17+ на вашу операційну систему. Зверніться до сторінки установки для отримання інструкцій про те, як правильно встановити і налаштувати вашу базу.

Як тільки ви правильно налаштуєте свою базу, клонуйте репозиторій Umee і встановіть двійковий файл:

# Replace vX.Y.Z with the relevant release version, e.g. v1.0.1
$ git clone --depth 1 --branch vX.Y.Z https://github.com/umee-network/umee.git
$ cd umee && make install

Після цього перевірте свою версію umeed:

Переконайтеся, що ви використовуєте версію v1.0.2 до тих пір, поки ваш вузол не буде синхронізований з блоком 24615, потім вам слід перейти на версію v1.0.3.

$ umeed version

Вимоги до обладнання

Рекомендоване обладнання для запуску ноди Umee буде варіюватися в залежності від варіанту використання і бажаних функціональних можливостей вузла. Наприклад, може знадобитися значний обсяг дискового простору, якщо нода буде діяти як вузол архіву, тобто pruning=nothing, або якщо нода є постачальником моментальних знімків синхронізації стану. В цілому, ми рекомендуємо, як мінімум, наступні технічні характеристики:

  • 2+ vCPU

  • 4 + GB RAM

  • 120+ GB SSD

Ініціалізація

Перш ніж ми зможемо запустити процес umeed, ми повинні спочатку ініціалізувати нашу ноду:

# Replace moniker with your desired node's moniker and the chain ID
# of the network you are joining.
$ umeed init <moniker> --chain-id <chain-id>

Наведена вище команда створює та ініціалізує каталог .umee у вашому $HOME шляху за замовчуванням. Цей каталог містить всі файли конфігурації, необхідні для запуску вашої ноди, а також файл genesis.json за замовчуванням. Ви можете перезаписати розташування каталогу .umee, вказавши прапорець --home.

Зверніть увагу, що при підключенні до існуючої мережі надане значення -- chain-id не є важливим, так як ви все одно будете замінювати автоматично згенерований genesis.json.

Після ініціалізації перезапишіть файл genesis.json за замовчуванням файлом стану genesis для конкретної мережі, до якої ви приєднуєтеся. Ви можете отримати файл стану genesis з репозиторія Umee або іншого надійного джерела:

$ cd ~/.umee/config
$ wget https://raw.githubusercontent.com/umee-network/umee/main/.../genesis.json

Обов'язково звірте суму файлу genesis SHA256 з тим, що зазначено в репозиторії Umee.

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

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

  • config.toml: використовується для налаштування Tendermint. Дізнайтеся більше про конфігурацію Tendermint.

  • app.toml: використовується для налаштування Програми Umee. Це включає в себе такі конфігурації, як обрізка додатків, синхронізація стану, мінімальні збори та налаштування API/gRPC.

  • client.toml: використовується для налаштування вхідних даних на стороні клієнта при використанні інтерфейсу umeed для взаємодії з мережею. Ця конфігурація повністю необов'язкова і в основному використовується для зручності, щоб уникнути необхідності вводити одні й ті ж аргументи в команди umeed CLI.

Як config.toml, так і app.toml сильно прокоментовані і повинні використовуватися в якості посилання на те, як формувати ваші налаштування.

Ми рекомендуємо, принаймні, перевірити і потенційно змінити наступні конфігурації:

  • app.toml

    • minimum-gas-prices: Встановіть для цього непорожнє значення, щоб вузол вимагав мінімальних зборів при обробці транзакцій, наприклад, minimum-gas-prices = "0,001uumee". Нагадаємо, комісія за транзакцію розраховується за формулою fee = ⌈tx.gasLimit * tx.gasPrice⌉, тому комісія за транзакцію повинна становити не менше ⌈minimumGasPrices * tx.gasPrice⌉.

    • pruning: за замовчуванням додаток збереже дані програми за період без прив'язки в блоках (362880) і скоротить стан програми, що залишився. Вам слід змінити це значення, якщо ви хочете скоротити весь стан програми, pruning ="everything", або якщо ви хочете зберегти весь стан програми (архів), pruning ="nothing".

    • min-retain-blocks: це значення стосується обрізання блоків Tendermint. Це відрізняється від pruning, оскільки відноситься до стану програми. Якщо значення не дорівнює нулю, додаток повідомить Tendermint про видалення блоків, що перевищують порогове значення min-retain-blocks. Зверніть увагу, що внутрішньо додаток застосовує мінімум, оскільки для забезпечення безпеки необхідно зберігати блоки, принаймні, на період відключення.

    • 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 Tendermint зможуть успішно підключитися до вашої ноди.

    • p2p. seeds: встановлюється в список доступних початкових нод (якщо такі є). Початкові ноди - це вузли, які просто обмінюються одноранговою інформацією з вашим вузлом, а потім відключаються. Встановіть це значення, якщо у вас немає доступних або відомих однорангових вузлів для підключення.

    • p2p. persistent_peers: встановлюється в список доступних і надійних однорангових вузлів (якщо такі є).

Cosmovisor і управління послугами

Ми рекомендуємо використовувати systemd на додаток до cosmovisor, двійкового супервізора cosmos, для управління вашим процесом umeed.

Для отримання докладного керівництва по налаштуванню cosmovisor, будь ласка, ознайомтеся з інструкціями по налаштуванню.

Встановлюйте DAEMON_ALLOW_DOWNLOAD_BINARIES=true тільки в тому випадку, якщо ви використовуєте повну ноду. Валідаторам рекомендується завчасно завантажувати або створювати оновлені двійкові файли і перевіряти їх правильність.

Last updated