ATE Documentation portal logo
Помощь
Обновлена 30 октября 2026 г. в 12:05

Переменные TCF

В этом разделе приведены переменные роли tcf, которые задают настройки продукта Tarantool Clusters Federation. Подробное описание всех поддерживаемых опций конфигурации доступно в документации TCF в разделах Конфигурация репликаторов данных и HTTP API репликаторов данных.

Общие настройки

Переменная

Описание

tcf_package_path

Полный путь к архиву с пакетом установки TCF. Тип: string. Значение по умолчанию: null.

tcf_main_directory

Путь к директории с файлами продукта TCF. Тип: string. Значение по умолчанию: "{{ tarantool_base_dir }}/clusters-federation".

tcf_bin_directory

Путь к директории, в которой хранятся ссылки (symlink) на распакованные файлы для каждого экземпляра. Все вызовы исполняемых файлов (например tarantool и tt) осуществляются отсюда. Тип: string. Значение по умолчанию: "{{ tarantool_base_dir }}/clusters-federation/bin".

tcf_config_directory

Путь к директории с конфигурацией компонентов Gateway и Destination. Тип: string. Значение по умолчанию: "{{ tarantool_base_dir }}/clusters-federation/config".

tcf_dist_directory

Путь к директории, куда доставляется и распаковывается архив с дистрибутивами экземпляров. Тип: string. Значение по умолчанию: "{{ tarantool_base_dir }}/clusters-federation/dist".

tcf_log_directory

Путь к директории с файлами записей журнала TCF. Тип: string. Значение по умолчанию: "{{ tarantool_log_base_dir }}/tcf".

tcf_service_user

Имя пользователя Linux, владельца файлов для работы с TCF. Тип: string. Значение по умолчанию: tarantool.

tcf_service_group

Имя группы Linux, владельца файлов для работы с TCF. Тип: string. Значение по умолчанию: tarantool.

tcf_user

Имя пользователя для подключения репликаторов Gateway и Destination. Тип: string. Значение по умолчанию: replicator.

tcf_user_password

Пароль пользователя tcf_user. Тип: string. Значение по умолчанию: null.

Параметры подключения к Tarantool

Переменные tcf_gateway_tarantool_* и tcf_destination_tarantool_* задают параметры секции gateway.tarantool и destination.tarantool. Они действуют на одиночные подключения и пулы подключений к Tarantool, а также на анонимную реплику Gateway.

Доступно с версии ATE 2.1.0 (требуется TCF 0.14.0).

Если переменная не задана, соответствующий параметр не попадает в конфигурацию, и TCF использует собственное значение по умолчанию.

Переменная

Описание

tcf_gateway_tarantool_dial_timeout, tcf_destination_tarantool_dial_timeout

Время ожидания установки соединения с одним экземпляром Tarantool. Тип: string (duration, например "5s"). Должно быть больше нуля. Значение по умолчанию в TCF: 5s.

tcf_gateway_tarantool_reconnect_interval, tcf_destination_tarantool_reconnect_interval

Интервал проверки состояния соединения и переподключения. Тип: string (duration, например "2s"). Должен быть больше нуля. Значение по умолчанию в TCF: 2s.

tcf_gateway_tarantool_request_timeout, tcf_destination_tarantool_request_timeout

Время ожидания ответа на запрос. Тип: string (duration, например "30s"); также допускается число 0. Должно быть неотрицательным. Значения "0s" и 0 отключают ограничение времени ожидания. Значение по умолчанию в TCF: 0 (без ограничения).

Настройка Gateway

Переменная

Описание

tcf_gateway_storage_uris

Список URI маршрутизаторов. Тип: array. Значение по умолчанию: [].

tcf_gateway_binary

Путь к бинарному файлу Gateway. Тип: string. Значение по умолчанию: "{{ tcf_bin_directory }}/tcf-gateway".

tcf_gateway_config_file

Путь к конфигурационному файлу Gateway. Тип: string. Значение по умолчанию: "{{ tcf_config_directory }}/tcf-gateway-{{ inventory_hostname }}-config.yml".

tcf_gateway_host

Адрес ansible_host. Тип: string. Значение по умолчанию: "{{ ansible_host }}".

tcf_gateway_port

Номер порта, на котором будет работать компонент Gateway. Тип: integer. Значение по умолчанию: 8080.

tcf_gateway_port_metrics

Порт метрик Gateway. Тип: integer. Значение по умолчанию: 8000.

tcf_gateway_replica_type

Тип реплики, в качестве которой Gateway подключается к кластеру. Тип: string. Возможные значения: anonymous, regular. Значение по умолчанию: anonymous.

tcf_gateway_replicaset_id

