On 08/11/2016 07:36 AM, Lars Kellogg-Stedman wrote:
On Wed, Aug 10, 2016 at 07:27:45AM -0600, Rich Megginson wrote:
On 08/09/2016 03:41 PM, Lars Kellogg-Stedman wrote:
In working with the fluentd packaging from the opstools sig, I think we need to make at least two changes:
- For type=tail sources, fluentd really wants a pos_file parameter to track the file position. It would be helpful if we created /run/fluentd via /etc/tmpfiles.d as a common location for storing these files.
+1 - as long as the location is configurable. OpenShift typically keeps its pos_file in the log directory (e.g. /var/log) that is mounted from the host.
I don't know about configureable. I mean, I am proposing that the package drops a file into /etc/tmpfiles.d, which would make it a system-wide default, although of course individual <source> blocks could use whatever path they wish.
As the package is distributed, with fluentd running as an unprivileged user, it's not going to have write access to most log directories, so putting the pos files there won't work in most cases without changes to directory permissions.
If everyone is colocating pos files with log files, this proposal doesn't seem all that useful. For now, I'm probably going to tackle this in a puppet module that is consuming fluentd, rather than the package itself.
OpenShift runs fluentd in a privileged pod (for now - soon to be a hostmount-anyuid once the selinux issues are fixed) and bind mounts /var/log, /var/lib/docker (for docker --log-driver=json-file), and /run/log (for docker --log-driver=journald) from the host into the pod/container. It has to keep the pos file outside of the container/pod in the host file system, typically /var/log/*.pos. As long as that is possible with the proposed opstools fluentd packaging, that's fine.
CentOS-devel mailing list CentOS-devel@centos.org https://lists.centos.org/mailman/listinfo/centos-devel