如何配置Fluentd采集Kubernetes指定命名空间日志至OpenSearch
Fluentd 按K8s命名空间筛选日志发送OpenSearch配置方案
现有配置的核心问题
- 未加载Kubernetes元数据过滤插件,日志中没有命名空间维度字段,无法实现命名空间维度的筛选
- 日志采集路径配置错误,容器标准输出日志的正确路径为
/var/log/containers/*.log - Filter段语法错误,同一个Filter块不能同时声明两个
@type,record_modifier与parser插件不能混用在同一个过滤规则中 - Match段匹配逻辑错误,仅靠日志文件名模糊匹配无法精准对应命名空间维度,且OpenSearch输出配置缺少必填的服务地址、索引名等参数,无法正常发送数据
可直接使用的正确ConfigMap配置
apiVersion: v1 kind: ConfigMap metadata: labels: k8s-app: fluentd-logging name: simple-fluentd-configmap namespace: fluent-log data: fluent.conf: | # 丢弃Fluentd自身运行日志 <match fluent.**> @type null </match> # 采集节点上所有容器的标准输出日志 <source> @type tail path /var/log/containers/*.log pos_file /var/log/fluentd-containers.pos tag kubernetes.* read_from_head true <parse> @type json time_key time time_format %Y-%m-%dT%H:%M:%S.%NZ </parse> </source> # 为日志注入K8s元数据,包含命名空间、Pod名称、容器名称等维度字段 <filter kubernetes.**> @type kubernetes_metadata skip_labels false skip_container_metadata false skip_namespace_metadata true </filter> # 解析日志内容中的JSON格式业务日志,纯文本日志场景可删除该段配置 <filter kubernetes.**> @type parser key_name log reserve_data true <parse> @type json </parse> </filter> # 命名空间筛选规则:仅保留指定命名空间的日志 # 示例中匹配production、middleware两个命名空间,按需修改正则即可 <filter kubernetes.**> @type grep <regexp> key $.kubernetes.namespace_name pattern /^(production|middleware)$/ </regexp> </filter> # 将筛选后的日志输出到OpenSearch <match kubernetes.**> @type opensearch host 替换为你的OpenSearch服务访问地址 port 443 scheme https ssl_verify false # 若OpenSearch开启账号认证,取消下方注释填写对应凭据 # user 替换为OpenSearch访问账号 # password 替换为OpenSearch访问密码 index_name k8s-namespace-logs-%Y.%m.%d logstash_format false auto_create_index true </match> # 丢弃所有不符合筛选规则的日志 <match **> @type null </match>
配置注意事项
- 运行前确认Fluentd镜像已预装
fluent-plugin-kubernetes_metadata_filter、fluent-plugin-opensearch两个插件,否则配置会加载失败 - 调整采集的命名空间时,仅需修改grep过滤规则中的pattern正则即可,单命名空间直接写
/^你的命名空间名$/,多命名空间用|分隔 - 注入元数据后,所有日志都会携带
kubernetes.namespace_name字段存储所属命名空间,你也可以基于该插件生成的其他字段,实现按Pod、工作负载类型等维度的日志筛选 - 如果需要将不同命名空间的日志写入不同OpenSearch索引,可以通过标签路由拆分match规则,无需重复编写重复的输出配置
内容的提问来源于stack exchange,提问作者Tommy
相关产品推荐
相关产品推荐

