Обзор веб-интерфейса
Веб-интерфейс Тarantool Cluster Manager доступен по имени хоста и порту, которые
задаются параметрами конфигурации http.host и
http.port. Если включен TLS, используется протокол https, в
противном случае – http. При локальном запуске с конфигурацией по
умолчанию TCM доступен по адресу http://127.0.0.1:8080.
Для входа в TCM после начальной загрузки используйте следующие учетные данные:
-
Имя пользователя:
admin -
Пароль: первоначальный пароль, который отображается в журнале загрузки TCM в сообщении следующего вида:
Jun 11 11:24:08.900 WRN Generated super admin credentials login=admin password=jS9PsdkEJBYNhdMtSswMlxDR1vdbfc1N

После входа с паролем по умолчанию:
- Настройте политику паролей в соответствии с требованиями безопасности, принятыми в вашей организации.
- Измените пароль пользователя
adminна странице Настройки пользователя.
Чтобы выйти из TCM, нажмите на имя пользователя в заголовке и выберите Log out.
Веб-интерфейс TCM состоит из трех частей:
- Панель навигации слева отображает список страниц, доступных пользователю. Панель навигации можно свернуть, нажав на значок крестика в ее верхней части.
- В Заголовке в верхней части можно получить доступ к уведомлениям и настройкам пользователя.
- Рабочая область отображает содержимое выбранной страницы.

Пункт Onboarding на панели навигации запускает интерактивное руководство. С его помощью можно ознакомиться с основными возможностями TCM напрямую в веб-интерфейсе.
В пункте Page visibility описано большинство страниц TCM. Точный набор страниц и элементов управления, доступных конкретному пользователю, определяется правами доступа этого пользователя.
Некоторые функции, например редактирование схемы данных, доступны только в режиме разработки. Переключиться в него можно в настройках пользователя для пользователя Default Admin. Подробнее о режиме разработки см. Режим разработки.
Для удобства навигации страницы TCM сгруппированы в панели навигации по их содержимому. Доступны следующие группы страниц:
- Cluster: взаимодействие с выбранным кластером.
- Clusters: взаимодействие со всеми подключенными кластерами в целом.
- Users: управление доступом.
- Tools: администрирование TCM.
- Settings: управление настройками TCM во время выполнения. Далее описано, какие действия можно выполнять на страницах этих групп.
Группа Cluster содержит страницы для взаимодействия с конкретным кластером. Чтобы переключиться между кластерами, нажмите на название группы Cluster и выберите подключенный кластер из выпадающего списка.
Страница Stateboard в группе Cluster – это главная страница для мониторинга состояния кластера и взаимодействия с его экземплярами.

На этой странице можно:
- Просматривать и редактировать топологию кластера.
- Группировать и фильтровать экземпляры по различным критериям.
- Просматривать статистику по памяти и версии Tarantool, запущенные на экземплярах.
- Переходить на страницы экземпляров, нажав на имя экземпляра в списке топологии кластера.
- Запускать и останавливать экземпляры (в режиме разработки).
Подробнее об использовании страницы Stateboard см. Просмотр состояния кластера.
Страница экземпляра открывается при нажатии на имя экземпляра на странице Stateboard.

