Переменные TCM
В этом разделе приведены переменные окружения для роли cluster_manager.
Роль определяет настройки веб-интерфейса
Tarantool Cluster Manager.
Переменная | Описание |
|---|---|
| Права доступа на директории TCM. Тип: |
| Права доступа на файлы TCM. Тип: |
Переменная | Описание |
|---|---|
| Пользователь ОС, от имени которого запускается TCM. Тип: |
| Группа ОС, от имени которой запускается TCM. Тип: |
| Базовая директория установки TCM. Тип: |
| Директория для распаковки дистрибутива TCM. Тип: |
| Директория с исполняемым файлом TCM. Тип: |
| Путь к исполняемому файлу TCM. Тип: |
| Путь к архиву с пакетом установки TCM. Передаётся при запуске сценария установки. Тип: |
| Директория для файлов журнала TCM. Тип: |
| Директория конфигурации TCM. Тип: |
| Имя файла конфигурации TCM. Тип: |
| Полный путь к файлу конфигурации TCM. Тип: |
| Имя systemd-юнита TCM. Тип: |
Переменная | Описание |
|---|---|
| Режим работы TCM: |
| Провайдер собственного хранилища состояния TCM: |
| Создавать ли |
| Максимальная длительность миграций хранилища TCM при обновлении схемы. Тип: |
| Начальный пароль администратора TCM, задаваемый при первом запуске. Если не задан, TCM генерирует пароль автоматически. Тип: |
| Начальный API-токен администратора TCM, задаваемый при первом запуске. Используется, в частности, плейбуком |
| Список управляемых кластеров, регистрируемых при первом запуске TCM (секция |
| Список ролей, которые будут созданы при первом запуске TCM. Каждая роль может содержать: |
| Список пользователей, которые будут созданы при первом запуске TCM. Каждый пользователь может содержать: |
| Список правил доступа (ACL) к spaces/functions, создаваемых при первом запуске TCM. Каждое правило может содержать: |
| Список правил Key ACL (доступ к отдельным ключам конфигурации кластера), создаваемых при первом запуске TCM. Каждое правило может содержать: |
| Список LDAP-провайдеров, создаваемых при первом запуске TCM. Каждый элемент может содержать: |
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 интерпретирует значение в мегабайтах. Применяется при |
| Максимальный срок хранения файлов ротации в днях. Значение |
| Максимальное число хранимых файлов ротации. Значение |
| Сжимать (gzip) файлы журнала при ротации. Применяется при |
| Добавлять стек вызовов в записи журнала. Тип: |
| Добавлять в записи журнала источник (файл и строку кода). Тип: |
| Отключить цветной вывод журнала в |
| Протокол доставки ( |
| Адрес приёмника в формате |
| Подсистема syslog ( |
| Зарезервировано. Передаётся в конфигурацию TCM ( |
| Зарезервировано. Передаётся в конфигурацию TCM ( |
| Время ожидания при подключении к syslog-серверу. Применяется при |
| Дополнительные выводы журнала (секция |
Параметры HTTP-сервера TCM, который обслуживает веб-интерфейс и API (секция http конфигурации TCM).
Переменная | Описание |
|---|---|
| Адрес, на котором TCM принимает HTTP-подключения. Тип: |
| Порт, на котором TCM принимает HTTP-подключения. Тип: |
| Тип сети для прослушивания: |
| Включить трассировку HTTP-запросов в журнале. Тип: |
| Максимальный размер тела HTTP-запроса в байтах. Тип: |
| Таймаут чтения HTTP-запроса целиком. Тип: |
| Таймаут чтения заголовков HTTP-запроса. Тип: |
| Таймаут записи HTTP-ответа. Тип: |
| Таймаут keep-alive соединения в ожидании следующего запроса. Тип: |
| Отключить встроенный обработчик запросов |
| Максимальный размер заголовков запроса в байтах. Значение |
| Таймаут обработки API-запроса. Не действует на WebSocket-подключения. Тип: |
| Период обновления данных, отдаваемых API. Тип: |
| Путь к директории со статическими файлами веб-интерфейса. Пустое значение — используется встроенный веб-интерфейс TCM. Тип: |
| Максимальный размер раздаваемого статического файла в байтах. Тип: |
| Максимальная допустимая сложность GraphQL-запроса. Тип: |
Параметры TLS для HTTPS-подключений к веб-интерфейсу и API самого TCM (секция http.tls конфигурации TCM).
Переменная | Описание |
|---|---|
| Включить HTTPS для веб-интерфейса и API TCM. Тип: |
| Путь к серверному TLS-сертификату TCM. Обязателен при включённом HTTPS. Тип: |
| Путь к приватному ключу серверного сертификата TCM. Обязателен при включённом HTTPS. Тип: |
| Минимальная версия TLS: строка |
| Максимальная версия TLS. Формат аналогичен |
| Порядок предпочтения эллиптических кривых для TLS: список имён кривых Go (например, |
| Список разрешённых наборов шифров: имена констант Go |
Параметры WebSocket-подключений, которые веб-интерфейс использует для подписок API (секция http.websocket конфигурации TCM).
Переменная | Описание |
|---|---|
| Размер буфера чтения WebSocket-соединения в байтах. Тип: |
| Размер буфера записи WebSocket-соединения в байтах. Тип: |
| Интервал отправки keep-alive ping по WebSocket-соединению. Тип: |
| Таймаут WebSocket-handshake. Тип: |
| Таймаут инициализации WebSocket-подключения (ожидание инициирующего сообщения клиента). Тип: |
Параметры cookie веб-сессии TCM (секция http.websession-cookie конфигурации TCM).
Переменная | Описание |
|---|---|
| Имя cookie веб-сессии. Тип: |
| Атрибут |
| Атрибут |
| Время жизни веб-сессии. Тип: |
| Устанавливать атрибут |
| Устанавливать атрибут |
| Атрибут |
| Период очистки истёкших веб-сессий. Тип: |
Параметры CORS для API TCM (секция http.cors конфигурации TCM). Требуются, если к API TCM обращаются из браузера с другого источника (origin).
Переменная | Описание |
|---|---|
| Включить обработку CORS. Тип: |
| Список разрешённых источников. Пустой список при включённом CORS разрешает запросы с любых источников. Тип: |
| Список разрешённых HTTP-методов. Пустой список разрешает |
| Список разрешённых заголовков запроса. Пустой список разрешает |
| Список заголовков ответа, доступных браузеру. Тип: |
| Разрешить передачу учётных данных (cookie, заголовки авторизации) в CORS-запросах. Тип: |
| Включить отладочный журнал обработчика CORS. Тип: |
TCM использует два независимых подключения к etcd, которые настраиваются разными группами переменных:
-
TCM → собственный etcd — хранение состояния TCM (пользователи, роли, регистрации кластеров). Настраивается переменными
tcm_etcd_*иtcm_etcd_tls_*(в динамическом инвентаре — ключами секцииtcm:). -
TCM → etcd кластера (через
initial_clusters) — чтение конфигурации управляемого кластера. Настраивается переменнымиtarantool_config_etcd_ssl_*(общие переменные Tarantool, также используются экземплярами и рольюetcd) иtcm_cluster_etcd_tls_*в секцииconstants:(см. Подключение TCM к etcd управляемого кластера).
Параметры собственного хранилища состояния TCM на etcd (секция storage.etcd конфигурации TCM, применяются при tcm_storage_provider: etcd).
Переменная | Описание |
|---|---|
| Адрес etcd по умолчанию. Используется при формировании |
| Порт etcd по умолчанию. Используется при формировании |
| Схема подключения TCM к собственному etcd: |
| Список точек подключения к etcd, доступных с серверов TCM. Тип: |
| Префикс ключей TCM в etcd. Тип: |
| Имя пользователя для подключения TCM к собственному хранилищу (etcd, либо TbCS при |
| Пароль для подключения TCM к собственному хранилищу. Тип: |
| Путь к файлу с паролем для подключения TCM к собственному хранилищу. При задании пароль читается из файла. Тип: |
| Таймаут установки подключения к etcd. Тип: |
| Интервал автоматической синхронизации списка членов etcd-кластера. Значение |
| Интервал keep-alive ping для подключения к etcd. Тип: |
| Таймаут ожидания ответа на keep-alive ping до разрыва подключения. Тип: |
| Таймаут начальной загрузки (bootstrap) хранилища TCM. Тип: |
| Максимальный размер клиентского запроса к etcd в байтах. Должен быть меньше серверного ограничения etcd. Тип: |
| Разрешить отправку запросов к etcd без ожидания потока подключения (параметр |
| Параметры встроенного etcd-сервера (секция |
Параметры TLS для подключения TCM к собственному etcd (секция storage.etcd.tls конфигурации TCM).
Переменная | Описание |
|---|---|
| Включить TLS для подключения TCM к собственному etcd. Тип: |
| Путь к клиентскому TLS-сертификату, который TCM предъявляет серверу etcd. Тип: |
| Путь к приватному ключу клиентского сертификата. Тип: |
| Путь к доверенному CA-сертификату для проверки сертификата сервера etcd (ключ |
| Отключить проверку сертификата сервера etcd (ключ |
| Имя сервера для проверки сертификата etcd (SNI). Тип: |
| Список разрешённых наборов шифров: имена констант Go |
| Ограничение по Common Name сертификата (ключ |
| Ограничение по имени хоста в сертификате (ключ |
| Разрешить сертификаты с пустым Common Name (ключ |
Пример инвентаря:
Из этого инвентаря роль сформирует секцию storage.etcd.tls в tcm.yml:
Если используется встроенный etcd, серверные TLS-ключи задаются в его собственных блоках через tcm_storage_etcd_embed:
В этом случае значение попадёт в storage.etcd.embed.tls и будет применено встроенным etcd-сервером.
Если tcm_storage_provider: tarantool, состояние TCM хранится в Tarantool-based Configuration Storage (TbCS).
Учётные данные подключения берутся из tcm_etcd_username / tcm_etcd_password (имя пользователя и пароль)
и tcm_etcd_password_file (файл с паролем). TLS включается при tcm_tarantool_ssl_transport: ssl.
Параметры соответствуют секции storage.tarantool конфигурации TCM.
Переменная | Описание |
|---|---|
| Транспорт подключения TCM к TbCS: |
| Путь к клиентскому TLS-сертификату. Тип: |
| Путь к приватному ключу клиента. Тип: |
| Путь к CA-сертификату для проверки сервера. Тип: |
| Список наборов шифров OpenSSL для TLS-подключения. Тип: |
| Пароль приватного ключа клиента. Тип: |
| Путь к файлу с паролем приватного ключа клиента. Тип: |
| Устаревший одиночный адрес TbCS. Для обратной совместимости добавляется к списку адресов, если его там нет. Используйте |
| Метод аутентификации Tarantool: числовой код из go-tarantool ( |
| Таймаут запросов к TbCS. Тип: |
| Интервал между попытками переподключения к TbCS. Тип: |
| Максимальное число попыток переподключения. Значение |
| Ограничение числа запросов к TbCS (запросов в секунду, параметр |
| Действие при превышении |
| Параметр |
| Не загружать схему Tarantool при подключении (параметр |
| Требуемый метод аутентификации протокола Tarantool: числовой код ( |
| Требуемая версия протокола Tarantool ( |
| Список требуемых функций протокола Tarantool. Тип: |
| Параметры встроенного хранилища TbCS (секция |
Эти переменные задаются в секции constants: динамического инвентаря и используются генератором для формирования
блока storage-connection.etcd-connection.tls записей tcm_initial_clusters — подключения TCM к etcd
управляемого кластера (не путать с собственным etcd TCM).
Переменная | Описание |
|---|---|
| Схема подключения к etcd: |
| Путь к клиентскому TLS-сертификату для подключения к etcd кластера (ключ |
| Путь к приватному ключу клиентского сертификата (ключ |
| Путь к доверенному CA-сертификату для проверки сертификата сервера etcd (ключ |
| Отключить проверку сертификата сервера etcd управляемого кластера (ключ |
Параметры подключения и опроса управляемых кластеров (секция cluster конфигурации TCM).
Переменная | Описание |
|---|---|
| Ограничение числа одновременных подключений к экземплярам управляемых кластеров. Тип: |
| Таймаут запросов к экземплярам Tarantool управляемого кластера. Тип: |
| Таймаут проверки доступности (ping) экземпляра Tarantool. Тип: |
| Команда |
| Период обновления состояния управляемого кластера. Тип: |
| Таймаут обновления состояния управляемого кластера. Тип: |
| Период обнаружения топологии управляемого кластера. Тип: |
| Имя поля индекса шардирования, используемого при анализе кластера. Тип: |
| Допустимое расхождение времени при оценке состояния кластера. Тип: |
| Порог фрагментации в процентах для отображения предупреждений. Тип: |
| Таймаут проверки связности экземпляров кластера. Тип: |
| Начальная задержка перед повторной попыткой подключения к кластеру. Тип: |
| Максимальная задержка между повторными попытками подключения. Тип: |
| Число неудачных попыток до применения backoff. Тип: |
| Таймаут проверки пула подключений к кластеру. Тип: |
| Задержка между повторными попытками наблюдателя (watcher) за изменениями кластера. Тип: |
| Максимальное число спейсов, по которым собирается статистика. Тип: |
| Таймаут сбора статистики кластера. Тип: |
Эти переменные задаются в секции constants: и используются при автоматической генерации tcm_initial_clusters.
Переменная | Описание |
|---|---|
| Отображаемое имя кластера в веб-интерфейсе TCM. Если не задано — используется |
| Идентификатор кластера в TCM (UUID). Если не задано — TCM генерирует его автоматически при создании кластера. Тип: |
| Имя пользователя, которым TCM подключается к инстансам управляемого кластера (поле |
Ограничения на количество сущностей в TCM (секция limits конфигурации TCM).
Переменная | Описание |
|---|---|
| Максимальное число пользователей TCM. Тип: |
| Максимальное число управляемых кластеров. Тип: |
| Максимальное число ролей. Тип: |
| Максимальное число веб-хуков. Тип: |
| Максимальное число секретов одного пользователя. Тип: |
| Максимальное число одновременных веб-сессий одного пользователя. Тип: |
| Максимальное число пользователей, привязанных к кластеру. Тип: |
Флаги включения дополнительных функций TCM (секция feature конфигурации TCM).
Переменная | Описание |
|---|---|
| Включить интеграцию с tt graph. Тип: |
| Включить поддержку Tarantool Column Store. Тип: |
| Включить поддержку Tarantool Queue Enterprise. Тип: |
| Включить API-токены. Тип: |
| Включить работу с кортежами. Тип: |
| Включить поддержку Tarantool Clusters Federation. Тип: |
Вместо отдельных переменных можно задать словарь tcm_features. В статическом инвентаре ключи словаря
соответствуют именам опций конфигурации TCM (ttgraph, column-store, tqe, api-token, tuples, tcf)
и объединяются со значениями tcm_feature_*. В динамическом инвентаре ключи словаря преобразуются в имена
переменных: api_token → tcm_feature_api_token, column_store → tcm_feature_column_store и т.д.
Параметры безопасности TCM (секция security конфигурации TCM).
Переменная | Описание |
|---|---|
| Список включённых методов аутентификации: |
| Стоимость хеширования паролей (bcrypt cost). Тип: |
| Ключ шифрования паролей, которые TCM использует для доступа к Tarantool/etcd-кластерам. Должен быть длиной 16, 24 или 32 байта. Тип: |
| Путь к файлу с ключом шифрования. Альтернатива |
| Включить проверку целостности конфигурации кластеров. Тип: |
| Требовать смену пароля bootstrap-администратора при первом входе. Работает как с автогенерированным паролем, так и с паролем, заданным через |
| Путь к приватному ключу подписи конфигурации кластеров. Тип: |
Секция addon конфигурации TCM устарела: в актуальных версиях TCM эти опции не действуют.
Переменные сохранены для обратной совместимости.
Переменная | Описание |
|---|---|
| Включить поддержку addons (не действует в актуальных версиях TCM). Тип: |
| Директория с addons (не действует в актуальных версиях TCM). Тип: |
| Максимальный размер загружаемого addon в байтах (не действует в актуальных версиях TCM). Тип: |
| Список директорий с addon для разработки (не действует в актуальных версиях TCM). Тип: |
Переменные для настройки initial-settings.auditlog — аудит-логирования
действий пользователей и security-событий в TCM.
Переменная | Описание |
|---|---|
| Включает аудит-логирование. Если |
| Дублировать события аудита в stdout. Тип: |
| Способ вывода событий аудита: |
| Путь к файлу аудит-лога (используется при |
| Максимальный размер файла аудит-лога в МБ до ротации. Тип: |
| Максимальное число хранимых бэкап-файлов аудит-лога. Тип: |
| Максимальный срок хранения бэкапов аудит-лога в днях. Тип: |
| Сжимать (gzip) бэкапы аудит-лога при ротации. Тип: |
| Протокол доставки для |
| Адрес syslog-сервера в формате |
| Severity-уровень для syslog-вывода аудит-событий. Тип: |
| Категория (facility) для syslog-вывода аудит-событий. Тип: |
| Таймаут ответа syslog-сервера для аудит-лога. Тип: |
| Список типов событий для записи в аудит-лог (например, |
| Включает генерацию секции |
| Минимальная длина пароля (0–32). Тип: |
| Требовать заглавные буквы. Тип: |
| Требовать строчные буквы. Тип: |
| Требовать цифры. Тип: |
| Требовать специальные символы. Тип: |
| Число запоминаемых предыдущих паролей (0–10). Тип: |
| Срок действия пароля в днях (0–365). Тип: |
| Число дней после установки или смены пароля, по истечении которых TCM присваивает ещё не истёкшему паролю статус предупреждения. Порог отсчитывается от даты смены пароля. Значение |
| Максимальное число неверных попыток ввода пароля до блокировки (0–20). Тип: |
| Время блокировки пользователя после превышения лимита попыток, сек. Тип: |
Переменные плейбука tarantool.enterprise.tcm_add_tbcs, который добавляет кластер TbCS в уже запущенный
TCM через API (см. сценарий добавления кластера TbCS в TCM).
Переменная | Описание |
|---|---|
| Действие с кластером: |
| Имя кластера в TCM. Тип: |
| Описание кластера в TCM. Тип: |
| Цвет кластера в веб-интерфейсе TCM. Тип: |
| Имя пользователя для |
| Пароль для |
| Схема обращения к API TCM: |