Превышение лимита размера при записи результатов Tekton Task
Содержание
Описание проблемыПроявление ошибкиАнализ первопричиныУстранение неполадокСвязанное содержимоеОписание проблемы
Когда шаг Task записывает относительно большой объем данных в результат Task, операция может завершиться с ошибкой из-за ограничений на размер.
Проявление ошибки
-
В логах Pod отображается переполнение termination message (результат слишком большой для стандартного лимита 4 KB):
Анализ первопричины
По умолчанию Tekton Pipelines получает результаты Task через termination message контейнера, размер которого в Kubernetes ограничен 4 KB. Это фактически ограничивает полезный размер результата одной Task значением 4096 bytes.
Чтобы снять это ограничение, Tekton поддерживает чтение результатов из логов sidecar, где применяется настраиваемый параметр 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включена, необходимо настроить разрешения на доступ к логам для controller:Technical Note: Эта конфигурация позволяет controller получать сведения о результатах из логов pod. Для получения подробной информации см. Tekton official documentation.
-
Ручной перезапуск компонентов не требуется, изменения вступят в силу автоматически.