На странице экземпляра доступны вкладки для выполнения действий с выбранным экземпляром Tarantool:
- Вкладки Details и State: просмотр информации об экземпляре в
виде читаемой таблицы или в виде консольного вывода
box.cfg,box.infoи других встроенных функций. - Вкладка Logs: просмотр журналов экземпляра.
- Вкладка Slabs: просмотр статистики slab-аллокатора.
- Вкладка Users: управление пользователями и ролями Tarantool на экземпляре.
- Funcs: управление и вызов хранимых функций.
- Metrics: просмотр метрик экземпляра.
- Warnings: просмотр предупреждений, возникших на экземпляре. Вкладка отображается при наличии предупреждений на экземпляре.
- Errors: просмотр ошибок, возникших на экземпляре. Вкладка отображается при наличии ошибок на экземпляре.
- Вкладки SQL и Terminal: выполнение SQL- и Lua-команд на
экземпляре. В TCM предусмотрены два способа взаимодействия с экземплярами Tarantool:
direct- терминал, который подключается напрямую к экземпляру Tarantool с использованием библиотеки go-tarantool, в обход утилитыtt connect.tt-connect- терминал, который использует утилиту tt-cli для подключения к экземпляру Tarantool.
В верхней части страницы экземпляра расположено меню Actions, в котором можно:
- Перейти в проводник экземпляра.
- Изменить конфигурацию экземпляра.
- Удалить экземпляр.
Вкладка Slabs в веб-интерфейсе TCM визуализирует распределение памяти в каждом экземпляре Tarantool с использованием slab-аллокатора.
Эта вкладка полезна для:
- Выявления фрагментации памяти.
- Анализа насыщения блоков slab по размеру объектов.
- Отладки чрезмерного использования памяти в реальном времени.
Эта визуализация основана на результатах выполнения:
box.slab.stats()
Эта функция возвращает Lua-таблицу со статистикой распределения памяти по размерным классам (по размерам объектов) из slab-аллокатора. Подробнее см. box.slab.stats().
Каждая запись в результатах содержит:
item_size: размерный класс объекта.slab_count: количество slab-блоков.slab_size: размер памяти каждого slab-блока.item_count: количество выделенных объектов.mem_used: использовано байт.mem_free: свободно байт.
Эти значения обрабатываются и отображаются в виде визуальных элементов в интерфейсе.
Каждый блок представляет отдельный slab (область памяти фиксированного размера). Цвет указывает на степень заполнения slab-блока:
-
Зеленый - slab-блок заполнен менее чем на 30%.
-
Красный - slab-блок заполнен полностью (100% использования).
-
Градиент от зеленого к красному - указывает на промежуточные уровни заполнения (например, 30%, 50%, 75%) Цвет плавно переходит из одного в другой, обеспечивая быстрый визуальный способ понять, какие slab-блоки:
- Активно используются.
- Частично задействованы.
- Потенциально недоиспользуются или способствуют фрагментации памяти.
На скриншоте с примером:
- Slab-блок №17 (168 КБ) - заполнен на 75% (темно-красный).
- Slab-блок №18 (320 КБ) - заполнен на 53% (красно-коричневый).
- Slab-блок №16 (40 КБ) - используется только 1% (ярко-зеленый).
- Slab-блок №2 (56 Б) - используется 60% (промежуточный градиент).
Размер каждого slab-блока при визуализации отражает общий объем памяти,
выделенный для его класса item_size – чем больше выделено памяти,
тем больше визуальное представление.

Общий процент заполнения для slab-блока вычисляется по формуле:
fill % = (item_count * item_size) / (slab_count * slab_size)
Однако каждый slab-блок визуализируется отдельно, поэтому разные уровни заполнения slab-блоков отображаются разными цветами в одной строке.
Выделение памяти slab-аллокатором может различаться на экземплярах в одном наборе реплик из-за различий в конфигурации, порядке загрузки данных и использовании локальной памяти. Причины:
- Выделение памяти slab-аллокатором может отличаться, так как каждый
экземпляр может использовать собственные значения параметров
slab_alloc_factorиslab_alloc_granularity. Эти параметры управляют тем, как память делится на размерные классы и на slab-блоки, влияя на структуру памяти и потенциальную фрагментацию. - Различия также возникают при присоединении реплики или ее перезапуске. Реплика выделяет память для кортежей в порядке первичного индекса, тогда как на мастер-экземпляре выделение памяти происходит в порядке поступления запросов. В результате структуры lab-блоков различаются, и после перезапуска фрагментация на репликах обычно ниже.
- Локальные и временные спейсы существуют только на определенных экземплярах и не реплицируются. Они потребляют память независимо, что приводит к различиям в выделении памяти slab-аллокатором на разных узлах.
Поведение slab-аллокатора можно настроить с помощью двух параметров конфигурации:
- slab_alloc_factor – множитель
для вычисления размерных классов объектов. Значение по умолчанию:
1.05. - slab_alloc_granularity – минимальный
шаг выделения памяти (в байтах) для аллокатора малых
объектов. Значение по умолчанию:
8.
Эти параметры влияют на то, как память выделяется для каждого размерного класса, и могут быть полезны, когда требуется:
- Уменьшить внутреннюю фрагментацию.
- Оптимизировать использование памяти.
- Повысить локальность slab-блоков и производительность.
- Лучше понимать потребление памяти на вкладке Slabs.
Таблица с вариантами использования и рекомендациями:
Сценарий / Цель | Параметры | Эффект | Эффект | Визуализация |
|---|---|---|---|---|
Уменьшение затрат по памяти (небольшие кортежи одного размера) |
| Много размерных классов – минимальные внутренние затраты по памяти | Больше накладных расходов на управление пулами slab-блоков | Много строк, блоки с частичным заполнением, градиент от зеленого к красному |
Оптимизация производительности (кортежи разного размера) |
| Меньше размерных классов – несколько более высокие затраты по памяти | Меньше накладных расходов – более быстрое выделение памяти | Меньше строк, блоки большего размера, контраст цветов: полное или частичное заполнение |
Контроль фрагментации и количества slab-блоков | Зависят от задачи: меньшие значения - больше размерных классов; бОльшие значения – меньше размерных классов | Баланс между внутренними затратами по памяти и количеством slab-блоков | Баланс между накладными расходами и скоростью slab-аллокатора | Баланс между количеством строк и размерами блоков; цвета показывают уровень заполнения |
На странице Configuration доступен интерактивный редактор конфигурации кластера. Он подключен к централизованному хранилищу конфигурации, которое использует кластер. Все изменения, внесенные и примененные на этой странице, передаются в централизованное хранилище.

