kafka集群操作命令「建议收藏」

kafka集群操作命令「建议收藏」1.修改kafka配置文件 broker.id=0zookeeper.connect=192.168.1.10:2181,192.168.1.12:2181,192.168.1.13:2181/kafka 说明: 默认Kafka会使用ZooKeeper默认的/路径,这样有关Kafka的ZooKeeper配置就会散落在根路径下面,如果你有其他的应用也在使用ZooKee…

大家好,又见面了,我是你们的朋友全栈君。

1.修改kafka配置文件

 

broker.id=0
zookeeper.connect=192.168.1.10:2181,192.168.1.12:2181,192.168.1.13:2181/kafka

 说明:

 

默认Kafka会使用ZooKeeper默认的/路径,这样有关Kafka的ZooKeeper配置就会散落在根路径下面,如果 你有其他的应用也在使用ZooKeeper集群,查看ZooKeeper中数据可能会不直观,所以强烈建议指定一个chroot路径,直接在 zookeeper.connect配置项中指定。

而且,需要手动在ZooKeeper中创建路径/kafka,使用如下命令连接到任意一台 ZooKeeper服务器:

 

cd ~/zookeeper
bin/zkCli.sh 
create /kafka ''
在ZooKeeper执行如下命令创建chroot路径。
这样,每次连接Kafka集群的时候(使用--zookeeper选项),也必须使用带chroot路径的连接字符串,后面会看到。

 2.创建topic

 

 

bin/kafka-topics.sh --create --zookeeper 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181/kafka --replication-factor 2 --partitions 3 --topic TEST_123

 说明:

 

上面是创建了一个名为:test-topic的topic,分区数为3,副本数2

3.查看topic

 

bin/kafka-topics.sh --describe --zookeeper 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181/kafka 

 说明:

 

上面是查看zk集群上,当前所有topic的详细情况,如下图:


kafka集群操作命令「建议收藏」
 
上面Leader、Replicas、Isr的含义如下:

 

    1 Partition: 分区
    2 Leader : 负责读写指定分区的节点
    3 Replicas : 复制该分区log的节点列表
    4 Isr : “in-sync” replicas,当前活跃的副本列表(是一个子集),并且可能成为Leader
    我们可以通过Kafka自带的bin/kafka-console-producer.sh和bin/kafka-console-consumer.sh脚本,来验证演示如果发布消息、消费消息。

4.生产消息命令

 

bin/kafka-console-producer.sh
--broker-list
192.168.1.12:9092,
192.168.1.13:9092,
192.168.1.14:9092
--topic
TEST_123

 说明:

 

在上面的kafka broker上的topic上生产消息

5.消费消息命令

 

bin/kafka-console-consumer.sh --zookeeper 192.168.169.91:2181,192.168.1.12:2181,192.168.169.93:2181/kafka --from-beginning --topic TEST_123

 

 说明:

可以在Producer终端上输入字符串消息行,就可以在Consumer终端上看到消费者消费的消息内容。
也可以参考Kafka的Producer和Consumer的Java API,通过API编码的方式来实现消息生产和消费的处理逻辑。

6.启动集群命令

 

bin/kafka-server-start.sh config/server.properties &

 7.停止集群命令

 

bin/kafka-server-stop.sh

 8.删除一个topic

bin/kafka-topics.sh  --delete --zookeeper 192.168.1.11:2181/kafka  --topic TEST_123

 说明:

(1)配置文件server.properties中必须设置delete.topic.enable=true,否则只会标记为删除,而不是真正删除。

(2)执行此脚本的时候,topic的数据会同时被删除。如果由于某些原因导致topic的数据不能完全删除(如其中一个broker down了),此时topic只会被marked for deletion,而不会真正删除。此时创建同名的topic会有冲突。

9.修改topic

(1)修改分区数量:

bin/kafka-topics.sh --alter  --zookeeper 192.168.1.11:2181/kafka --topic TEST_123 --partitions 4

 (2)增加、修改或者删除一个配置参数:

bin/kafka-topics.sh —alter --zookeeper 192.168.1.11:2181/kafka  --topic TESt_123 --config key=value
bin/kafka-topics.sh —alter --zookeeper 192.168.1.11:2181/kafka  --topic
my_topic_name --deleteConfig key

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145869.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c++面试基本问题_面试结果一般要等几天

    c++面试基本问题_面试结果一般要等几天1.    面向对象的程序设计思想是什么?答:把数据结构和对数据结构进行操作的方法封装形成一个个的对象。 2.    什么是类?答:把一些具有共性的对象归类后形成一个集合,也就是所谓的类。 3.    对象都具有的二方面特征是什么?分别是什么含义?答:对象都具有的特征是:静态特征和动态特征。静态特征是指能描述对象的一些属性;

    2022年10月3日
    2
  • web渗透测试学习路线[通俗易懂]

    web渗透测试学习路线[通俗易懂]web渗透学习路线文章目录*web渗透学习路线*前言一、web渗透测试是什么?二、web渗透步骤1.前期工作2.中期提高后期打牢总结前言本文整理的学习路线,清晰明了,重点分明,能快速上手实践,相信想学的同学们都能轻松学完。都是干货啦,先收藏⭐再看吧。本文偏基础能让萌新们快速摸到渗透测试的门道,少走弯路,也能让正在学习的小伙伴们查漏补缺,也欢迎大佬们在评论区指正错误~这里附上我之前学习的路线图提示:以下是本篇文章正文内容,下面案例可供参考一、web渗透测试是什么?Web渗透测试分为白盒测

    2022年6月23日
    33
  • vuex的使用之mapGetters[通俗易懂]

    vuex的使用之mapGetters[通俗易懂]vue项目中,经常会使用到vuex,vuex是vue的一个状态管理。本文简单总结一下:vuex中mapGetters的使用。如果一个变量或对象需要在多个页面和组件中使用,那么,可以使用mapGetters。一.vuex中声明变量个方法1.在state中声明:state:{freeShipping:cookie.get(‘freeShipping’),}2.在mutations中书写方法:mutations:{updatefreeShipping(state,fre

    2022年5月20日
    116
  • Cisco ACS AAA认证

    Cisco ACS AAA认证ACS认证、授权、审计,以及报文交互

    2022年6月3日
    35
  • noip竞赛历年试题_noip2017提高组复赛试题

    noip竞赛历年试题_noip2017提高组复赛试题在线评测:http://codevs.cn/problem/1136/整体思路:失误之处:体会心得:AC代码:

    2022年9月24日
    3
  • windows下怎么安装laravel框架

    windows下怎么安装laravel框架windows下怎么安装laravel框架

    2022年4月24日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号