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 в файлах с правильной ротацией журналов и удалением старых файлов?