ELK + Kafka 日志分析
Kafka 日志接收 + 异步处理
Logstash 获取日志 + 发送日志
Elasticsearch 存储日志 + 分析日志
Kibana 查询展示
创建容器的命令
docker run -d --name kgc_kafka -p 9092:9092 --network kgc_net --network-alias kafka kgc/kafka
docker run -d --name kgc_elasticsearch -p 9200:9200 --network kgc_net --network-alias elasticsearch kgc/elasticsearch
docker run -d -it --name kgc_kibana -p 5601:5601 --network kgc_net --network-alias kibana kgc/kibana
docker run -d -it --name kgc_logstash --network kgc_net --network-alias logstash kgc/logstash
在使用elasticsearch前 必须要扩展服务器jvm内存, 否则可能无法启动
vim /etc/sysctl.conf
输入:
vm.max_map_count=655360
保存退出,执行以下代码:
sysctl -p
启动四个容器,通过浏览器访问 虚拟机地址:9200 检查elasticsearch是否启动,然后再次访问 虚拟机地址:5601 查看kibana是否启动
在项目中添加jar 包
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
在kafka命令行找到bin目录执行,来启动kafka服务
./kafka-server-start.sh ../config/server.properties
启动消息接收器
./bin/kafka-console-consumer.sh --topic test --from-beginning --zookeeper localhost:2181