logstash 负责: 接收数据 input — 解析过滤并转换数据 filter(此插件可选) — 输出数据 output
input — decode — filter — encode — output
elasticsearch 查询和保存数据
Elasticsearch 去中心化集群
Data node 消耗大量 CPU、内存和 I/O 资源
分担一部分压力是指在data node上汇聚,然后在client node 再一次汇聚,然后将搜索结果返回给用户
client node类似路由起,将集群请求发送的主节点,将数据请求发送到数据节点。配置文件中如果 node.master 和 node.data都为false,那么它就是client node
es 必须在普通用户下运行,为的是安全
Kafka
zookeeper管理Kafka。选举leader,还有consumer group变化时,进行再平衡
写消息允许多个Producer 写到一个Partition。 消费时,只能一个 消费组中的consumer 所消费。一个consumer 可以消费多个 Partition
大于是因为 这样消息数据就可以均匀地分布在各个broker中
Kafka 集群部署规划
先部署zookeeper,再Kafka
比如可以显示 topic 列表, 创建topic ,查看topic 状态, 删除topic
生产消息,消费消息
案例
Kafka MirrorMaker 是跨数据中心的流数据同步方案
配置MirrorMaker的 生产者和消费者,启动它就行了。MirrorMaker单独在一台机器上
每个kafka节点的带宽20M,每个服务器16c, 32g内存
Filebeat + Kafka + logstash + Elasticsearch
典型ELK 架构