ELK 使用4-Kafka + zookpeer
一、zookpeer操作
1、登录
/application/elk/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181
2、查看结构
ls /

上面的显示结果中:只有zookeeper是,zookeeper原生的,其他都是Kafka创建的
ls /brokers/topics
3、获取配置文件
get /brokers/ids/0

get /brokers/topics/test2/partitions/0

二、kafka操作:
1、增topic
/application/elk/kafka/bin/kafka-topics.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --create --topic test --replication-factor 3 --partitions 3
注: partitions指定topic分区数,replication-factor指定topic每个分区的副本数
a、partitions :分区数
1)、控制topic将分片成多少个log。可以显示指定,如果不指定则会使用broker(server.properties)中的num.partitions配置的数量
2)、虽然增加分区数可以提供kafka集群的吞吐量、但是过多的分区数或者或是单台服务器上的分区数过多,会增加不可用及延迟的风险。因为多的分区数,意味着需要打开更多的文件句柄、增加点到点的延时、增加客户端的内存消耗。
3)、分区数也限制了consumer的并行度,即限制了并行consumer消息的线程数不能大于分区数
4)、分区数也限制了producer发送消息是指定的分区。如创建topic时分区设置为1,producer发送消息时通过自定义的分区方法指定分区为2或以上的数都会出错的;这种情况可以通过alter –partitions 来增加分区数。
b、replication-factor副本
1)、replication factor 控制消息保存在几个broker(服务器)上,一般情况下等于broker的个数。
2)、如果没有在创建时显示指定或通过API向一个不存在的topic生产消息时会使用broker(server.properties)中的default.replication.factor配置的数量
2、删topic
/application/elk/kafka/bin/kafka-topics.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --delete --topic test1
3、查
/application/elk/kafka/bin/kafka-topics.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --describe --topic test

- Leader:负责处理消息的读和写,Leader是从所有节点中随机选择的
- Replicas:列出了所有的副本节点,不管节点是否在服务中。
- Isr:是正在服务中的节点
4、查看所有topic
/application/elk/kafka/bin/kafka-topics.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --list
5、生产消息
/application/elk/kafka/bin/kafka-console-producer.sh --broker-list 192.168.30.41:9092,192.168.30.42:9092,192.168.30.43:9092 --topic wohaoshuai

6、消费消息
/application/elk/kafka/bin/kafka-console-consumer.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --topic wohaoshuai --from-beginning

7、查看某分区偏移量最大(小)值
/application/elk/kafka/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --topic wohaoshuai --time -1 --broker-list 192.168.30.41:9092,192.168.30.42:9092,192.168.30.43:9092 --partitions 0
注: time为-1时表示最大值,time为-2时表示最小值
8、增加topic分区数
为wohaoshuai增加10个分区
/application/elk/kafka/bin/kafka-topics.sh --zookeeper 192.168.30.41:2181,192.168.30.42:2181,192.168.30.43:2181 --alter --topic wohaoshuai --partitions 10

9、通过group消费消息,当前版本group id需要在配置文件中设置,运行时需指明配置文件。
/application/elk/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.30.41:9092,192.168.30.42:9092,192.168.30.43:9092 --topic wohaoshuai --consumer.config /application/elk/kafka/config/consumer.properties --offset 0 --partition 1
/application/elk/kafka/config/consumer.properties文件中内容为

