Назад | Перейти на главную страницу

kubernetes kubelet ведение журнала в файлы и logrotate

kubelet имеет возможность хранить файлы журнала в каталоге журнала (https://github.com/kubernetes/kubernetes/issues/21248).

Запускаю кубелет с опциями --logtostderr=false --log-dir=/var/log/kubelet (Я уже создал каталог /var/log/kubelet), и я действительно вижу файлы журналов в формате kubelet.(hostname).root.log.(date) генерируется в /var/log/kubelet.

В моем случае я вижу три файла, которые выглядят так:

kubelet.hostname.root.log.ERROR.20180301-152321.161945
kubelet.hostname.root.log.INFO.20180301-152320.161945
kubelet.hostname.root.log.WARNING.20180301-152320.161945

Кроме того, для каждого из файлов журнала ERROR, INFO и WARNING создается символическая ссылка, указывающая на последний файл журнала:

kubelet.ERROR -> kubelet.hostname.root.log.ERROR.20180301-152321.161945
kubelet.INFO -> kubelet.hostname.root.log.INFO.20180301-152320.161945
kubelet.WARNING -> kubelet.hostname.root.log.WARNING.20180301-152320.161945

Мой вопрос: как мне повернуть и удалить файлы журнала, которые старше, например, 5 дней назад? Кажется, эти файлы созданы glog, но также кажется, что хотя glog вращает файлы журнала, не поддерживает удаление старых файлов журнала (https://github.com/google/glog/issues/36).

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

Есть ли способ включить ведение журнала kubelet в файлах с правильной ротацией журналов и удалением старых файлов?