Запуск filebeat на операционной системе докера и сбор журналов из контейнеров

У меня есть сервер, который является хост-ОС для нескольких док-контейнеров. Каждый из контейнеров содержит приложение, которое создает журналы. Я хочу, чтобы эти журналы отправлялись в одно место с помощью демона syslog, а затем я хочу, чтобы filebeat передавал эти данные на другой сервер. Можно ли установить filebeat в ОС HOST (без создания другого контейнера для filebeat) и сделать так, чтобы данные журнала приложений контейнеров собирались демоном syslog, а затем консолидировались в /var/log на хост-ОС? Благодарю.

1 ответ

Решение

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

Затем вы можете установить filebeat на хост и пересылать журналы туда, куда хотите, так как они были "стандартными" файлами журналов.

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

Другие вопросы по тегам