v.5.139.0#
Изменения
-
Добавлен новый сервис Builder, предоставляющий функционал сборки Docker-образов.
Процесс сборки Docker-образов, который ранее был частью сервиса Lambda, теперь выделен в отдельный сервис — Builder. Это позволяет контролировать и управлять процессом сборки, снижая влияние возможных сбоев на основные сервисы LUNA PLATFORM.
Основные возможности сервиса Builder:
- Асинхронная очередь задач: сервис принимает задачи на сборку и обрабатывает их последовательно, обеспечивая стабильность под нагрузкой.
- Сборка Docker-образов и их отправка в Docker Registry.
- Возможность отслеживания статуса выполнения задачи и получения логов сборки.
Сценарий использования:
- Пользователь отправляет запрос на создание лямбды через API.
- Вместо самостоятельной сборки, сервис Lambda отправляет запрос с архивом и параметрами образа в сервис Builder.
- Builder ставит задачу в очередь, выполняет сборку и загружает готовый Docker-образ в registry.
- Lambda получает от Builder статус об успешной сборке и ссылку на готовый образ, после чего может запустить лямбду.
Ключевые изменения:
-
В комплект поставки добавлен Helm-чарт для сервиса Builder. Обновлен раздел документации Запуск Lambda.
-
Добавлены настройки сервиса Builder. Примечание. Аналоги существующих настроек сервиса Lambda были по возможности перенесены в конфигурацию Builder. Обратите внимание на следующие:
-
LUNA_BUILDER_REGISTRYиLUNA_BUILDER_INSECURE_REGISTRIES— адрес Docker Registry, куда Builder будет отправлять собранные образы (аналогичноLAMBDA_REGISTRYиLAMBDA_INSECURE_REGISTRIES). LUNA_BUILDER_S3— настройки для доступа к бакету, где хранятся архивы с кодом лямбды.-
LUNA_BUILDER_REDIS_DB_ADDRESS— адрес Redis, включая пользователя и пароль, если Redis защищён. -
Группа параметров
LUNA_LAMBDA_BUILD_LIMITSперенесена в сервис Builder и теперь называется LUNA_BUILDER_BUILD_LIMITS. Таким образом, при обновлении LUNA PLATFORM ранее настроенные значения автоматически переносятся в новую группу параметров. -
В сервис Lambda добавлены новые группы параметров для взаимодействия с сервисом Builder: LUNA_BUILDER_ADDRESS и LUNA_BUILDER_TIMEOUTS.
Примечание. Процесс сборки Docker-образов может быть длительным — при необходимости увеличьте значения таймаутов в LUNA_BUILDER_HTTP_SETTINGS.
См. подробную информацию в разделе Сервис Builder и Настройки сервиса Builder.
-
Добавлена возможность задать время жизни (TTL) объектов на уровне папок.
Теперь можно управлять сроком хранения объектов не только на уровне бакетов и отдельных файлов, но и на уровне папок. Это позволяет гибко контролировать хранение данных на всех уровнях.
Основные изменения:
- TTL для папок: при создании или изменении папки можно указать параметр
ttl(в днях). Это значение становится сроком жизни по умолчанию для всех объектов, хранящихся в этой папке, если для них не задан собственныйttl. - По умолчанию при копировании сохраняется текущая политика TTL исходного объекта или папки. При необходимости можно переопределить TTL в запросе на копирование.
- Срок жизни объекта определяется по приоритету: сначала применяется TTL объекта, затем папки, и только потом бакета.
Подробнее о TTL и операциях с папками см. в разделе TTL объектов, ресурсах /images и /objects.
- TTL для папок: при создании или изменении папки можно указать параметр
-
В контейнер сервиса
Video Agentдобавлены инструменты для диагностики проблем при обработке потока или видеофайла:ffmpeg,ffprobeиluna_decoder.Добавленные инструменты позволяют определить, связана ли проблема с недоступностью источника видео, несовместимостью форматов, нестабильностью соединения или другими факторами, препятствующими обработке. Полученные данные помогут лучше понять ситуацию и ускорить процесс отладки.
Подробное руководство, пошаговый алгоритм действий и описание всех параметров доступны в новом разделе Диагностика проблем с видеопотоками.
-
В ответы запросов get analytic и get analytics добавлено обязательное поле
availability.available.Значение
available(true/false) показывает, зарегистрирован ли в системе на данный момент хотя бы один агент, способный обрабатывать данную аналитику. Поле отражает только факт наличия подходящего агента в системе, не учитывая свободные слоты для обработки новых задач. Это позволяет определить, какие аналитики потенциально доступны для использования. -
Теперь если в
user_configлямбды типа Agent задан параметрmax_stream_count(целое положительное число), он переопределит параметр max_active_streams, определяющий максимальное количество потоков для одного экземпляра лямбды.См. запросы create lambda, put lambda, import lambda и update lambda config.
Исправленные ошибки
-
Исправлено поведение, которое приводило к внутренней ошибке сервера (
Internal server error, код состояния 500) при выполнении запроса import lambda с некорректно заполненными данными в JSON любой из частей запроса:credentials,parametersилиdeploy_parameters.Теперь в таких случаях возвращается ошибка 42017 с описанием "Failed to parse multipart payload for lambda import" и кодом состояния 400.
-
Исправлены имена параметров в аналитике people count:
people_count_lteиpeople_count_gteзаменены наpeople_count__lteиpeople_count__gteсоответственно (с двойным подчеркиванием). Также была исправлена валидация этих параметров.