tezos_node
Название роли
Эта роль Ansible предназначена для упрощения и ускорения развертывания узла Tezos для пользователей Ansible.
Роль имеет множество параметров, что позволяет пользователям разворачивать узлы для различных сетей Tezos (mainnet/ithacanet/jakartanet и т.д.) и различных экономических протоколов для поддержки блок-переходов.
Поддерживаются две стратегии начальной загрузки: синхронизация с генезиса или импорт снимка для быстрой загрузки.
Роль была протестирована на Версии 13 узла Tezos.
Эта роль не управляет никакими ключами Tezos.
Требования
Docker (тестировалось на Debian Buster)
Установка
ansible-galaxy install ecadlabs.tezos_node
Переменные роли
Доступные переменные перечислены ниже, вместе с их значениями по умолчанию (см. defaults/main.yml
):
Сеть Tezos, которую вы хотите развернуть. Эта переменная не имеет значения по умолчанию, поэтому вы должны установить ее. Обычно значениями являются jakartanet
или mainnet
. Значение tezos_network
используется для нескольких целей: именование контейнеров Docker, именование сети Docker, выбор сети Tezos для использования и проверка, что импортируемые снимки из ожидаемой сети.
tezos_network:
Место на хосте, где будет находиться директория данных узлов Tezos. Эта роль использует привязку папок Docker вместо объемов.
node_data_dir: "/srv/tezos/{{ network_name }}_node"
Место на хосте, где будет находиться конфигурация клиента Tezos. Эта директория содержит конфигурацию клиента и ключи, используемые командой tezos-client
.
client_data_dir: "/srv/tezos/{{ network_name }}_client"
Образ Docker Tezos, который нужно использовать.
octez_version: v13.0
Режим истории, в котором вы хотите работать с вашим узлом. Варианты: архивный, полный или текущий.
history_mode: full
Предоставление URL снимка контролирует, как ваш узел загрузится. Укажите snapshot_url
, чтобы роль скачала и импортировала снимок. Поскольку существуют разные снимки для каждого режима истории, этот снимок должен совпадать с режимом истории узла. Если предоставленное значение начинается с http://
или https://
, роль загрузит снимок с этого URL. Если предоставленное значение - это путь к файлу Unix, такой как /var/tmp/a_tezos_snapshot
, роль скопирует снимок с машины Ansible на целевой хост.
snapshot_url: https://mainnet.xtz-shots.io/rolling # См. https://xtz-shots.io/
Путь или URL к файлу снимка, который будет использован для начального импорта вашего узла. Снимок будет загружен в файловую систему целевого хоста и смонтирован через объем в короткоживущем образе Docker, отвечающем за процесс импорта.
snapshot_tmp_file: /tmp/snapshot
Зависимости
Нет (но убедитесь, что у вас установлен Docker, geerlingguy.docker
работает хорошо)
Пример плейбука
Для основной сети:
- hosts: servers
roles:
- role: ecadlabs.tezos_node
snapshot_url: https://mainnet.xtz-shots.io/rolling # См. https://xtz-shots.io/
history_mode: rolling
tezos_network: mainnet
snapshot_tmp_file: /tmp/snapshot
Лицензия
MIT
Информация об авторе
Создано людьми из ECAD Labs Inc. https://ecadlabs.com
ansible-galaxy install ecadlabs/ansible-role-tezos-node