Рассказать, как настроить полную инфраструктуру, будет немного сложно и долго.
Вот некоторые из способов ведения или получения журналов из контейнера Docker. Для упругого поиска, Kibana вы можете сделать поиск, который вы легко узнаете, как настроить.
Журналы Docker выводятся в файл JSON. Итак, если у вас небольшая среда Docker, вы можете использовать Filebeat для сбора логов. Однако вы также можете рассмотреть другой метод. Есть также много других
Filebeat
Filebeat принадлежит семейству Beats от Elastic. Filebeat, написанный на Go, - это легкий грузоотправитель, который отслеживает определенные файлы, поддерживает шифрование и может быть настроен для экспорта в ваш контейнер Logstash или напрямую в Elasticsearch.
Как минимум, вашей конфигурации Filebeat нужно будет указать путь к файлу журнала JSON (находится в / var / lib / docker / container /…) и сведения о месте назначения (обычно это контейнер Logstash).
Пример конфигурации:
prospectors:
- paths:
- /var/log/containers/<xxx>
document_type: syslog
output:
logstash:
enabled: true
hosts:
- elk:5044
Некоторые другие способы:
Использование драйвера журнала или Использование Logspout или logzio
Кроме того, настройте файл конфигурации filebeat для отправки журналов в logstash. для этого отредактируйте файл /etc/filebeat/filebeat.yml
# — — — — — — — — — — Logstash output — — — — — — — — — —
output.logstash:
# The Logstash hosts
hosts: ["192.168.xx.xx:5044"]