Уникальный идентификатор (UUID) для набора реплик Gateway. Обязателен, если тип реплики — regular, а не anonymous. Тип: string. Значение по умолчанию: cdc10000-0000-0000-0000-000000000000.

tcf_gateway_log_level

Уровень журналирования. Тип: string. Возможные значения: fatal, syserror, error, crit, warn, info, verbose, debug. Значение по умолчанию: debug.

tcf_gateway_log_type

Формат журналирования. Тип: string. Возможные значения: plain, json. Значение по умолчанию: plain.

tcf_gateway_log_path

Путь к файлу записей журнала (stderr, stdout или путь к файлу). Тип: string. Значение по умолчанию: "{{ tcf_log_directory }}/tcf-gateway-{{ inventory_hostname }}.log".

tcf_gateway_metrics_enabled

Включение метрик Gateway. Доступно с версии 1.11.0. Тип: boolean. Значение по умолчанию: false.

tcf_gateway_metrics_labels

Пользовательские метки метрик Prometheus для репликаторов Gateway. Представляют собой словарь вида ключ: значение. Доступно с версии 1.16.1. Тип: array. Параметр опционален. Значение по умолчанию: {}. При использовании генератора инвентаря формируется автоматически, если не задано пользователем.

tcf_gateway_systemd_unit

Имя systemd-юнита, через который Gateway будет запускаться на сервере. Тип: string. Значение по умолчанию: "tcf-gateway@{{ inventory_hostname }}.service".

tcf_gateway_alias

Имя приложения для идентификации конкретного экземпляра Gateway. Используется для отображения метрик конкретного экземпляра в Grafana. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: null. При использовании генератора инвентаря формируется автоматически (в формате gateway-{source}-{destination}-{index}, где {index} дополняется нулями до двух знаков, например -01), если не задано пользователем.

tcf_gateway_heartbeat_interval

Конфигурация heartbeat_interval в Gateway. Доступно с версии 1.14.0. Тип: integer. Значение по умолчанию: не задано.

tcf_gateway_max_cpu

Максимальное количество CPU-ядер, которые может использовать репликатор Gateway. Доступно с версии 1.16.1. Тип: integer. Опциональный параметр. При значении по умолчанию (null) используется поведение по умолчанию самого TCF: Gateway использует все доступные ядра и создает один поток для каждого набора реплик.

tcf_gateway_one_way_replication

Включает режим односторонней репликации для Gateway. Доступно с версии 1.16.1. Тип: boolean. Опциональный параметр. При значении по умолчанию (false) используется стандартный двусторонний режим репликации в соответствии с поведением TCF.

tcf_gateway_batch_size

Размер пакета для репликатора Gateway в байтах. Доступно с версии 1.16.1. Тип: integer. Значение по умолчанию: не задано. Опциональный параметр. Если не указан, параметр не попадает в конфигурацию. Пример: tcf_gateway_batch_size: 100.

tcf_gateway_batch_timeout

Время ожидания накопления пакета данных для репликатора Gateway. Доступно с версии 1.16.1. Тип: string (например, "100ms"). Значение по умолчанию: не задано. Опциональный параметр. Если не указан, параметр не попадает в конфигурацию. Пример: tcf_gateway_batch_timeout: "100ms".

tcf_gateway_read_snapshot_from_file

Определяет поведение репликатора при первичной и повторной инициализации. Доступно с версии 1.17.0. Тип: boolean. Опциональный параметр. При значении по умолчанию (false) в момент подключения на стороне реплик Tarantool для холодной загрузки данных создаётся представление для чтения (read view). При значении true для холодной загрузки данных используется последний .snap-файл, что позволяет в случае возникновения неполадок во время холодной загрузки продолжать работу без необходимости повторной инициализации.

tcf_gateway_storage

Тип хранилища состояния кластеров — опция gateway.storage (etcd_v2, etcd_v3, config_storage). Если тип не задан, блок storage не выводится. Тип: string. Значение по умолчанию: null.

tcf_gateway_storage_endpoints

Опции {host, port, ssl_cert_file, ssl_key_file, ssl_ca_file} для storage_params.endpoints. Параметры ssl_* опциональны и доступны с версии 1.20.0. Тип: array. Значение по умолчанию: [].

tcf_gateway_storage_user

Пользователь для подключения к хранилищу состояния (storage_params.user). Доступно с версии 1.20.0. Тип: string. Значение по умолчанию: null.

tcf_gateway_storage_password

Пароль пользователя для подключения к хранилищу состояния (storage_params.password). Доступно с версии 1.20.0. Тип: string. Значение по умолчанию: null.

tcf_gateway_storage_prefix