Подробнее см. Настройка кластеров.
На странице Security доступны элементы управления настройками безопасности кластера.

Подробнее см. Настройки безопасности.
На странице Migrations доступны инструменты централизованного управления миграциями для выбранного кластера.

Подробнее см. Выполнение миграций.
На странице Tuples доступны данные, хранящиеся в пользовательских спейсах выбранного кластера.

На этой странице можно:
- Просматривать список пользовательских спейсов, их размер и движки.
- Просматривать и редактировать кортежи, хранящиеся в пользовательских спейсах.
- Искать кортежи, вводя условие поиска в строке Search.
TCM поддерживает следующие операторы сравнения:
==– равно.>– больше.<– меньше.>=– больше или равно.<=– меньше или равно.
Условие поиска имеет следующую структуру:
index_name comparator value
где:
index_name– имя индекса. Это левая часть выражения.comparator– оператор сравнения (>,>=,==,<=,<). Должен быть отделен пробелами с обеих сторон выражения.value– строковое, числовое или логическое значение. Это правая часть выражения. Строковые значения должны быть заключены в двойные кавычки ("").
Примеры
Приведенное ниже выражение поиска возвращает кортежи с идентификаторами больше 9990:
id > 9990
В TCM результат может выглядеть следующим образом:

В приведенном ниже примере поиск возвращает кортежи со значением индекса
name, равным Ivan:
name == "Ivan"
В приведенном ниже примере задано составное условие поиска. Поиск возвращает всех людей с идентификатором больше 2, родившихся в 1980 году или раньше.
id > 2; year <= 1980;
На вкладке TCF доступен интерфейс для кластеров, работающих в рамках Tarantool Clusters Federation.

Вкладку TCF можно добавить через конфигурационный файл TCM:
# tcm.yamlfeature:tcf: True
Ее также можно включить с помощью переменной окружения или параметра командной строки feature.
Подробнее см. справочник по конфигурации.
На этой странице можно:
- Просматривать информацию о кластерах TCF.
- Переключать состояние кластеров.
- Применять к кластерам операции promote и demote.
- Изменять ключевые параметры кластера.
Чтобы открыть настройки, нажмите Actions (три точки рядом со статусом кластера) и выберите Settings. Доступные параметры:
dml_users: список пользователей DML.cluster1,cluster2: настройки кластера.replication_user: имя пользователя для репликации.replication_password: пароль пользователя для репликации.failover_timeout: время ожидания (в секундах) перед запуском аварийного переключения на другой кластер. Значение по умолчанию:20.initial_status: начальное состояние сервиса.max_suspect_counts: максимальное количество подозрений для аварийного переключения. Значение по умолчанию:3.health_check_delay: задержка (в секундах) между проверками состояния. Значение по умолчанию:2.enable_system_check: включает или отключает проверки состояния на уровне системы. Значение по умолчанию:true.status_ttl: время жизни статуса сервиса. Значение по умолчанию:4.


Подробнее см. Интеграция с TCF.
В TCM доступна встроенная поддержка мониторинга и инспектирования Tarantool Queue Enterprise через веб-интерфейс.
Вкладку TQE можно добавить через конфигурационный файл TCM:
# tcm.yamlfeature:tqe: True
Ее также можно включить с помощью переменной окружения или параметра командной строки feature.
Подробнее см. справочник по конфигурации.
После включения этой функции вкладка TQE появляется в интерфейсе TCM и открывает доступ к страницам Metrics и Queues.
Страницу Metrics можно просматривать в двух форматах:
- В виде графиков.
- В виде таблицы.

На странице Queues отображается информация о времени выполнения для каждой очереди, включая:
- Latency – задержка (мс) между добавлением сообщения в очередь и его обработкой.
- Poll max batch – количество сообщений, получаемых в одном запросе для обработки.
- Deduplication mode – определяет способ обработки дубликатов
сообщений. Дедупликация всегда включена. Доступные режимы:
basic(по умолчанию),extended,keep_latest,keep_first.

