0、引言
之前介绍了Filebeat、Elasticsearch、Kibana、Kafka的基础配置,现在的工作主要是加入Logstash,把整一个框架整合起来,因为Logstash比较消耗资源,所以一般来说集群节点可以多用Filebeat,然后传给Kibana,然后再传给Logstash,然后通过Logstash再传给Elasticsearch,最后在Kibana上做展示。大致框架图如下所示:
1、Logstash安装、部署
安装地址:https://www.elastic.co/downloads/logstash
解压文件,然后进入bin目录,创建一个logstash.conf的配置文件,写入以下内容:
input {
kafka {
bootstrap_servers => ["ip:9092"] #写上自己的ip地址
topics => ["test"] #设置写入kafka的topic
decorate_events => true
codec => json #一定要加上这段,不然传输错误,${message}
}
}
# 定义输出
output {
elasticsearch {
hosts => ["ip:9200"] #写上自己的ip地址
index => "logstash-%{+YYYY-MM-dd}"
#document_type => "form"
#document_id => "%{id}"
}
stdout {
codec => rubydebug
}
}
Logstash的启动码命令:
logstash -f logstash.conf
然后,依次打开Filebeat、kafka、Logstash、Elasticsearch,
在你监听的日志文件目录下,创建新的日志文件以便测试,运行后Logstash的窗口会显示有新的日志传入
然后再看一下Elasticsearch里面,看看有没有索引创建:
Logstash默认索引名称为Logstash-日期,如果出现这一项,说明配置已经成功~