kubernetes 不包括活力和准备的流畅位

lyfkaqu1  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(3)|浏览(99)

我正在使用fluenbit将日志从我的K8s集群发送到elasticsearch。当我查看kibana的时候,我看到了很多不适用于我的集群pod的liveness和readiness条目。正因为如此,我试图通过使用过滤器部分来阻止我的elasticsearch集群获取这些类型的消息,如下所示:

fluent-bit.conf: |
    [SERVICE]
        Daemon Off
        Flush 5
        Log_Level error
        Parsers_File /fluent-bit/etc/parsers.conf
        Parsers_File /fluent-bit/etc/conf/custom_parsers.conf
        HTTP_Server On
        HTTP_Listen 0.0.0.0
        HTTP_Port 2020
        Health_Check On

    [INPUT]
        Name tail
        Path /var/log/containers/*.log
        multiline.parser docker, cri
        Tag kube.*
        Mem_Buf_Limit 50MB
        Buffer_Max_Size 1MB
        Skip_Long_Lines On
        Buffer_Chunk_Size 1M

    [INPUT]
        Name systemd
        Tag host.*
        Systemd_Filter _SYSTEMD_UNIT=kubelet.service
        Read_From_Tail On

    [FILTER]
        Name kubernetes
        Match kube.*
        Merge_Log On
        Keep_Log Off
        K8S-Logging.Parser On
        K8S-Logging.Exclude On

    [FILTER]
        Name         grep
        Match        kube.*
        Exclude log .*liveness.*|.*readiness.*

字符串
我不知道为什么,但这些日志一直出现在我的elasticsearch中。我是不是忘了什么?

  • 谢谢-谢谢
yb3bgrhw

yb3bgrhw1#

在本forum中也讨论了类似的问题。简单地禁用设置可能无法在kubernetes的情况下禁用日志,您需要更改包含fluentbit配置的manifest文件,并在应用manifest文件之前删除旧部署沿着包含旧manifest文件的作业。现在应用这些更改,它将创建一个新的部署,其中将配置新的fluentbit设置。

w6lpcovy

w6lpcovy2#

你的解析器在哪里?我认为“日志”不是一个字段。您可以使用解析器中的字段来代替“log”

smdnsysy

smdnsysy3#

例如,在一个示例中,

[FILTER]
          Name        modify
          Match       kube.svc.*
          Rename      log.message log_message

      [FILTER]
          Name        grep
          Match       kube.svc.*
          Exclude     log_message /.*XYZ.*/

字符串
我认为斜线或圆点仍然不起作用,错误仍然存在,所以你必须更换它们。

相关问题