构建ELK+Filebeat+kafka+zookeeper大数据日志分析平台

2024-06-19 13:04

本文主要是介绍构建ELK+Filebeat+kafka+zookeeper大数据日志分析平台,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://blog.csdn.net/weixin_45623111/article/details/137143863?spm=1001.2014.3001.5502

在构建 ELK (Elasticsearch, Logstash, Kibana) + Filebeat + Kafka + Zookeeper 的大数据日志分析平台中,数据流向 filebeat -> logstash -> kafka -> logstash -> elasticsearch 需要配置多个组件。下面是每个组件的配置文件示例和步骤。1. Filebeat 配置
Filebeat 从日志文件读取数据并发送到 Logstash。
filebeat.yml:
复制代码
filebeat.inputs:
- type: logenabled: truepaths:- /path/to/your/logfile.logoutput.logstash:hosts: ["logstash_host:5044"]2. Logstash 配置 (第一个 Logstash)
第一个 Logstash 接收 Filebeat 的数据,进行预处理,然后发送到 Kafka。logstash.conf:
input {beats {port => 5044}
}filter {# 添加你需要的过滤器,例如 grok, mutate 等# grok {#   match => { "message" => "%{COMMONAPACHELOG}" }# }
}output {kafka {bootstrap_servers => "kafka_host:9092"topic_id => "your_log_topic"}
}
3. Kafka 配置
Kafka 和 Zookeeper 配置,确保 Kafka 集群正常工作。server.properties (Kafka):
broker.id=0
log.dirs=/path/to/kafka-logs
zookeeper.connect=zookeeper_host:2181
zookeeper.properties (Zookeeper):
dataDir=/path/to/zookeeper-data
clientPort=2181
启动 Zookeeper 和 Kafka:
# 启动 Zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties# 启动 Kafka
bin/kafka-server-start.sh config/server.properties4. Logstash 配置 (第二个 Logstash)
第二个 Logstash 从 Kafka 读取数据,进行进一步处理,然后发送到 Elasticsearch。logstash.conf:
input {kafka {bootstrap_servers => "kafka_host:9092"topics => ["your_log_topic"]group_id => "logstash_group"}
}filter {# 添加你需要的过滤器,例如 grok, mutate 等# grok {#   match => { "message" => "%{COMMONAPACHELOG}" }# }
}output {elasticsearch {hosts => ["elasticsearch_host:9200"]index => "your_index_name-%{+YYYY.MM.dd}"}
}5. Elasticsearch 配置
确保 Elasticsearch 集群正常工作。
elasticsearch.yml:
cluster.name: your_cluster_name
node.name: your_node_name
path.data: /path/to/elasticsearch-data
path.logs: /path/to/elasticsearch-logs
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["elasticsearch_host1", "elasticsearch_host2"]
cluster.initial_master_nodes: ["elasticsearch_host1", "elasticsearch_host2"]
启动 Elasticsearch:
bin/elasticsearch6. Kibana 配置
Kibana 用于可视化 Elasticsearch 中的数据。
kibana.yml:
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://elasticsearch_host:9200"]
启动 Kibana:
bin/kibana
启动顺序
启动 Zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties
启动 Kafka:bin/kafka-server-start.sh config/server.properties
启动 Elasticsearch:bin/elasticsearch
启动第一个 Logstash:bin/logstash -f /path/to/first/logstash.conf
启动第二个 Logstash:bin/logstash -f /path/to/second/logstash.conf
启动 Filebeat:./filebeat -e -c filebeat.yml
启动 Kibana:bin/kibana
这样配置和启动后,你的数据流向会是 filebeat -> logstash -> kafka -> logstash -> elasticsearch,并可以通过 Kibana 进行可视化分析。

这篇关于构建ELK+Filebeat+kafka+zookeeper大数据日志分析平台的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1075102

相关文章

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

golang 日志log与logrus示例详解

《golang日志log与logrus示例详解》log是Go语言标准库中一个简单的日志库,本文给大家介绍golang日志log与logrus示例详解,感兴趣的朋友一起看看吧... 目录一、Go 标准库 log 详解1. 功能特点2. 常用函数3. 示例代码4. 优势和局限二、第三方库 logrus 详解1.

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

一文详解如何从零构建Spring Boot Starter并实现整合

《一文详解如何从零构建SpringBootStarter并实现整合》SpringBoot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序,:本文主要介绍如何从... 目录一、Spring Boot Starter的核心价值二、Starter项目创建全流程2.1 项目初始化(