Возможно ли, чтобы контейнер отправлял событие кафки по завершении?

#apache-kafka #kubernetes-pod

Вопрос:

Мы только что перешли в кластер kubernetes, мне было интересно, можно ли отправить событие кафки, когда контейнер/модуль автоматически завершается сообщением stdout as. Прямо сейчас мы используем fluentd с эластичным поиском, но вывод модуля используется в качестве входных данных для следующего, нам нужно постоянно опрашивать эластичный поиск, когда вывод готов, и это вызывает проблемы с производительностью при общем выполнении

Комментарии:

1. Пожалуйста, отредактируйте вопрос, чтобы ограничить его конкретной проблемой с достаточной детализацией для определения адекватного ответа.

Ответ №1:

Я не уверен в вашей текущей настройке, но моя первая мысль была бы:

  • Используйте что-то вроде fluentd или Logstash в своем собственном модуле для каждого узла
  • Настройка доступа тома к папке журнала Kubernetes /var/журнал/контейнеры/*
  • Используйте выходные данные Кафки для fluentd или Logstash с вводом файла (хвост) в папке ведения журнала

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

Это не то, что я лично настроил, но рассмотрел это на будущее.

Более подробная информация здесь

Комментарии:

1. Я надеялся, что есть другой способ, поскольку fluentd вставляет некоторые управляющие символы в вывод, поскольку мы используем форму вывода одного модуля в качестве входных данных для другого, я думаю, что рано или поздно это вызовет проблемы