Полный консенсусный узел
Полные консенсусные узлы позволяют синхронизировать историю блокчейна на уровне консенсуса Sunrise.
Обновления цепи
Для оптимизации обновлений цепочки и минимизации простоев вы можете настроить Cosmovisor для управления вашим узлом.
Для автоматизации обновлений в цепочке установите следующие параметры.
Резервные копии
Если вы используете последнюю версию Cosmovisor, то конфигурация по умолчанию заключается в том, что резервная копия состояния будет создана перед применением обновлений. Это можно отключить с помощью флагов среды .
Оповещение и мониторинг
Оповещение и мониторинг также желательны — вам предлагается изучить решения и найти то, которое подходит для вашей установки. Prometheus доступен из коробки, и существует множество инструментов с открытым исходным кодом.
Требования к оборудованию
Для запуска узла-валидатора рекомендуются следующие минимальные требования к оборудованию:
Память: 8 ГБ ОЗУ (минимум)
Процессор: 4 ядра
Диск: SSD-накопитель емкостью 250 ГБ
Пропускная способность: 1 Гбит/с для загрузки/1 Гбит/с для загрузки
Если вы не используете обрезку, вы используете архивный узел, и рекомендуется иметь 500 ГБ SSD-хранилища.
Зависимости
Учебник сделан на Ubuntu 22.04 (LTS). Следуйте руководству по окружению
Запустите полный консенсусный узел
Установить
Установить Go 1.22
При синхронизации из генезиса используйте бинарную версию из генезиса. Если вы используете снимки, вы должны проверить высоту снимка и использовать бинарник на этой высоте.
Более подробную информацию смотрите в документации по обновлению .
Инициализировать
Set chain-id
& moniker
. moniker
— это просто имя вашего узла.
Это приведет к созданию следующих файлов в~/.sunrise/config/
genesis.json
node_key.json
priv_validator_key.json
Загрузить файл генезиса
Проверьте genesis.json
текущую запущенную сеть на нашем Github
Пример: Для основной сети:
Установить минимальные цены на газ
Для узлов RPC и узлов Validator мы рекомендуем установить следующие минимальные цены на газ. Поскольку мы являемся цепочкой wasm без разрешения, эта настройка поможет защититься от спама по контрактам и потенциальных векторов атак по контрактам wasm.
В $HOME/.sunrise/config/app.toml
, установить минимальные цены на газ:
НЕ устанавливайте слишком высокие цены на газ. Если вы являетесь валидатором, ваш предложенный блок не будет включать транзакции. Это уменьшает количество транзакций, которые может обработать вся сеть.
Вариант: Установить сиды и постоянные пиры
Сиды
«Seeds» предоставляет список других валидаторов, к которым должен изначально подключиться новый присоединяющийся валидатор. После того, как валидатор подключается к сети, он в первую очередь полагается persistent_peers
на соединения, снижая важность seeds
.
Пиры
"Persistent Peers" — это список доверенных валидаторов, с которыми валидатор должен поддерживать соединения в любое время. Соединения с валидаторами, перечисленными в persistent_peers, имеют приоритет для поддержания стабильности сети.
Вариант: Дополнительные настройки
При необходимости отредактируйте файлы конфигурации.$HOME/.sunrise/config/app.toml
Enable определяет, следует ли включить сервер API.
EnableUnsafeCORS определяет, следует ли включать CORS (небезопасно — используйте на свой страх и риск).
По умолчанию RPC и REST не являются общедоступными, поэтому, если вы хотите сделать узел общедоступным, выполните следующие настройки:
Конфигурации хранения и обрезки
Если ваш консенсусный узел подключается к мостовому узлу sunrise-node, вам нужно включить индексацию транзакций и сохранить все данные блоков. Это можно сделать с помощью следующих настроек в config.toml
.
Включить индексацию транзакций
Сохранить все данные блока
А в app.toml
, min-retain-blocks
следует оставить настройку по умолчанию:
Доступ к историческому состоянию
Если вы хотите запросить историческое состояние — например, вы можете захотеть узнать баланс кошелька на заданной высоте в прошлом — вам следует запустить архивный узел с pruning = "nothing"
in app.toml
. Обратите внимание, что эта конфигурация является ресурсоемкой и потребует значительного хранилища:
Если вы хотите сэкономить на хранилище, рассмотрите возможность использования pruning = "everything"
app.toml для удаления всего.
Создать (или восстановить) локальную пару ключей
Создайте новую пару ключей или восстановите существующий кошелек для вашего валидатора:
Замените <your-key>
на имя ключа по вашему выбору.
Получите токены RISE
Вам понадобится несколько токенов vRISE для привязки к вашему валидатору (и несколько токенов RISE для оплаты комиссий). Чтобы быть в активном наборе, вам нужно будет иметь достаточно токенов.
Запустить узел консенсуса
Следуйте инструкциям по настройке Cosmovisor и запуску узла. См. руководство по Cosmovisor
Использование cosmovisor совершенно необязательно. Если вы решите не использовать cosmovisor, вам нужно будет обязательно посетить обновления сети, чтобы убедиться, что ваш валидатор не простаивает и не попадает в тюрьму.
Если вы не используете Cosmovisor, выполните следующее:
Синхронизация узла
После запуска sunrised
демона цепочка начнет синхронизироваться с сетью. Время синхронизации с сетью будет зависеть от ваших настроек и текущего размера блокчейна, но может занять очень много времени. Чтобы запросить статус вашего узла:
Возврат этой команды true
означает, что ваш узел все еще догоняет. В противном случае ваш узел догнал текущий блок сети, и вы можете смело переходить к обновлению до узла-валидатора.
Если вы хотите сократить время ожидания последнего блока, рассмотрите возможность использования снимков с других узлов.
Если вы хотите догнать с 0 высоты, вам придется обновляться sunrised
на каждой высоте обновления. Если Cosmovisor запущен и включена опция автоматической загрузки, обновление также будет обработано автоматически.
Last updated