Fluentd не может получить доступ к журналам в / var / lib / docker / container из-за проблем с разрешениями - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь прочитать журналы контейнеров через fluentd и передать их в упругий поиск.Я смонтировал каталоги с хоста на контейнер fluentd, который включает в себя все символические ссылки и реальные файлы.Но когда я вижу журналы Fluentd-контейнера, они говорят, что эти журналы, представленные в /var/log/pods/, не читаются.Затем я вручную перешел к пути в контейнере fluentd, где присутствуют журналы, но, к сожалению, я получил разрешение на отказ.Я пошел до /var/lib/docker/containers, тогда разрешения были 0700 и владелец был root.Даже я пытаюсь запустить мой свободный контейнер, установив
- name: FLUENT_UID value: "0" , но все равно он не умеет читать.

volumes: - name: varlog hostPath: path: /var/log/ - name: varlibdockercontainers hostPath: path: /var/lib/docker/containers

..... volumeMounts: - name: varlog mountPath: /var/log/ - name: varlibdockercontainers mountPath: /var/lib/docker/containers

1 Ответ

2 голосов
/ 19 сентября 2019

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

...