0

我正在使用kube-fluentd-operatorfluentd使用into聚合日志Elasticsearch并在Kibana.

我可以在集群内看到我的应用程序(pod)日志。但是,我无法从集群内的主机中看到日志日志(systemd 单元、kubelet 等)。

fluentd 的 pod 日志中没有明显的消息,堆栈适用于来自应用程序的日志。在fluentd容器内,我可以访问/var/log/journal目录 ( drwxr-sr-x 3 root 101 4096 May 21 12:37 journal)。我应该在哪里查看我的 EFK 堆栈中的日志日志?

这是kube-system.conf附加到kube-system命名空间的文件:

<match systemd.** kube.kube-system.** k8s.** docker>
  # all k8s-internal and OS-level logs

  @type elasticsearch
  host "logs-es-http.logs"
  port "9200"
  scheme "https"
  ssl_verify false
  user "u1"
  password "password"
  logstash_format true
  #with_transporter_log true
  #@log_level debug
  validate_client_version true
  ssl_version TLSv1_2
</match>

根据文档,最小,简单。

我的搜索词有没有可能是错误的?为了获取日志日志,我应该搜索什么?

4

1 回答 1

0

在尝试了所有可能的解决方案(从启用log_level debug,到只 kube-system监控命名空间,再到添加runAsGroup: 101到容器)之后,我剩下的就是改变我用于日志聚合的内容,并决定从该操作符切换到他们自己DaemonSet提供的操作符fluenthttps://github.com/fluent/fluentd-kubernetes-daemonset

事实证明,这种切换是成功的,并且systemd可以从 EFK 堆栈内部搜索单元。

于 2020-09-24T12:46:21.713 回答