ELK + Filebeat + Kafka 分布式日志管理平台搭建

paths:

  • /var/logs/springboot/sparksys-oauth.log

fields:

log_source: oauth

#================================ Outputs =====================================

#-------------------------- Elasticsearch output ------------------------------

#output.elasticsearch:

Array of hosts to connect to.

hosts: [“192.168.3.3:9200”]

#----------------------------- Logstash output --------------------------------

#output.logstash:

The Logstash hosts

hosts: [“logstash:5044”]

#----------------------------- kafka output --------------------------------

output.kafka:

enabled: true

hosts: [“192.168.3.3:9092”]

topic: sparksys-log

添加kafka输出的配置,将logstash输出配置注释掉。hosts表示kafka的ip和端口号,topic表示filebeat将数据输出到topic为sparksys-log的主题下,此处也根据自己情况修改

2.1.2 Logstash变动

====================================================================================

logstash.conf配置input由原来的输入源beat改为kafka

input {

kafka {

codec => “json”

topics => [“sparksys-log”]

bootstrap_servers => “192.168.3.3:9092”

auto_offset_reset => “latest”

group_id => “logstash-g1”

}

}

output {

elasticsearch {

hosts => “es:9200”

index => “filebeat_%{[fields][log_source]}-%{+YYYY.MM.dd}”

}

}

上述配置说明如下:

  • topics后面的sparksys-log表示从kafka中topic为sparksys-log的主题中获取数据,此处的配置根据自己的具体情况去配置。

  • bootstrap_servers表示配置kafka的ip与端口。

到此,ELFK的变动部分结束,接下来就是kafka的搭建

2.2 kafka搭建

===============================================================================

2.2.1 新建docker-compose.yaml

===============================================================================================

配置如下:

version: ‘3’

services:

zookeeper:

image: zookeeper:latest

container_name: zookeeper

volumes:

  • /Users/zhouxinlei/docker/kafka/zookeeper/data:/data

  • /Users/zhouxinlei/docker/kafka/zookeeper/datalog:/datalog

ports:

  • 2181:2181

restart: always

kafka:

image: wurstmeister/kafka

container_name: kafka

volumes:

  • /Users/zhouxinlei/docker/kafka/data:/kafka

ports:

  • 9092:9092

environment:

KAFKA_ADVERTISED_HOST_NAME: 192.168.3.3

KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181

KAFKA_ADVERTISED_PORT: 9092

KAFKA_LOG_RETENTION_HOURS: 120

KAFKA_MESSAGE_MAX_BYTES: 10000000

KAFKA_REPLICA_FETCH_MAX_BYTES: 10000000

KAFKA_GROUP_MAX_SESSION_TIMEOUT_MS: 60000

KAFKA_NUM_PARTITIONS: 3

KAFKA_DELETE_RETENTION_MS: 1000

restart: always

kafka-manager:

image: kafkamanager/kafka-manager

container_name: kafka-manager

environment:

ZK_HOSTS: 192.168.3.3

ports:

  • 9001:9000

restart: always

2.2.3 创建并启动kafka容器

======================================================================================

docker-compose up -d

2.2.2 访问 http://192.168.3.3:9001

====================================================================================================

  • 进入kafka-manager web页面新建cluster

ELK + Filebeat + Kafka 分布式日志管理平台搭建

  • 列表展示

ELK + Filebeat + Kafka 分布式日志管理平台搭建

  • 进入kafka01

ELK + Filebeat + Kafka 分布式日志管理平台搭建

  • 新建topic

ELK + Filebeat + Kafka 分布式日志管理平台搭建

ELK + Filebeat + Kafka 分布式日志管理平台搭建

到此kafka的简单使用完成

3 ELK + Filebeat + Kafka 分布式日志管理平台使用测试

==========================================================================================================

  • Filebeat发送日志到kafka

ELK + Filebeat + Kafka 分布式日志管理平台搭建

  • lofstash 消费kafka消息,输入日志到es中

ELK + Filebeat + Kafka 分布式日志管理平台搭建

  • kabana查看日志

ELK + Filebeat + Kafka 分布式日志管理平台搭建

3 总结

========================================================================

  1. 在部署的过程中可能会遇到各种情况,此时根据日志说明都可以百度处理(如部署的过程中不能分配内存的问题)。

  2. 如果完成后如果数据显示不了,可以先到根据工作流程到各个节点查询数据是否存储和传输成功。如查询filebeat是否成功把数据传输到了kafka,可以进入kafka容器当中使用kafka中如下命令查询:

bin/kafka-console-consumer.sh –zookeeper localhost:2181 –topic

sparksys-log –from-beginning

查看日志filebeat中的数据是否正常在kafka中存储。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Java)

知其然不知其所以然,大厂常问面试技术如何复习?

1、热门面试题及答案大全

面试前做足功夫,让你面试成功率提升一截,这里一份热门350道一线互联网常问面试题及答案助你拿offer

2、多线程、高并发、缓存入门到实战项目pdf书籍

3、文中提到面试题答案整理

4、Java核心知识面试宝典

覆盖了JVM 、JAVA集合、JAVA多线程并发、JAVA基础、Spring原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB 、Cassandra、设计模式、负载均衡、数据库、一致性算法 、JAVA算法、数据结构、算法、分布式缓存、Hadoop、Spark、Storm的大量技术点且讲解的非常深入


《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB 、Cassandra、设计模式、负载均衡、数据库、一致性算法 、JAVA算法、数据结构、算法、分布式缓存、Hadoop、Spark、Storm的大量技术点且讲解的非常深入**

[外链图片转存中…(img-cWHdwgc9-1713839547159)]

[外链图片转存中…(img-LNbPi6N4-1713839547159)]

[外链图片转存中…(img-yj7yPFK9-1713839547159)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 16
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值