我正在为生产环境构建日志分析器。我的场景是,我需要在一台将使用 ELK 服务器的 centos7 服务器上设置 elasticsearch、Logstash 和 kibana,另一台是 apache 服务器(远程服务器)。
我已经配置如下
(i)ELK 服务器 - elasticsearch、kibana、logstash 和 nginx 代理
(二)应用服务器(apache 服务器)- 在 apache 服务器上安装 beats
(一)ELK服务器配置
Elasticsearch 配置
六、/etc/elasticsearch/elasticsearch.yml
网络.主机:本地主机
http端口: 9200
Kibana 仪表板配置
六、/etc/kibana/kibana.yml
server.port: 5601
server.host: "localhost"
elasticsearch.hosts: ["http://localhost:9200"]
Nginx 配置:
server {
listen 80;
server_name 172.xx.xx.xx;
location / {
proxy_pass http://localhost:5601;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Logstash 配置
猫/etc/logstash/conf.d/02-beats-input.conf
input {
beats {
port => 5044
}
}
我也配置了过滤器部分..
猫/etc/logstash/conf.d/30-elasticsearch-output.conf
output {
elasticsearch {
hosts => ["localhost:9200"]
sniffing => true
manage_template => false
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
}
}
ii)应用服务器 Beats 配置
我已经在应用服务器中安装了 beats,并使用 logstash 发送日志。
Filebeat 配置:
猫/etc/filebeat/filebeat.yml
output.logstash:
#the logstash hosts
hosts: ["172.xx.xx.xx:5044"]
这里,我不确定如何在 kibana 中加载 filebeat 索引模板、索引和仪表板。当我尝试从 apache 服务器运行“filebeat setup”命令时,出现以下错误。
[root@webserver ~]# filebeat setup
Exiting: Index management requested but the Elasticsearch output is not configured/enabled.
我知道如果我使用 elasticsearch 输出配置 filebeat,我可以将索引直接加载到 kibana。但我不想让 apache 服务器直接与 elasticsearch 联系。
有人可以建议我如何将“索引、索引模板和仪表板”从 apache 服务器直接加载到 kibana,同时将配置的节拍输出到 logstash。
我搜索了很多网站,但没有得到任何答案。有没有其他替代方法(如导入方法)在 kibana 和 elk 服务器中加载 apache 服务器 filebeat indexe。
我迫切希望有人能给出解决方案。
谢谢
库马尔
答案1
首先,看看事件是如何从源服务器进入 ElasticSearch 的。
[App-Server --> Log-file --> Beats] --> [Logstash --> ElasticSearch].
在此配置中,Apache 服务器(应用服务器)无法与 ElasticSearch 通信。因此,设置索引、模板和仪表板的 beats 命令将无法正常工作。但是,您的架构并未设置为假设 Beats!它假设 Logstash 是将事件发送到 ElasticSearch 的那个。Kibana 可以很好地处理这一点。
如果你进入 Kibana 的管理进而索引模式,它将显示您当前索引的列表。有了 beats 到 logstash 的配置,您应该有一些。为要搜索的索引设置通配符。
答案2
尝试运行:filebeat -e 而不是:filebeat setup