You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署Filebeat遇No outputs defined错误及Pod CrashLoopBackOff问题

问题解决:Filebeat CrashLoopBackOff 报错"No outputs are defined"

核心问题分析

  1. YAML结构错误:output.elasticsearch和setup.kibana前被错误添加了-,导致它们被识别为config下的数组元素,而非顶级配置项,Filebeat无法读取到合法的输出配置,触发报错。
  2. 冗余配置冲突:elasticsearchRef用于绑定当前K8s集群内的Elasticsearch实例,而你需要将日志发送到外部集群,该配置会干扰外部输出设置,必须移除。
  3. 端口配置错误:Kibana默认端口为5601,你错误使用了Elasticsearch的9200端口。

修正后的完整YAML配置

---
apiVersion: beat.k8s.elastic.co/v1beta1
kind: Beat
metadata:
  name: es-beats
  namespace: elastic
spec:
  type: filebeat
  version: 7.12.1
  # 移除elasticsearchRef,避免与外部ES配置冲突
  config:
    filebeat.inputs:
    - type: container
      paths:
      - /var/log/containers/*.log
    # 移除前缀-,作为config的顶级配置键
    output.elasticsearch:
      # 替换为你的外部ES集群地址
      hosts: ["https://<my-other-cluster-ip>:9200"]
      protocol: "https"
      username: "elastic"
      password: "mypass"
    # 移除前缀-,作为config的顶级配置键,修正Kibana端口为5601
    setup.kibana:
      host: "https://<my-other-cluster-ip>:5601"
      username: "elastic"
      password: "mypass"
  daemonSet:
    podTemplate:
      spec:
        dnsPolicy: ClusterFirstWithHostNet
        hostNetwork: true
        securityContext:
          runAsUser: 0
        containers:
        - name: filebeat
          volumeMounts:
          - name: varlogcontainers
            mountPath: /var/log/containers
          - name: varlogpods
            mountPath: /var/log/pods
          - name: varlibdockercontainers
            mountPath: /var/lib/docker/containers
        volumes:
        - name: varlogcontainers
          hostPath:
            path: /var/log/containers
        - name: varlogpods
          hostPath:
            path: /var/log/pods
        - name: varlibdockercontainers
          hostPath:
            path: /var/lib/docker/containers

关键配置说明

  • 输出配置位置:output.elasticsearch必须作为config下的顶级键,不能放在-开头的数组中,否则Filebeat无法识别输出目标。
  • 外部集群认证:直接在output.elasticsearch和setup.kibana节点下配置对应集群的username和password即可,无需引用内部集群资源。
  • 端口区分:Elasticsearch默认端口为9200,Kibana默认端口为5601,二者不可混淆。

内容的提问来源于stack exchange,提问作者19ce141 BHRUGU SHARMA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 17:20:26