Не удается найти файлы журнала докера для Filebeat

Я пытаюсь объединить журналы из моего кластера Kubernetes на сервер Elasticsearch.
Для этого я развернул Filebeat в кластере, но я думаю, что у него нет шансов работать, так как в /var/lib/docker/containers каталоги, логов нет.

Я могу просматривать журналы контейнеров через kubectl logs, но не знаю, как заставить Filebeat достичь его.
Вот фрагмент docker inspect вывод команды:

    "LogPath": "",
    "Name": "/k8s_POD_checkit-incubator-6bd48754c5-s64bk_checkit-incubator_2cb40353-c7b4-11e8-9574-005056b1f077_1",
    "RestartCount": 0,
    "Driver": "devicemapper",
    "MountLabel": "",
    "ProcessLabel": "",
    "AppArmorProfile": "",
    "ExecIDs": null,
    "HostConfig": {
        "Binds": null,
        "ContainerIDFile": "",
        "LogConfig": {
            "Type": "journald",
            "Config": {}
        },
        "NetworkMode": "none",
        "PortBindings": {},
        "RestartPolicy": {
            "Name": "",
            "MaximumRetryCount": 0
        },

Любые подсказки, как я могу выяснить правильную конфигурацию для Filebeat?

1 ответ

Ваша конфигурация отправляет журналы в journald, так что journalctl - ваш инструмент.

Скажите нам, какой дистрибутив kubernetes вы используете, kubespray, gke или что-то еще.

Во-вторых, вы можете проверить другие каталоги узлов, например /var/log/containers/ для контейнерных бревен.

В-третьих, попробуйте развернуть filebeat с помощью helm или любым другим способом, рекомендованным вашим дистрибутивом k8s.

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