На странице Cluster metrics доступны метрики выбранного кластера.

Подробнее см. Просмотр метрик кластера.
На странице Explorer доступны все спейсы конкретного экземпляра, включая системные спейсы.

На этой странице можно:
- Просматривать и редактировать спейсы экземпляра, их размер и движки.
- Просматривать и редактировать кортежи, хранящиеся во всех спейсах экземпляра.
Группа Clusters содержит страницы для управления подключениями кластеров TCM.
На странице Clusters представлен список кластеров Tarantool, подключенных к TCM.

На этой странице можно:
- Подключать кластеры Tarantool к TCM.
- Изменять подключение кластеров.
- Отключать кластеры.
Подробнее см. Подключение кластеров.
На странице ACL отображается список контроля доступа TCM.

На этой странице можно добавлять и удалять записи ACL. Подробнее см. Список контроля доступа.
Группа Users содержит страницы, связанные с доступом пользователей к TCM.
На странице Users представлен список пользователей TCM.

На этой странице можно:
- Добавлять, редактировать и удалять пользователей.
- Управлять секретами пользователей: (паролями и API-токенами).
- Отзывать сессии пользователей.
Подробнее см. Пользователи.
На странице Roles представлен список ролей пользователей TCM.

На этой странице можно добавлять, редактировать и удалять роли. Подробнее см. Роли.
На странице Sessions представлен список активных сессий пользователей TCM.

На этой странице можно просматривать и отзывать сессии. Подробнее см. Сессии.
Группа Tools содержит служебные страницы для обслуживания и мониторинга TCM.
На вкладке Audit log отображается журнал аудита TCM.

На вкладке TT Column Store доступен интерфейс для запроса данных, хранящихся в Tarantool Column Store, напрямую из TCM.

Элементы интерфейса:
- Endpoint - HTTP-адрес для запросов к TCS.
- Query - редактор SQL-запросов для ввода операторов SELECT.
- Кнопка Query - выполняет запрос.
- Кнопка Clear - очищает редактор.
- Таблица результатов - отображает возвращенные строки и колонки.
Страницу TCS можно добавить с помощью файла конфигурации TCM:
# tcm.yamlfeature:column-store: True
Если этот параметр включен, вкладка TT Column Store появляется в
левой панели навигации. Ее также можно включить с помощью переменной
окружения или параметра командной строки feature.
Подробнее см. справочник по конфигурации.
В TCM встроена поддержка взаимодействия с Tarantool Graph DB через веб-интерфейс.
Вкладку TT Graph DB можно добавить с помощью файла конфигурации TCM:
# tcm.yamlfeature:ttgraph: True
Ее также можно включить с помощью переменной окружения или параметра
командной строки feature.
Подробнее см. справочник по конфигурации.
После включения этой функции вкладка TT Graph DB появляется в пользовательском интерфейсе TCM со следующими возможностями:
-
Укажите значения в полях Endpoint и Query для отправки запроса к экземпляру TT Graph DB. Нажмите Execute, чтобы выполнить запрос. Результат отобразится в таблице под формой ввода:

-
Нажмите Query, чтобы просмотреть результаты в формате графа и проанализировать связи между сущностями:

Каждую строку в таблице результатов можно развернуть для просмотра подробной информации о конкретной записи:

Граф можно открыть в полноэкранном режиме:

На вкладке TCM metrics доступны метрики TCM.

Группа Settings содержит служебные страницы, на которых можно настроить различные функции TCM.
На вкладке Password policy можно настроить требования к пользовательским паролям, такие как минимальная длина, обязательные символы, срок действия и другие параметры. Подробнее см. Политика паролей.

На странице Audit settings можно настроить, как TCM записывает события в журнал аудита: включен ли журнал аудита, какие события записываются и так далее. Подробнее см. Журнал аудита.

На вкладке LDAP можно управлять конфигурациями LDAP для TCM.

Диалоговое окно настроек пользователя открывается при нажатии Settings под именем пользователя в заголовке.

Это диалоговое окно содержит следующие вкладки:
- Вкладка General: переключение цветовой темы.
- Вкладка Change password: смена пароля.
- Вкладка API tokens: создание и удаление API-токенов.
- Вкладка Sessions: просмотр и отзыв пользовательских сессий.
- Вкладка About: просмотр информации о TCM и переключение между режимом разработки и рабочим режимом.