ATE Documentation portal logo
Помощь
Обновлена 12 ноября 2026 г. в 10:13

Переменные TCM

В этом разделе приведены переменные окружения для роли cluster_manager. Роль определяет настройки веб-интерфейса Tarantool Cluster Manager (TCM).

Пользователь, группа и пути TCM

Переменная

Описание

tcm_user

Пользователь, от имени которого запускается TCM. Тип: string. Значение по умолчанию: tarantool.

tcm_group

Группа, от имени которой запускается TCM. Тип: string. Значение по умолчанию: tarantool.

tcm_base_directory

Базовый каталог установки TCM. Тип: string. Значение по умолчанию: /app/tarantool/cluster-manager.

tcm_dist_directory

Каталог дистрибутива TCM. Тип: string. Значение по умолчанию: {{ tcm_base_directory }}/dist.

tcm_bin_directory

Каталог исполняемых файлов TCM. Тип: string. Значение по умолчанию: {{ tcm_base_directory }}/bin.

tcm_binary_path

Путь к исполняемому файлу tcm. Тип: string. Значение по умолчанию: {{ tcm_bin_directory }}/tcm.

tcm_config_directory

Каталог конфигурационных файлов TCM. Тип: string. Значение по умолчанию: {{ tcm_base_directory }}/conf.d.

tcm_config_name

Имя файла конфигурации TCM. Тип: string. Значение по умолчанию: tcm.yml.

tcm_config_path

Путь к файлу конфигурации TCM. Тип: string. Значение по умолчанию: {{ tcm_config_directory }}/{{ tcm_config_name }}.

tcm_service_unit_name

Имя systemd-юнита сервиса TCM. Тип: string. Значение по умолчанию: tarantool-cluster-manager@{{ inventory_hostname }}.service.

tcm_dir_mode

Права доступа на директории TCM. Наследуется из глобальной переменной tarantool_dir_mode. Тип: string. Значение по умолчанию: "{{ tarantool_dir_mode | default('0750') }}".

tcm_file_mode

Права доступа на файлы TCM. Наследуется из глобальной переменной tarantool_file_mode. Тип: string. Значение по умолчанию: "{{ tarantool_file_mode | default('0644') }}".

Служебные настройки

Переменная

Описание

tcm_mode

Режим работы TCM. Тип: string. Значение по умолчанию: production.

tcm_storage_provider

Провайдер хранилища состояния TCM. Тип: string. Значение по умолчанию: etcd.

tcm_cluster_connection_rate_limit

Лимит скорости установки соединений к управляемому кластеру (соединений в секунду). Тип: integer. Значение по умолчанию: 512.

tcm_cluster_tarantool_timeout

Таймаут соединения с Tarantool-кластером. Тип: string. Значение по умолчанию: 10s.

tcm_cluster_tarantool_ping_timeout

Таймаут ping-запросов к экземплярам Tarantool-кластера. Тип: string. Значение по умолчанию: 5s.

tcm_cluster_tt_command

Команда утилиты tt, используемая TCM для взаимодействия с управляемыми кластерами. Тип: string. Значение по умолчанию: tt.

tcm_cluster_refresh_state_period

Период опроса состояния управляемого кластера. Тип: string. Значение по умолчанию: 5s.

tcm_cluster_refresh_state_timeout

Таймаут запроса состояния управляемого кластера. Тип: string. Значение по умолчанию: 4s.

tcm_cluster_discovery_period

Период обнаружения топологии управляемого кластера. Тип: string. Значение по умолчанию: 4s.

tcm_cluster_sharding_index

Имя индекса, используемого для шардирования данных управляемого кластера. Тип: string. Значение по умолчанию: bucket_id.

tcm_cluster_skew_time

Допустимое рассогласование (смещение) времени между узлами управляемого кластера. Тип: string. Значение по умолчанию: 30s.

tcm_cluster_fragmentation_threshold

Порог фрагментации памяти экземпляров управляемого кластера (в процентах). Тип: integer. Значение по умолчанию: 40.

tcm_cluster_connectivity_check_timeout

Таймаут проверки связности с экземплярами управляемого кластера. Тип: string. Значение по умолчанию: 3s.

tcm_cluster_backoff_initial_delay

Начальная задержка перед повторной попыткой подключения к экземпляру управляемого кластера. Тип: string. Значение по умолчанию: 1s.

tcm_cluster_backoff_max_delay

Максимальная задержка перед повторной попыткой подключения к экземпляру управляемого кластера. Тип: string. Значение по умолчанию: 30s.

tcm_cluster_backoff_failure_threshold

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

tcm_cluster_connection_pool_check_timeout

Период проверки соединений в пуле подключений к управляемому кластеру. Тип: string. Значение по умолчанию: 3s.

tcm_cluster_watcher_retry_delay

Задержка между повторными попытками подписки на изменения состояния управляемого кластера. Тип: string. Значение по умолчанию: 1s.

tcm_cluster_stats_max_space_length

Ограничение на объём собираемой статистики спейсов управляемого кластера. Тип: integer. Значение по умолчанию: 10000.

