elasticsearch 为filebeat创建管道,elasticsearch,logstash,kibana,elastic-stack,filebeat,elasticsearch,Logstash,Kibana,Elastic Stack,Filebeat" /> elasticsearch 为filebeat创建管道,elasticsearch,logstash,kibana,elastic-stack,filebeat,elasticsearch,Logstash,Kibana,Elastic Stack,Filebeat" />

elasticsearch 为filebeat创建管道

elasticsearch 为filebeat创建管道,elasticsearch,logstash,kibana,elastic-stack,filebeat,elasticsearch,Logstash,Kibana,Elastic Stack,Filebeat,我已启用filebeat系统模块: filebeat modules enable system filebeat setup --pipelines --modules system filebeat setup --dashboards systemctl restart filebeat 这就是logstash所说的,id为[filebeat-7.9.0-system-auth-pipeline]的管道不存在 这是logstash负责的部分: output { if [@meta

我已启用filebeat系统模块:

filebeat modules enable system
filebeat setup --pipelines --modules system
filebeat setup --dashboards
systemctl restart filebeat
这就是logstash所说的,id为[filebeat-7.9.0-system-auth-pipeline]的管道不存在

这是logstash负责的部分:

output {
    if [@metadata][pipeline] {
        elasticsearch {
            hosts => "https://localhost:9200"
            manage_template => false
            cacert => "/etc/elasticsearch/estackcap12extract.crt"
            ssl => true
            ssl_certificate_verification => false
            index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
            pipeline => "%{[@metadata][pipeline]}"
            user => "elastic"
            password => "*secret*"
        }
    } else {
    ...

我需要为此手动创建管道吗?我做错什么了吗?我能找到的最好的方法是,但它似乎是用于定制的东西,这是一个现成的模块,所以我不确定它有多重要。

问题是,您的Filebeat没有直接连接到ES,而只是通过Logstash连接。这是一个已知的问题,但由于*Beat只能作为单个输出,因此需要执行以下技巧

您需要做的是在运行setup命令时取消注释elasticsearch输出,以便Filebeat可以安装摄取管道

完成后,您需要再次注释掉该输出,并在启动Filebeat for real之前取消对Logstash输出的注释

如果不想修改配置文件,还有另一种方法,将配置变量传递给
filebeat setup
,如下所示:

filebeat setup --pipelines --modules system \
    -E output.logstash.enabled=false \
    -E output.elasticsearch.username="elastic" \
    -E output.elasticsearch.password="*secret*" \
    -E 'output.elasticsearch.ssl.certificate_authorities="/etc/elasticsearch/estackcap12extract.crt"' \
    -E output.elasticsearch.hosts="https://localhost:9200"

运行此
get\u inset/pipeline/filebeat-7.9.0-system-auth-pipeline
时,您会得到什么?404?如果我理解正确,Filebeat连接到Logstash,而不是直接连接ES,对吗?如果是这种情况,您确定您在filebeat配置中配置了kibana URL,以便它可以正确安装摄取管道和仪表板吗?感谢您的回复。是的,我有404。Kibana配置正确。运行
filebeat setup-d“*”--pipelines--modules system
时,您是否介意共享您得到的输出?感谢您的响应,它不会返回任何结果。