注:指定分区时就只是取指定分区的消息
10、查看所有消费组
/application/elk/kafka/bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server 192.168.30.41:9092,192.168.30.42:9092,192.168.30.43:9092 --list
11、查看某个消费组的情况
/application/elk/kafka/bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server 192.168.30.41:9092,192.168.30.42:9092,192.168.30.43:9092 --group wohaoshuai_group --describe
ELK 使用4-Kafka + zookpeer的更多相关文章
- 精讲 使用ELK堆栈部署Kafka
使用ELK堆栈部署Kafka 通过优锐课的java架构学习分享,在本文中,我将展示如何使用ELK Stack和Kafka部署建立弹性数据管道所需的所有组件. 在发生生产事件后,恰恰在你最需要它们时,日 ...
- ELK之使用kafka作为消息队列收集日志
参考:https://www.cnblogs.com/fengjian2016/p/5841556.html https://www.cnblogs.com/hei12138/p/7805475 ...
- ELK+filebeat、kafka、zookeeper搭建文档
系统:centos 6.5 JDK:1.8 Elasticsearch-6.0.0Logstash-6.0.0kibana-6.0.0zookeeper-3.5.3kafka_2.12-1.0.0fi ...
- 生产环境Docker部署ELK跨区访问kafka不通问题的解决
由于分布式系统的日志集中采集的需求非常强烈,我们组通过调研和实践搭建了一套基于Docker的日志收集系统Amethyst. 我们首先在测试环境搭建了一套基于Docker swarm集群的ELK分布式环 ...
- linux单机部署kafka(filebeat+elk组合)
filebeat+elk组合之kafka单机部署 准备: kafka下载链接地址:http://kafka.apache.org/downloads.html 在这里下载kafka_2.12-2.10 ...
- 转 Kafka、RabbitMQ、RocketMQ等消息中间件的对比 —— 消息发送性能和优势
Kafka.RabbitMQ.RocketMQ等消息中间件的对比 —— 消息发送性能和优势 引言 分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前 ...
- Kafka、RabbitMQ、RocketMQ等 消息中间件 介绍和对比
文章目录 1.前言 2.概念 2.1.MQ简介 2.2.MQ特点 2.2.1.先进先出 2.2.2.发布订阅 2.2.3.持久化 2.2.4.分布式 3.消息中间件性能究竟哪家强? 3.1.Kafka ...
- Kafka、RabbitMQ、RocketMQ等消息中间件的介绍和对比(转)
前言在分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前段时间产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注. 概念MQ简 ...
- Kafka、RabbitMQ、RocketMQ等消息中间件的介绍和对比
本博客强烈推荐: Java电子书高清PDF集合免费下载 https://www.cnblogs.com/yuxiang1/p/12099324.html 前言 在分布式系统中,我们广泛运用消息中间件进 ...
- 01 . 消息队列之(Kafka+ZooKeeper)
消息队列简介 什么是消息队列? 首先,我们来看看什么是消息队列,维基百科里的解释翻译过来如下: 队列提供了一种异步通信协议,这意味着消息的发送者和接受者不需要同时与消息保持联系,发送者发送的消息会存储 ...
随机推荐
- MySQL基本语句、存储引擎
数据库服务器中存放的是 库(文件加) 表(文件) 表里面是记录(一行数据)quit or exit 退出客户端\s \c \G 库(文件) 创建 create database ...
- unit test
1) State vs Behaviour Verificationhttps://manas.tech/blog/2009/04/30/state-vs-behaviour-verification ...
- malloc(0)
malloc的内存分配之 malloc(0)的内存分配情况 #include<iostream> using namespace std; int main() { char *p; if ...
- JS调用摄像头并上传图片到服务器
本功能只能把图片转成base64码上传,如何上传图片还没有修改出来,有兴趣的朋友弄出来了,请给我留下言,谢谢了! 直接上代码,需要的朋友直接复制就可以使用了. <!DOCTYPE html> ...
- 【进阶3-4期】深度解析bind原理、使用场景及模拟实现(转)
这是我在公众号(高级前端进阶)看到的文章,现在做笔记 https://github.com/yygmind/blog/issues/23 bind() bind() 方法会创建一个新函数,当这个新函 ...
- js——prototype、__proto__、constructor
Object 1. Object是一个函数(typeof O ...
- Scratch 2.0-Find The Mouse 发布!
日期:2018.8.26 星期日 博客期:007 今天随便写了一个小型游戏程序,哈哈!虽然小,但用到的逻辑还是有一定水平的.呼~毕竟就这一下子也写不出来微软一样的公司嘛!哈哈,截图放上来! 游戏分为四 ...
- es6简单介绍
1.ECMAScript 6 简介 2.let和const命令 3.变量的解构赋值 4.字符串的扩展之模板字符串 5.正则的扩展 6.数值的扩展 7.函数的扩展 8.数组的扩展 9.对象的扩展 10. ...
- ignitius and princess 2(全排列)
A - Ignatius and the Princess II Now our hero finds the door to the BEelzebub feng5166. He opens the ...
- 安装lrzsz 实现windows与linux之间文件互传
环境:CentOS7.4 执行命令安装: [root@linuxhg01 www]# yum install lrzsz rz // Windows 上传到 linux [root@linuxhg01 ...