Общие сведения
Надёжность и безопасность
Обзор системы
Начало работы
Проекты
Концепции
Компоненты
Инструкции
Ресурсы
Таймшиты
Финансы
Клиенты
Биллинг
Затраты
Отчёты и аналитика
FAQ
Типы отчётов
Использование отчётов
Группировка данных источника
Группировка данных в отчёте
Типы виджетов
Общие отчёты и шаблоны
Настройка отчёта
Экспорт отчётов
Пользовательские настройки отчёта
Вычисляемые поля
Выражения вычисляемых полей
Особые колонки отчётов с временными рядами
Использование панелей мониторинга
Публикация панелей
Фильтры источников данных
Настройка и администрирование
Типовой порядок настройки системы
Жизненные циклы и воркфлоу
On-premises
API
История изменений
Термины и определения

Порядок развёртывания

Обновлено: 19.06.2025

Данный документ описывает последовательность действий и требования для развёртывания компонентов Timetta в кластере Kubernetes или OKD. Рекомендуется выполнять все шаги последовательно, соблюдая описанные зависимости и требования.

1. Подготовка окружения

1.1. Установка инфраструктурных сервисов

Перед развёртыванием приложения необходимо установить внешние сервисы, которые являются обязательными для работы Timetta:

  • PostgreSQL — основное хранилище данных;
  • RabbitMQ — брокер сообщений;
  • Redis — кэш и хранилище для временных данных.

Подробные требования приведены в разделе: Требования к инфраструктурному ПО

Примечание

Для повышения отказоустойчивости используйте кластерные развёртывания (HA), а также настройте резервное копирование (backup) PostgreSQL и RabbitMQ.

1.2. Создание файла настроек приложения

Подготовьте файл конфигурации app-settings, содержащий параметры подключения и основные настройки приложения. Затем опубликуйте его в Kubernetes в виде секрета:

kubectl create secret generic app-settings --from-file=appsettings.json -n timetta

Подробнее: app-settings

Примечание

Приложение позволяет использовать в файле конфигурации переменные окружения в виде {{ENV_VARIABLE_NAME}}. Таким образом чувствительные данные можно вынести в сервисы подобные Yandex Lockbox.

1.3. Создание отдельного namespace

Для удобства управления и изоляции ресурсов рекомендуется использовать выделенный namespace:

kubectl create namespace timetta

Это позволит разделять системные и пользовательские компоненты, организовать права доступа и упростить управление политиками безопасности.

1.4. Размещение сертификатов

Если для подключения к PostgreSQL, Redis, Kafka или другим внешним сервисам требуются TLS-сертификаты, разместите их в Kubernetes как секреты.

Пример:

kubectl create secret generic db-cert --from-file=ca.crt -n timetta

В дальнейшем сертификаты можно подключать к контейнерам через volumeMounts.

1.5. Настройка доступа к реестру контейнеров

Опубликуйте секрет для авторизации в приватном Container Registry:

kubectl create secret docker-registry registry-auth \
  --docker-server=<server> \
  --docker-username=<username> \
  --docker-password=<password> \
  --docker-email=<email> \
  -n timetta

Подробнее: container-registry

1.6. Настройка DNS-адресов

Заранее зарегистрируйте доменные имена, которые будут использоваться компонентами Timetta:

  • API;
  • Auth/Passport;
  • Scheduler;
  • WebSockets;
  • Reporting;
  • Client Host.

Это важно для корректной работы Ingress-контроллера, TLS-сертификатов и клиентских приложений.

1.7. Настройка TLS-сертификатов

В примерах используется CertManager с провайдером Let's Encrypt, обеспечивающий автоматическое управление SSL-сертификатами.

Примечание

Убедитесь, что DNS-записи указывают на IP-адрес балансировщика перед запуском CertManager, иначе выпуск сертификатов завершится ошибкой.

Дополнительная информация доступна в документации CertManager и Let's Encrypt.

2. Рекомендации по сетевой и системной конфигурации

Чтобы обеспечить стабильную работу, рекомендуется:

  1. настроить livenessProbe и readinessProbe для всех сервисов;
  2. предусмотреть горизонтальное масштабирование (HPA);
  3. установить Resource Requests/Limits для каждого компонента;
  4. использовать NetworkPolicy для ограничения доступа между сервисами;
  5. обеспечить централизованное логирование через OpenSearch;
  6. подключить мониторинг.

3. Развёртывание компонентов Timetta

Разворачивайте компоненты в указанном порядке, так как некоторые сервисы зависимы от других:

  1. API
    api-deployment

  2. Passport (Auth Service)
    passport-deployment

  3. Consumer
    consumer-deployment

  4. Scheduler
    scheduler-deployment

  5. WebSockets / Notification Hub
    notification-hub-deployment

  6. Reporting API
    reporting-api-deployment

  7. Client Host
    client-host

  8. Предоставьте доступ к сервисам
    Ingress-контролер

Примечание

После развёртывания всех сервисов рекомендуется выполнить smoke-тестирование, убедиться в корректности сетевых маршрутов, работе авторизации и доступности API.

Содержание

1. Подготовка окружения 1.1. Установка инфраструктурных сервисов 1.2. Создание файла настроек приложения 1.3. Создание отдельного namespace 1.4. Размещение сертификатов 1.5. Настройка доступа к реестру контейнеров 1.6. Настройка DNS-адресов 1.7. Настройка TLS-сертификатов 2. Рекомендации по сетевой и системной конфигурации 3. Развёртывание компонентов Timetta
Ничего не найдено

Перейти на русскую версию?