SME*_*SME 6 elasticsearch kubernetes filebeat
我在 Kubernetes 集群中使用 elasticserach 6.8 和 filebeat 6.8.0。我希望 filebeat 忽略某些容器日志,但这似乎几乎不可能:)。
这是我的自动发现配置
filebeat.autodiscover:
providers:
- type: kubernetes
hints.enabled: true
templates:
- condition:
contains:
kubernetes.namespace: bagmessage
config:
- type: docker
containers.ids:
- "${data.kubernetes.container.id}"
processors:
- drop_event:
when:
or:
- contains:
kubernetes.container.name: "filebeat"
- contains:
kubernetes.container.name: "weave-npc"
- contains:
kubernetes.container.name: "bag-fluentd-es"
- contains:
kubernetes.container.name: "logstash"
- contains:
kubernetes.container.name: "billing"
Run Code Online (Sandbox Code Playgroud)
我已经尝试了这种配置的许多变体,但 filebeats 仍在处理我希望它忽略的容器日志。
我想知道我想做的事情是否可行,如果可以,我做错了什么?
谢谢
condition我在您的配置中看到的第一个错误是template. 应该:
- type: kubernetes
hints.enabled: true
templates:
- condition:
contains:
kubernetes.namespace: bagmessage
Run Code Online (Sandbox Code Playgroud)
其次,我不确定kubernetes.*配置中的处理器是否可以看到type: docker. 您可以尝试参考docker.container.name一下。或者,您也可以将所有 k8s 特定条件移至condition以下部分templates:
filebeat.autodiscover:
providers:
- type: kubernetes
hints.enabled: true
templates:
- condition:
and:
- contains.kubernetes.namespace: bagmessage
- contains.container.name: billing
config:
...
Run Code Online (Sandbox Code Playgroud)
另外,请确保“container.name”(但不是“pod.name”)确实是您想要的。
| 归档时间: |
|
| 查看次数: |
2748 次 |
| 最近记录: |