Префикс ключей (storage_params.prefix). При использовании etcd-хранилища (etcd_v2 или etcd_v3) этот префикс автоматически включается в резервную копию и восстановление (добавляется в tarantool_etcd_additional_prefixes). Тип: string. Значение по умолчанию: "/tcf".

tcf_gateway_storage_ttl

Время жизни записей в секундах (storage_params.ttl). Тип: integer. Значение по умолчанию: 30.

Настройка Destination

Переменная

Описание

tcf_gateway_clusters

Конфигурация в Gateway. Доступно с версии 1.14.0. Если переменная указана, её содержимое будет передано в секцию конфигурации gateway_clusters так, как она указана в файле инвентаря. Секция gateways при этом собираться не будет. Если переменная пропущена, будет собираться старая вариация конфигурации в секции gateways. При использовании генератора инвентаря формируется автоматически из зарегистрированных экземпляров Gateway, если не задано ни tcf_gateway_clusters, ни tcf_gateways. Значение по умолчанию: не задано.

tcf_gateways

Список экземпляров компонента Gateway — опция destination.gateways. Элемент списка — это {host, port}, опции ssl_cert_file, ssl_key_file, ssl_ca_file, и dial_timeout. Если список пуст, берётся одиночный узел Gateway из tcf_gateway_host/tcf_gateway_port. Доступно с версии 1.13.0. Тип: array. Значение по умолчанию: [].

tcf_dial_timeout

Время ожидания для подключения к экземплярам Gateway (строка вида 5s). Переопределяется tcf_gateways[].dial_timeout. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: 5s.

tcf_destination_storage

Тип хранилища состояния кластеров — опция destination.storage (etcd_v2, etcd_v3, config_storage). Если тип не задан, блок storage не выводится. Тип: string. Значение по умолчанию: null.

tcf_destination_storage_endpoints

Опции {host, port, ssl_cert_file, ssl_key_file, ssl_ca_file} для storage_params.endpoints. Параметры ssl_* опциональны и доступны с версии 1.20.0. Тип: array. Значение по умолчанию: [].

tcf_destination_storage_user

Пользователь для подключения к хранилищу состояния (storage_params.user). Доступно с версии 1.20.0. Тип: string. Значение по умолчанию: null.

tcf_destination_storage_password

Пароль пользователя для подключения к хранилищу состояния (storage_params.password). Доступно с версии 1.20.0. Тип: string. Значение по умолчанию: null.

tcf_destination_storage_prefix

Префикс ключей (storage_params.prefix). При использовании etcd-хранилища (etcd_v2 или etcd_v3) этот префикс автоматически включается в резервную копию и восстановление (добавляется в tarantool_etcd_additional_prefixes). Тип: string. Значение по умолчанию: "/tcf".

tcf_destination_storage_ttl

Время жизни записей в секундах (storage_params.ttl). Тип: integer. Значение по умолчанию: 30.

tcf_destination_binary

Путь до бинарного файла Destination. Тип: string. Значение по умолчанию: "{{ tcf_bin_directory }}/tcf-destination".

tcf_destination_config_file

Путь до конфигурационного файла Destination. Тип: string. Значение по умолчанию: "{{ tcf_config_directory }}/tcf-destination-{{ inventory_hostname }}-config.yml".

tcf_destination_metrics_enabled

Включение метрик Destination. Тип: boolean. Значение по умолчанию: true.

tcf_destination_host

Адрес ansible_host. Тип: string. Значение по умолчанию: "{{ ansible_host }}".

tcf_destination_port_metrics

Порт метрик Destination. Тип: integer. Значение по умолчанию: 8000.

tcf_destination_metrics_labels

Пользовательские метки метрик Prometheus для репликаторов Destination. Представляют собой словарь вида ключ: значение. Доступно с версии 1.16.1. Параметр опционален. Тип: array. Значение по умолчанию: {}. При использовании генератора инвентаря формируется автоматически, если не задано пользователем.

tcf_destination_shards

Список шардов, закреплённых за данным экземпляром Destination при масштабировании (параметр scaling). Тип: array. Значение по умолчанию: не задано. При использовании генератора инвентаря формируется автоматически из подмножества шардов, назначенного компоненту, если не задано пользователем.

tcf_destination_buffer_size

Размер внутреннего буфера на каждый набор реплик для выполнения служебных операций. Тип: integer. Значение по умолчанию: 10000.

tcf_destination_log_level

Уровень журналирования. Тип: string. Возможные значения: fatal, syserror, error, crit, warn, info, verbose, debug. Значение по умолчанию: debug.

tcf_destination_log_type

Формат журналирования. Тип: string. Возможные значения: plain, json. Значение по умолчанию: plain.

tcf_destination_log_path