tcm_cluster_stats_timeout

Таймаут запроса статистики у экземпляров управляемого кластера. Тип: string. Значение по умолчанию: 1m.

Подключение TCM к etcd

TCM использует два независимых подключения к etcd, которые настраиваются разными группами переменных:

  1. TCM → собственный etcd — хранение состояния TCM (пользователи, роли, регистрации кластеров). Настраивается переменными tcm_config_storage_*, tcm_etcd_* и tcm_etcd_tls_* в секции tcm: инвентаря для генератора.

  2. TCM → etcd кластера (через initial_clusters) — чтение конфигурации управляемого кластера. Настраивается переменными tarantool_etcd_ssl_* (общие переменные Tarantool, также используются экземплярами) и tcm_cluster_etcd_tls_* в секции constants:.

Переменные ниже относятся к подключению TCM к собственному etcd.

Переменная

Описание

tcm_config_storage_endpoints

Список конечных точек хранилища состояния TCM (etcd или хранилище на основе Tarantool). При tcm_storage_provider: tarantool конечные точки преобразуются в адреса вида host:port: для конечных точек, заданных словарем, используется поле uri, а схема (например, https://) отбрасывается — TLS настраивается отдельными переменными tcm_tarantool_ssl_*. Тип: list. Значение по умолчанию: "{{ tarantool_config_storage_endpoints }}".

tcm_config_storage_prefix

Префикс ключа, под которым TCM хранит собственное состояние. Тип: string. Значение по умолчанию: /tcm.

tcm_etcd_username

Имя пользователя для аутентификации в собственном etcd TCM. Тип: string. Значение по умолчанию: "".

tcm_etcd_password

Пароль для аутентификации в собственном etcd TCM. Тип: string. Значение по умолчанию: "".

tcm_etcd_password_file

Путь к файлу с паролем для аутентификации в собственном etcd TCM. Тип: string. Значение по умолчанию: "".

Настройка TLS для соединения с etcd

Переменная

Описание

tcm_etcd_tls_enabled

Включение TLS для соединения TCM с собственным etcd. Тип: boolean. Значение по умолчанию: false.

tcm_etcd_tls_auto

Автоматическое получение параметров TLS для соединения с собственным etcd. Тип: boolean. Значение по умолчанию: false.

tcm_etcd_tls_cert_file

Путь к SSL-сертификату клиента для соединения с собственным etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_key_file

Путь к SSL-ключу клиента для соединения с собственным etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_ca_file

Путь к CA-сертификату для проверки сертификатов собственного etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_cert_auth

Требование проверки SSL-сертификата клиента (mutual TLS) при соединении с собственным etcd. Тип: boolean. Значение по умолчанию: false.

tcm_etcd_tls_crl_file

Путь к списку отзыва сертификатов (CRL) для собственного etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_skip_verify

Пропуск проверки SSL-сертификата сервера собственного etcd. Тип: boolean. Значение по умолчанию: false.

tcm_etcd_tls_skip_san_verify

Пропуск проверки SAN в SSL-сертификате сервера собственного etcd. Тип: boolean. Значение по умолчанию: false.

tcm_etcd_tls_server_name

Имя сервера (SNI) для TLS-соединения с собственным etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_cipher_suites

Список допустимых наборов шифров (cipher suites) для TLS-соединения с собственным etcd. Тип: list. Значение по умолчанию: [].

tcm_etcd_tls_allowed_cn

Разрешённое значение Common Name сертификата клиента для собственного etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_allowed_hostname

Разрешённое имя хоста для TLS-соединения с собственным etcd. Тип: string. Значение по умолчанию: "".

tcm_etcd_tls_empty_cn

Допущение пустого значения Common Name в сертификате клиента собственного etcd. Тип: boolean. Значение по умолчанию: false.

Подключение TCM к Tarantool

Переменная

Описание

tcm_tarantool_ssl_transport

Транспорт для соединения TCM с Tarantool (tcp без шифрования или ssl для TLS). Тип: string. Значение по умолчанию: tcp.

tcm_tarantool_ssl_cert_file

Путь к SSL-сертификату клиента для соединения с Tarantool. Тип: string. Значение по умолчанию: "".

tcm_tarantool_ssl_key_file

Путь к SSL-ключу клиента для соединения с Tarantool. Тип: string. Значение по умолчанию: "".

tcm_tarantool_ssl_ca_file

Путь к CA-сертификату для проверки сертификатов Tarantool. Тип: string. Значение по умолчанию: "".

tcm_tarantool_ssl_ciphers

Список наборов шифров OpenSSL для TLS-соединения с Tarantool. Тип: string. Значение по умолчанию: "".

tcm_tarantool_ssl_password

Пароль приватного ключа клиента для соединения с Tarantool. Тип: string. Значение по умолчанию: "".

tcm_tarantool_ssl_password_file

Путь к файлу с паролем приватного ключа клиента для соединения с Tarantool. Тип: string. Значение по умолчанию: "".

HTTP-сервер TCM

Переменная

Описание

tcm_host

Адрес, на котором TCM слушает HTTP-запросы. Тип: string. Значение по умолчанию: 127.0.0.1.

tcm_port

Порт HTTP-сервера TCM. Тип: integer. Значение по умолчанию: 8080.

tcm_http_network

Сетевой протокол HTTP-сервера TCM. Тип: string. Значение по умолчанию: tcp.

tcm_http_trace

Включение трассировки HTTP-запросов. Тип: boolean. Значение по умолчанию: false.

HTTP TLS

Переменная

Описание

tcm_http_tls_enabled

Включение TLS для HTTP-сервера TCM. Тип: boolean. Значение по умолчанию: false.

tcm_http_tls_cert_file

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

tcm_http_tls_key_file

Путь к SSL-ключу HTTP-сервера TCM. Тип: string. Значение по умолчанию: "".

tcm_http_tls_server_name

Имя сервера (SNI) для HTTPS-сервера TCM. Тип: string. Значение по умолчанию: "".

tcm_http_tls_min

Минимальная допустимая версия TLS для HTTP-сервера (0 — без ограничений). Тип: integer. Значение по умолчанию: 0.

tcm_http_tls_max

Максимальная допустимая версия TLS для HTTP-сервера (0 — без ограничений). Тип: integer. Значение по умолчанию: 0.

tcm_http_tls_curve_preferences

Список предпочтительных эллиптических кривых для HTTP TLS. Тип: list. Значение по умолчанию: [].

tcm_http_tls_cipher_suites

Список допустимых наборов шифров (cipher suites) для HTTP TLS. Тип: list. Значение по умолчанию: [].

Журналирование

Переменная

Описание

tcm_log_directory

Каталог для файлов журнала TCM. Тип: string. Значение по умолчанию: /app/logs/tarantool/cluster-manager.

tcm_log_level

Уровень детализации записей журнала. Тип: string. Значение по умолчанию: INFO.

tcm_log_format

Формат записей журнала. Тип: string. Значение по умолчанию: struct.

tcm_log_output

Тип вывода записей журнала: file -- запись в файл, syslog -- отправка на syslog-сервер. Тип: string. Значение по умолчанию: file.

tcm_log_no_colorized

Отключение цветовой разметки записей журнала. Тип: boolean. Значение по умолчанию: false.

tcm_log_max_size

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

tcm_log_max_age

Максимальный срок хранения файлов журнала в днях (0 — без ограничения). Тип: integer. Значение по умолчанию: 0.

tcm_log_max_backups

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

tcm_log_compress

Сжатие (gzip) резервных копий файлов журнала. Тип: boolean. Значение по умолчанию: true.

tcm_log_show_stack_trace

Отображение трассировки стека в записях журнала. Тип: boolean. Значение по умолчанию: false.

tcm_log_add_source

Добавление источника (файла и строки) в записи журнала. Тип: boolean. Значение по умолчанию: false.

tcm_group

Группа ОС, от имени которой запускается TCM. Тип: string. Значение по умолчанию: tarantool.

tcm_log_syslog_output

Адрес приёмника в формате host:port (например, 127.0.0.1:514). Тип: string. Значение по умолчанию: 127.0.0.1:514.

tcm_log_syslog_priority

Уровень важности сообщения (info, warning, error и т.д.). Тип: string. Значение по умолчанию: "".

tcm_log_syslog_facility

Подсистема (например, syslog, daemon, local0). Тип: string. Значение по умолчанию: "user".

tcm_log_syslog_tag

Метка (tag) сообщений, отправляемых в syslog. Тип: string. Значение по умолчанию: "".

tcm_log_syslog_timeout

Время ожидания при попытке отправки записей журнала в syslog. Тип: string. Значение по умолчанию: "10s".

tcm_log_outputs

Список дополнительных направлений вывода записей журнала (поле log.outputs конфигурации TCM). Каждый элемент — словарь с ключом output и параметрами соответствующего направления, например: [{output: syslog, syslog: {output: "127.0.0.1:514"}}]. Пустой список означает, что используется только направление, заданное tcm_log_output. Тип: list. Значение по умолчанию: [].

Лимиты

Переменная

Описание

tcm_limits_user_count

Максимальное количество пользователей TCM. Тип: integer. Значение по умолчанию: 1000.

tcm_limits_clusters_count

Максимальное количество кластеров, регистрируемых в TCM. Тип: integer. Значение по умолчанию: 10.

tcm_limits_roles_count

Максимальное количество ролей TCM. Тип: integer. Значение по умолчанию: 100.

tcm_limits_webhooks_count

Максимальное количество вебхуков TCM. Тип: integer. Значение по умолчанию: 200.

tcm_limits_user_secrets_count

Максимальное количество секретов пользователя. Тип: integer. Значение по умолчанию: 10.

tcm_limits_user_websessions_count

Максимальное количество веб-сессий пользователя. Тип: integer. Значение по умолчанию: 10.

tcm_limits_linked_cluster_users

Максимальное количество пользователей, привязанных к кластеру. Тип: integer. Значение по умолчанию: 10.

Функциональность

Переменная

Описание

tcm_feature_ttgraph

Включение функциональности ttgraph. Тип: boolean. Значение по умолчанию: false.

tcm_feature_column_store

Включение функциональности column-store. Тип: boolean. Значение по умолчанию: false.

tcm_feature_tqe

Включение функциональности Tarantool Queue Engine (TQE). Тип: boolean. Значение по умолчанию: false.

tcm_feature_api_token

Включение функциональности API-токенов аутентификации. Тип: boolean. Значение по умолчанию: false.

tcm_feature_tuples

Включение функциональности tuples. Тип: boolean. Значение по умолчанию: false.

tcm_feature_tcf

Включение функциональности репликаторов данных (TCF). Тип: boolean. Значение по умолчанию: false.

Дополнения

Переменная

Описание

tcm_addon_enabled

Включение модулей дополнений (addons) TCM. Тип: boolean. Значение по умолчанию: false.

tcm_addon_dir

Каталог модулей дополнений TCM. Тип: string. Значение по умолчанию: "".

tcm_addon_max_upload_size

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

tcm_addon_dev_dirs

Список каталогов разработки дополнений. Тип: list. Значение по умолчанию: [].

Начальные данные

Переменная

Описание

tcm_initial_clusters

Список кластеров, регистрируемых в TCM при первом запуске. При использовании генератора инвентаря формируется автоматически из кластеров секции constants:. Тип: list. Значение по умолчанию: [].

tcm_initial_roles

Список ролей, которые будут созданы при первом запуске TCM. Каждая роль может содержать: id (строка, опционально), name (строка, обязательно), description (строка, опционально), color (строка, опционально) — цвет роли, permissions (список строк с именами разрешений TCM, например admin.clusters.read, обязательно, не может быть пустым). Если id не указан, TCM сгенерирует его автоматически при создании роли. Доступно с TCM 1.9.0. Тип: list. Значение по умолчанию: [].

tcm_initial_users

Список пользователей, которые будут созданы при первом запуске TCM. Каждый пользователь может содержать: id (строка, опционально — если не указан, TCM сгенерирует его), fullname (строка, обязательно), description (строка, опционально), secret-type (строка, обязательно: password, ldap или token), secret-key (строка, обязательно для secret-type: password) — пароль, public-key (строка, обязательно для password и ldap, длина более 3 символов) — публичный ключ, secret-description (строка, опционально) — описание секрета, role-ids (список строк с идентификаторами ролей, опционально), clusters (список строк, опционально) — доступ к кластерам в формате <cluster-id>:<разрешения>[:<use-acl>[:<use-key-acl>]], где права — перечисленные через запятую права кластера (например, cluster.config.read, cluster.stateboard.read), а use-acl/use-key-acl — булевы признаки использования ACL и Key ACL. Для secret-type: token поля public-key/secret-key не задаются — токен выпускается при создании; дополнительно поддерживается active-until (дата истечения токена в формате YYYY-MM-DD). Вместо полей одного секрета можно задать список secrets с несколькими секретами; требуется хотя бы один секрет. Если role-ids не указаны, пользователь создается без дополнительных ролей. Если пользователь не проходит валидацию (например, не задан ни один секрет) или в clusters указан некорректный формат либо неизвестное разрешение, TCM не создаёт такого пользователя: ошибка пишется в лог TCM, обработка остальных пользователей продолжается, запуск TCM не прерывается. Доступно с TCM 1.9.0. Тип: list. Значение по умолчанию: [].

tcm_initial_acl

Список правил доступа (ACL) к spaces/functions, создаваемых при первом запуске TCM. Каждое правило может содержать: id (строка, опционально — если не указан, TCM сгенерирует его), user-id (строка, обязательно), cluster-id (строка, обязательно), type (строка, обязательно: space или func), name (строка, обязательно), read/write/execute (bool). Для type: space параметр execute должен быть false. user-id и cluster-id должны ссылаться на существующих пользователей/кластеры, иначе правило пропускается при бутстрапе. Доступно с TCM 1.10.0. Тип: list. Значение по умолчанию: [].

tcm_initial_key_acl

Список правил Key ACL (доступ к отдельным ключам конфигурации кластера), создаваемых при первом запуске TCM. Каждое правило может содержать: id (строка, опционально — если не указан, TCM сгенерирует его), user-id (строка, обязательно), cluster-id (строка, обязательно), key-name (строка, обязательно), read/write (bool). write: true требует read: true. user-id и cluster-id должны ссылаться на существующих пользователей/кластеры, иначе правило пропускается при бутстрапе. Доступно с TCM 1.11.0. Тип: list. Значение по умолчанию: [].

tcm_initial_ldap

Список LDAP-провайдеров, создаваемых при первом запуске TCM. Каждый элемент может содержать: id (строка, опционально — если не указан, TCM сгенерирует его), enabled (bool), endpoints (список строк, обязательно, не может быть пустым), query-user/query-password (строка), user-re (строка, обязательно — регулярное выражение имени пользователя), base-dn, template-dn, template-query, group-query-template (строка), request-timeout (int), add-user-if-not-exist (bool), groups (список групп: group-name, permissions — известные разрешения TCM, например admin.clusters.read, и опционально clusters — список записей cluster-id + permissions, где cluster-id обязателен, а разрешения берутся из cluster.*, например cluster.stateboard.read), tls (блок TLS, см. примечание ниже). Доступно с TCM 1.10.0. Тип: list. Значение по умолчанию: [].

TLS-блок LDAP-провайдера (tls) содержит: enabled (bool), cert-file, key-file, insecure-skip-verify (bool), use-start-tls (bool), server-name (строка). При enabled: true TCM требует читаемую пару клиентского сертификата и ключа (cert-file/key-file). Отдельного параметра для CA-файла нет: для проверки сертификата сервера используется системное хранилище доверенных CA, если insecure-skip-verify: false. Параметр use-start-tls: true включает StartTLS вместо непосредственного LDAPS-подключения, server-name задаёт имя сервера для проверки сертификата.

Журналирование

Параметры основного журнала TCM (секция log.default конфигурации TCM).

Переменная

Описание

tcm_log_level

Уровень журналирования: DEBUG, INFO, WARN, ERROR. Тип: string. Значение по умолчанию: INFO.

tcm_log_format

Формат записей журнала: struct (текстовый) или json. Тип: string. Значение по умолчанию: struct.

tcm_log_output

Тип вывода записей журнала: file — запись в файл, syslog — отправка на syslog-сервер, stdout/stderr — вывод в стандартные потоки. Тип: string. Значение по умолчанию: file.

tcm_log_max_size

Максимальный размер одного файла журнала до ротации. TCM интерпретирует значение в мегабайтах. Применяется при tcm_log_output: file. Тип: int. Значение по умолчанию: 1073741824.

tcm_log_max_age

Максимальный срок хранения файлов ротации в днях. Значение 0 — без ограничения. Применяется при tcm_log_output: file. Тип: int. Значение по умолчанию: 0.

tcm_log_max_backups

Максимальное число хранимых файлов ротации. Значение 0 — хранить все файлы. Применяется при tcm_log_output: file. Тип: int. Значение по умолчанию: 10.

tcm_log_compress

Сжимать (gzip) файлы журнала при ротации. Применяется при tcm_log_output: file. Тип: bool. Значение по умолчанию: true.

tcm_log_show_stack_trace

Добавлять стек вызовов в записи журнала. Тип: bool. Значение по умолчанию: false.

tcm_log_add_source

Добавлять в записи журнала источник (файл и строку кода). Тип: bool. Значение по умолчанию: false.

tcm_log_no_colorized

Отключить цветной вывод журнала в stdout/stderr. Тип: bool. Значение по умолчанию: false.

tcm_log_syslog_protocol

Протокол доставки (tcp или udp). Применяется при tcm_log_output: syslog. Тип: string. Значение по умолчанию: "tcp".

tcm_log_syslog_output

Адрес приёмника в формате host:port (например, 127.0.0.1:514). Применяется при tcm_log_output: syslog. Тип: string. Значение по умолчанию: "127.0.0.1:514".

tcm_log_syslog_facility

Подсистема syslog (user, daemon, local0 и т.д.). Применяется при tcm_log_output: syslog. Тип: string. Значение по умолчанию: "user".

tcm_log_syslog_priority

Зарезервировано. Передаётся в конфигурацию TCM (log.default.syslog.priority), но текущей реализацией TCM не используется: уровень сообщений определяется tcm_log_level. Тип: string. Значение по умолчанию: "".

tcm_log_syslog_tag

Зарезервировано. Передаётся в конфигурацию TCM (log.default.syslog.tag), но текущей реализацией TCM не используется. Тип: string. Значение по умолчанию: "".

tcm_log_syslog_timeout

Время ожидания при подключении к syslog-серверу. Применяется при tcm_log_output: syslog. Тип: string. Значение по умолчанию: "10s".

tcm_log_outputs

Дополнительные выводы журнала (секция log.outputs конфигурации TCM) в формате основного вывода: список объектов с полями output, level, format, file/syslog и т.д. Тип: list. Значение по умолчанию: [].

HTTP API и веб-интерфейс

Параметры HTTP-сервера TCM, который обслуживает веб-интерфейс и API (секция http конфигурации TCM).

Базовые параметры

Переменная

Описание

tcm_host

Адрес, на котором TCM принимает HTTP-подключения. Тип: string. Значение по умолчанию: 127.0.0.1.

tcm_port

Порт, на котором TCM принимает HTTP-подключения. Тип: int. Значение по умолчанию: 8080.

tcm_http_network

Тип сети для прослушивания: tcp, tcp6 или unix. Тип: string. Значение по умолчанию: tcp.

tcm_http_trace

Включить трассировку HTTP-запросов в журнале. Тип: bool. Значение по умолчанию: false.

tcm_http_request_size

Максимальный размер тела HTTP-запроса в байтах. Тип: int. Значение по умолчанию: 10485760 (10 МиБ).

tcm_http_read_timeout

Таймаут чтения HTTP-запроса целиком. Тип: string. Значение по умолчанию: 30s.

tcm_http_read_header_timeout

Таймаут чтения заголовков HTTP-запроса. Тип: string. Значение по умолчанию: 30s.

tcm_http_write_timeout

Таймаут записи HTTP-ответа. Тип: string. Значение по умолчанию: 30s.

tcm_http_idle_timeout

Таймаут keep-alive соединения в ожидании следующего запроса. Тип: string. Значение по умолчанию: 30s.

tcm_http_disable_general_options_handler

Отключить встроенный обработчик запросов OPTIONS. Тип: bool. Значение по умолчанию: false.

tcm_http_max_header_bytes

Максимальный размер заголовков запроса в байтах. Значение 0 — используется ограничение по умолчанию (1 МБ). Тип: int. Значение по умолчанию: 0.

tcm_http_api_timeout

Таймаут обработки API-запроса. Не действует на WebSocket-подключения. Тип: string. Значение по умолчанию: 10s.

tcm_http_api_update_interval

Период обновления данных, отдаваемых API. Тип: string. Значение по умолчанию: 5s.

tcm_http_frontend_dir

Путь к директории со статическими файлами веб-интерфейса. Пустое значение — используется встроенный веб-интерфейс TCM. Тип: string. Значение по умолчанию: "".

tcm_http_max_static_size

Максимальный размер раздаваемого статического файла в байтах. Тип: int. Значение по умолчанию: 104857600 (100 МиБ).

tcm_http_graphql_complexity

Максимальная допустимая сложность GraphQL-запроса. Тип: int. Значение по умолчанию: 100.

HTTPS (TLS) веб-интерфейса

Параметры TLS для HTTPS-подключений к веб-интерфейсу и API самого TCM (секция http.tls конфигурации TCM).

Переменная

Описание

tcm_http_tls_enabled

Включить HTTPS для веб-интерфейса и API TCM. Тип: bool. Значение по умолчанию: false.

tcm_http_tls_cert_file

Путь к серверному TLS-сертификату TCM. Обязателен при включённом HTTPS. Тип: string. Значение по умолчанию: "".

tcm_http_tls_key_file

Путь к приватному ключу серверного сертификата TCM. Обязателен при включённом HTTPS. Тип: string. Значение по умолчанию: "".

tcm_http_tls_min

Минимальная версия TLS: строка "1.0"—"1.3" (например, "1.2") или числовой код версии (например, 0x0303 для TLS 1.2). Пустая строка — значение по умолчанию библиотеки Go TLS. Тип: string. Значение по умолчанию: "1.2".

tcm_http_tls_max

Максимальная версия TLS. Формат аналогичен tcm_http_tls_min. Тип: string. Значение по умолчанию: "1.3".

tcm_http_tls_curve_preferences

Порядок предпочтения эллиптических кривых для TLS: список имён кривых Go (например, X25519, P256) или их числовых идентификаторов. Пустой список — значения по умолчанию библиотеки Go TLS. Тип: list. Значение по умолчанию: [].

tcm_http_tls_cipher_suites

Список разрешённых наборов шифров: имена констант Go TLS_* (например, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) или их числовые коды. Применимо только к TLS 1.2 и ниже; наборы шифров TLS 1.3 не настраиваются. Пустой список — значения по умолчанию библиотеки Go TLS. Тип: list. Значение по умолчанию: [].

WebSocket

Параметры WebSocket-подключений, которые веб-интерфейс использует для подписок API (секция http.websocket конфигурации TCM).

Переменная

Описание

tcm_http_websocket_read_buffer_size

Размер буфера чтения WebSocket-соединения в байтах. Тип: int. Значение по умолчанию: 16384.

tcm_http_websocket_write_buffer_size

Размер буфера записи WebSocket-соединения в байтах. Тип: int. Значение по умолчанию: 16384.

tcm_http_websocket_keepalive_ping_interval

Интервал отправки keep-alive ping по WebSocket-соединению. Тип: string. Значение по умолчанию: 20s.

tcm_http_websocket_handshake_timeout

Таймаут WebSocket-handshake. Тип: string. Значение по умолчанию: 10s.

tcm_http_websocket_init_timeout

Таймаут инициализации WebSocket-подключения (ожидание инициирующего сообщения клиента). Тип: string. Значение по умолчанию: 15s.

Cookie веб-сессии

Параметры cookie веб-сессии TCM (секция http.websession-cookie конфигурации TCM).

Переменная

Описание

tcm_http_websession_cookie_name

Имя cookie веб-сессии. Тип: string. Значение по умолчанию: tcm.

tcm_http_websession_cookie_path

Атрибут Path cookie. Пустое значение нарушает работу функции tt connect в веб-интерфейсе TCM. Тип: string. Значение по умолчанию: /.

tcm_http_websession_cookie_domain

Атрибут Domain cookie. Пустое значение — cookie действует для хоста, с которого был установлен. Тип: string. Значение по умолчанию: "".

tcm_http_websession_cookie_ttl

Время жизни веб-сессии. Тип: string. Значение по умолчанию: 2h0m0s.

tcm_http_websession_cookie_secure

Устанавливать атрибут Secure: браузер отправляет cookie только по HTTPS. Рекомендуется при включённом HTTPS. Тип: bool. Значение по умолчанию: false.

tcm_http_websession_cookie_http_only

Устанавливать атрибут HttpOnly: cookie недоступен из JavaScript. Тип: bool. Значение по умолчанию: true.

tcm_http_websession_cookie_same_site

Атрибут SameSite cookie: 1 — не задавать атрибут (браузер применяет поведение по умолчанию, обычно Lax), 2 — Lax, 3 — Strict, 4 — None. Значение 4 (None) допускает межсайтовую отправку cookie и требует tcm_http_websession_cookie_secure: true. Тип: int. Значение по умолчанию: 1.

tcm_http_websession_cookie_cleanup_period

Период очистки истёкших веб-сессий. Тип: string. Значение по умолчанию: 2m0s.

CORS

Параметры CORS для API TCM (секция http.cors конфигурации TCM). Требуются, если к API TCM обращаются из браузера с другого источника (origin).

Переменная

Описание

tcm_http_cors_enabled

Включить обработку CORS. Тип: bool. Значение по умолчанию: false.

tcm_http_cors_allowed_origins

Список разрешённых источников. Пустой список при включённом CORS разрешает запросы с любых источников. Тип: list. Значение по умолчанию: [].

tcm_http_cors_allowed_methods

Список разрешённых HTTP-методов. Пустой список разрешает GET, POST, HEAD. Тип: list. Значение по умолчанию: [].

tcm_http_cors_allowed_headers

Список разрешённых заголовков запроса. Пустой список разрешает Accept, Content-Type, X-Requested-With. Тип: list. Значение по умолчанию: [].

tcm_http_cors_exposed_headers

Список заголовков ответа, доступных браузеру. Тип: list. Значение по умолчанию: [].

tcm_http_cors_allow_credentials

Разрешить передачу учётных данных (cookie, заголовки авторизации) в CORS-запросах. Тип: bool. Значение по умолчанию: false.

tcm_http_cors_debug

Включить отладочный журнал обработчика CORS. Тип: bool. Значение по умолчанию: false.

Переменные генератора инвентаря

Эти переменные задаются в секции constants: инвентаря (не являются переменными роли по умолчанию) и используются генератором инвентаря при автоматическом формировании tcm_initial_clusters. Статического значения по умолчанию в роли нет.

Переменная

Описание

tcm_cluster_display_name

Отображаемое имя кластера в веб-интерфейсе TCM. Если не задано — используется cluster_name из инвентаря. Тип: string. Значение по умолчанию: не задано (задаётся в constants: инвентаря).

tcm_cluster_id

Идентификатор кластера в TCM (UUID). Если не задано — TCM генерирует его автоматически при создании кластера. Тип: string. Значение по умолчанию: не задано (задаётся в constants: инвентаря).

tcm_cluster_etcd_tls_skip_verify

Пропуск проверки SSL-сертификата etcd кластера в подключении TCM → etcd кластера (через initial_clusters). Не влияет на экземпляры Tarantool. Тип: boolean. Значение по умолчанию: не задано (задаётся в constants: инвентаря; false).

tcm_cluster_etcd_tls_skip_san_verify

Пропуск проверки SAN в SSL-сертификате etcd кластера в подключении TCM → etcd кластера (через initial_clusters). Не влияет на экземпляры Tarantool. Тип: boolean. Значение по умолчанию: не задано (задаётся в constants: инвентаря; false).

tcm_tarantool_connection_username

Имя пользователя, которым TCM подключается к экземплярам управляемого кластера (поле tarantool-connection.username в tcm_initial_clusters). Пароль генератор берёт из tarantool_config_global.credentials.users[<username>].password этого же кластера; если выбранный пользователь или его пароль отсутствуют, подставляется пустая строка (генератор не создаёт пользователя и не проверяет аутентификацию; пустой пароль может быть намеренным, например для guest). Пустое значение переменной также приводит к client. Применяется к автоматически формируемым записям управляемых кластеров; для static-записи TbCS используются tcm_tbcs_static_config.username / password. Тип: string. Значение по умолчанию: client.

Журнал аудита TCM (auditlog)

Переменные для настройки initial-settings.auditlog — журнала аудита действий пользователей и security-событий в TCM.

Переменная

Описание

tcm_initial_settings_auditlog_enabled

Включает ведение журнала аудита. Если false — секция initial-settings.auditlog в конфигурации не генерируется. Тип: bool. Значение по умолчанию: false.

tcm_initial_settings_auditlog_stdout

Дублировать события аудита в stdout. Тип: bool. Значение по умолчанию: false.

tcm_initial_settings_auditlog_protocol

Способ вывода событий аудита: file или syslog. Тип: string. Значение по умолчанию: "file".

tcm_initial_settings_auditlog_file_output

Путь к файлу журнала аудита (используется при protocol: file). По умолчанию указывает в ту же директорию, куда пишется основной журнал TCM (tcm_log_directory), чтобы избежать ошибок доступа. Тип: string. Значение по умолчанию: "{{ tcm_log_directory }}/audit.log".

tcm_initial_settings_auditlog_file_max_size

Максимальный размер файла журнала аудита в МБ до ротации. Тип: int. Значение по умолчанию: 0.

tcm_initial_settings_auditlog_file_max_backups

Максимальное число хранимых резервных копий журнала аудита. Тип: int. Значение по умолчанию: 0.

tcm_initial_settings_auditlog_file_max_age

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

tcm_initial_settings_auditlog_file_compress

Сжимать (gzip) резервные копии журнала аудита при ротации. Тип: bool. Значение по умолчанию: false.

tcm_initial_settings_auditlog_syslog_protocol

Протокол доставки для protocol: syslog (udp или tcp). Тип: string. Значение по умолчанию: "udp".

tcm_initial_settings_auditlog_syslog_output

Адрес syslog-сервера в формате host:port (используется при protocol: syslog). Тип: string.

tcm_initial_settings_auditlog_syslog_priority

Severity-уровень для вывода событий аудита в syslog. Тип: string.

tcm_initial_settings_auditlog_syslog_facility

Категория (facility) для вывода событий аудита в syslog. Тип: string.

tcm_initial_settings_auditlog_syslog_timeout

Таймаут ответа syslog-сервера для журнала аудита. Тип: string. Значение по умолчанию: "2s".

tcm_initial_settings_auditlog_filters

Список типов событий для записи в журнал аудита (например, auth.fail, auth.ok, access.denied, user.add, role.update, cluster.config.save). Пустой список означает отсутствие фильтрации. Тип: list. Значение по умолчанию: [].

tcm_initial_settings_password_policy_enabled

Включает генерацию секции initial-settings.password-policy. Политика из этой секции применяется при первоначальной инициализации хранилища TCM (bootstrap). Если false, секция не генерируется: используется сохранённая политика, а при её отсутствии — встроенная. Изменение этого флага после завершения bootstrap не изменяет сохранённую политику. Тип: bool. Значение по умолчанию: false. Доступно с TCM 1.10.0.

tcm_initial_settings_password_policy_min_length

Минимальная длина пароля (0–32). Тип: int. Значение по умолчанию: 16.

tcm_initial_settings_password_policy_uppercase

Требовать заглавные буквы. Тип: bool. Значение по умолчанию: true.

tcm_initial_settings_password_policy_lowercase

Требовать строчные буквы. Тип: bool. Значение по умолчанию: true.

tcm_initial_settings_password_policy_digits

Требовать цифры. Тип: bool. Значение по умолчанию: true.

tcm_initial_settings_password_policy_special_chars

Требовать специальные символы. Тип: bool. Значение по умолчанию: true.

tcm_initial_settings_password_policy_history_length

Число запоминаемых предыдущих паролей (0–10). Тип: int. Значение по умолчанию: 4.

tcm_initial_settings_password_policy_lifetime_days

Срок действия пароля в днях (0–365). Тип: int. Значение по умолчанию: 90.

tcm_initial_settings_password_policy_warning_lifetime_days

Число дней после установки или смены пароля, по истечении которых TCM присваивает ещё не истёкшему паролю статус предупреждения. Порог отсчитывается от даты смены пароля. Значение 0 отключает предупреждение по этому порогу. Допустимый диапазон: 0–365. Тип: int. Значение по умолчанию: 30.

tcm_initial_settings_password_policy_max_incorrect_input

Максимальное число неверных попыток ввода пароля до блокировки (0–20). Тип: int. Значение по умолчанию: 4.

tcm_initial_settings_password_policy_blocking_time

Время блокировки пользователя после превышения лимита попыток, сек. Тип: int. Значение по умолчанию: 360.

tcm_security_require_bootstrap_password_change

Требовать смену пароля bootstrap-администратора при первом входе. Работает как с автогенерированным паролем, так и с паролем, заданным через tcm_bootstrap_password. Тип: bool. Значение по умолчанию: false. Доступно в TCM ≥ 1.10.0.

tcm_security_encryption_key

Ключ шифрования паролей, которые TCM использует для доступа к Tarantool/etcd-кластерам. Должен быть длиной 16, 24 или 32 байта. Тип: string. Значение по умолчанию: "". При пустом значении поле security.encryption-key в конфигурации TCM не добавляется, и TCM использует встроенный ключ шифрования.

tcm_security_encryption_key_file

Путь к файлу с ключом шифрования паролей, которые TCM использует для доступа к Tarantool/etcd-кластерам (альтернатива tcm_security_encryption_key; добавляет в конфигурацию TCM поле security.encryption-key-file). Тип: string. Значение по умолчанию: не задано.

tcm_migrations_duration

Максимальная длительность выполнения миграций в хранилище состояния TCM при запуске (поле migrations.duration конфигурации TCM). Тип: string. Значение по умолчанию: 6m0s.

tcm_default_cluster

Создавать ли Default cluster автоматически при первом старте TCM. Тип: bool. Значение по умолчанию: true.

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