Превышен лимит размера при записи результатов Tekton Task
Содержание
Описание проблемыПроявление ошибкиАнализ первопричиныУстранение неполадокСвязанные материалыОписание проблемы
Когда шаг Task записывает относительно большой объем данных в Task result, вывод может завершиться с ошибкой из-за ограничений по размеру.
Проявление ошибки
-
В логах Pod отображается переполнение termination message (результат слишком большой для стандартного лимита 4 KB):
Анализ первопричины
По умолчанию Tekton Pipelines собирает результаты Task через контейнерный termination message, а Kubernetes ограничивает его размер 4 KB. Это фактически ограничивает размер одного используемого результата Task значением 4096 bytes.
Чтобы снять это ограничение, Tekton поддерживает чтение результатов из sidecar logs, где параметр max-result-size применяется к каждому результату.
Устранение неполадок
Следующие инструкции предполагают, что Tekton Pipeline установлен в namespace tekton-pipelines по умолчанию.
Если он установлен в другом namespace, замените tekton-pipelines на ваш namespace.
Ниже приведены шаги для настройки ограничения размера результата:
-
Отредактируйте ресурс TektonConfig, задав
spec.pipeline.results-fromиspec.pipeline.max-result-size, как показано ниже: -
ConfigMap
feature-flagsбудет обновлен автоматически. -
Поскольку включена функция
results-from: sidecar-logs, необходимо настроить разрешения на доступ к log для controller:Technical Note: Эта конфигурация позволяет controller получать информацию о результатах из pod logs. Для получения подробной информации см. Tekton official documentation.
-
Перезапуск компонентов вручную не требуется — изменения вступят в силу автоматически.