Путь к файлу записей журнала (stderr, stdout или путь к файлу). Тип: string. Значение по умолчанию: "{{ tcf_log_directory }}/tcf-destination-{{ inventory_hostname }}.log".

tcf_destination_start_retry_delay

Задержка в миллисекундах перед началом повторной попытки подключения к роутерам для получения служебной информации и формирования соединения. Тип: integer. Значение по умолчанию: 200.

tcf_destination_max_retry_delay

Максимальная задержка в миллисекундах перед началом повторной попытки подключения к роутерам для получения служебной информации и формирования соединения. Тип: integer. Значение по умолчанию: 1500.

tcf_destination_retry_attempts

Количество разрешенных попыток повторного подключения к роутерам. Тип: integer. Значение по умолчанию: 10.

tcf_destination_systemd_unit

Имя systemd-юнита, через который будет запускаться Destination на сервере. Тип: string. Значение по умолчанию: "tcf-destination@{{ inventory_hostname }}.service".

tcf_destination_alias

Имя приложения для идентификации конкретного экземпляра Destination. Используется для отображения метрик конкретного экземпляра в Grafana. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: null. При использовании генератора инвентаря формируется автоматически (в формате destination-{source}-{destination}-{index}, где {index} дополняется нулями до двух знаков, например -01), если не задано пользователем.

tcf_destination_truncate_collect_timeout

Время, за которое ожидается получение на Destination операции truncate от каждого шарда исходного кластера. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: null.

tcf_destination_truncate_buffer_size

Размер буфера для репликационных событий, полученных Destination при ожидании получения truncate от каждого шарда исходного кластера. В буфер попадают события, которые должны быть обработаны строго после truncate. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: null.

tcf_destination_max_cpu

Максимальное количество CPU-ядер, которые может использовать репликатор Destination. Доступно с версии 1.16.1. Тип: integer. Опциональный параметр. При значении по умолчанию (null) используется поведение по умолчанию самого TCF: Destination использует все доступные ядра и создает один поток для каждого набора реплик.

tcf_destination_batch_size

Размер пакета для репликатора Destination в байтах. Доступно с версии 1.16.1. Тип: integer. Значение по умолчанию: не задано. Опциональный параметр. Если не указан, параметр не попадает в конфигурацию. Пример: tcf_destination_batch_size: 200.

tcf_destination_batch_timeout

Время ожидания накопления пакета данных для репликатора Destination. Доступно с версии 1.16.1. Тип: string (например, "250ms"). Значение по умолчанию: не задано. Опциональный параметр. Если не указан, параметр не попадает в конфигурацию. Пример: tcf_destination_batch_timeout: "250ms".

Авторизация HTTP-запросов

Переменная

Описание

tcf_authorization_provider

Имя провайдера, используется для настройки авторизации запросов к HTTP API компонентов Gateway и Destination. Доступно с версии 1.11.0. Тип: string. Возможные значения: keycloak. Значение по умолчанию: null (если задан параметр tcf_authorization_provider_params, но провайдер не указан явно — используется keycloak).

tcf_authorization_provider_params

Параметры провайдера. Указанные параметры будут добавлены ко всем экземплярам Destination и Gateway. Доступно с версии 1.11.0. Тип: string. Значение по умолчанию: null.

Настройка SSL-подключения для Gateway и Destination

Переменная

Описание

tcf_ssl_cert_file

Путь к сертификату. Тип: string. Значение по умолчанию: null.

tcf_ssl_key_file

Путь к закрытому SSL-ключу. Тип: string. Значение по умолчанию: null.

tcf_ssl_ca_file

Путь к корневому сертификату. Тип: string. Значение по умолчанию: null.

tcf_gateway_iproto_ssl_opts

Параметры TLS для iproto-подключений Gateway к экземплярам хранения исходного кластера. Переменная заполняется автоматически из tarantool_iproto_ssl_params кластера-источника при использовании генератора инвентаря. При ручном управлении — словарь с ключами ssl_cert_file, ssl_key_file, ssl_ca_file, ssl_ciphers (опционально). Допускается массив словарей для указания разных TLS-параметров для разных узлов (с полем uri_regexp для фильтрации URI). Тип: dictionary или list. Значение по умолчанию: null.

tcf_destination_iproto_ssl_opts

Параметры TLS для iproto-подключений Destination к роутерам целевого кластера. Переменная заполняется автоматически из tarantool_iproto_ssl_params целевого кластера при использовании генератора инвентаря. При ручном управлении — словарь с ключами ssl_cert_file, ssl_key_file, ssl_ca_file, ssl_ciphers (опционально). Допускается массив словарей для указания разных TLS-параметров для разных узлов (с полем uri_regexp для фильтрации URI). Тип: dictionary или list. Значение по умолчанию: null.

Была ли статья полезна?