kafka operation

运行环境:mac os

1. 启动zookeeper

./bin/zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties

2. 启动kafka服务

./bin/kafka-server-start /usr/local/etc/kafka/server.properties

3. 查看topic列表

./bin/kafka-topics --list --zookeeper localhost:2181

4. 创建topic

./bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic hezhixiong--create:指定创建topic动作
--zookeeper:指定kafka连接zk的地址
--replication-factor:指定每个分区的复制因子个数,默认1个
--partitions:指定当前创建的kafka分区数量,默认为1个
--topic:指定新建topic的名称

5. 查看topic的描述信息

./bin/kafka-topics --describe --zookeeper localhost:2181 --topic hezhixiong

6. 修改topic信息

./bin/kafka-topics --zookeeper localhost:2181 --alter --topic hezhixiong --partitions 4
<!-- Kafka分区数量只允许增加,不允许减少 -->

7. 删除topic

./bin/kafka-topics --zookeeper localhost:2181 --delete --topic hezhixiong
Topic hezhixiong is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.默认情况下Kafka的Topic是没法直接删除的,而是标记删除而已。如果需要彻底删除topic,有以下两种方式:
1. 通过delete命令删除后,手动将本地磁盘以及zk上的相关topic的信息删除
2. 配置server.properties文件,给定参数delete.topic.enable=true,重启kafka服务,此时执行delete命令表示允许进行Topic的删除

8. 生产者

./bin/kafka-console-producer --broker-list localhost:9092 --topic hezhixiong

9. 消费者

./bin/kafka-console-consumer --bootstrap-server localhost:9092 --topic hezhixiong --from-beginning

 10. broker集群

  首先为每个broker创建一个配置文件:

cd /usr/local/etc/kafka
cp server.properties server_1.properties
cp server.properties server_2.propertiesvi server_1.propertiesbroker.id=1 listeners=PLAINTEXT://:9093 log.dir=/tmp/kafka-logs/one
vi server_2.propertiesbroker.id=2 listeners=PLAINTEXT://:9094 log.dir=/tmp/kafka-logs/two

  broker.id是集群中每个节点的唯一且永久的名称,我们修改端口和日志目录是因为我们现在在同一台机器上运行,我们要防止broker在同一端口上注册和覆盖对方的数据。

  我们已经运行了zookeeper和刚才的一个kafka节点,所有我们只需要在启动2个新的kafka节点。

./bin/kafka-server-start /usr/local/etc/kafka/server_1.properties
./bin/kafka-server-start /usr/local/etc/kafka/server_2.properties

  现在,我们创建一个新topic,把备份设置为3

./bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic hzx-new
./bin/kafka-topics --describe --zookeeper localhost:2181 --topic hzx-new 查看topic得到输出如下:
Topic:hzx-new PartitionCount:1 ReplicationFactor:3 Configs:
Topic: hzx-new Partition: 0 Leader: 2 Replicas: 2,1,0 Isr: 2,1,0

从上面的输出,我们可以得出结论,第一行给出所有分区的摘要,显示主题名称,分区数量和我们已经选择的复制因子。在第二行中,每个节点将是分区的随机选择部分的领导者。

在我的例子中,我看到的第一个broker(with broker.id 2)是领导者。 然后Replicas:2,1,0 意味着所有代理复制主题。最后 Isr 是 in-sync 副本的集合。 那么,这是副本的子集,当前活着并被领导者赶上。

"leader":该节点负责该分区的所有的读和写,每个节点的leader都是随机选择的。
"replicas":备份的节点列表,无论该节点是否是leader或者目前是否还活着,只是显示。
"isr":“同步备份”的节点列表,也就是活着的节点并且正在同步leader。

  启动生产者和消费者,在生产者端发送消息,在消费者端能看到消息的消息

./bin/kafka-console-producer --broker-list localhost:9092 --topic hzx-new   (生产者)
./bin/kafka-console-consumer --bootstrap-server localhost:9092 --topic hzx-new --from-beginning  (消费者)

   体验并测试kafka集群的容错,目前Leader是broker2,所以结束调broker2,并查看topic:hzx-new 的信息,输出如下

Topic:hzx-new    PartitionCount:1    ReplicationFactor:3    Configs:Topic: hzx-new    Partition: 0    Leader: 1    Replicas: 2,1,0    Isr: 1,0可以看出 broker2已经不再同步备份集合里了,备份节点之一的broker1成为了新的leader了。

 

参考资料:

http://orchome.com/6

转载于:https://www.cnblogs.com/hezhixiong/p/10078994.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/426283.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

csirs参考信号_发送和接收点(TRP)及信道状态信息参考信号(CSI-RS)传输的方法与流程...

本文中所公开的一个或多个实施例涉及发送和接收点(trp)及信道状态信息参考信号(csi-rs)传输的方法。背景技术&#xff1a;对于使用更高频率的新无线电(nr)&#xff0c;可以引入使用数字和模拟电路来执行波束成型的混合(模拟/数字)波束成型系统。在混合波束成型系统中&#xff0…

java学习(105):字符串indexof,spilt,substring方法

public class test44 {//分割字符串数组public static String[] spitString(String resource,String tag){return resource.split(tag);} }测试 public class test43 {public static void main(String[] args){//String的indexofString mail"javascript.com";System…

初中人教版计算机具体课程,构建信息技术支持下的中学数学课程

摘要&#xff1a;信息时代&#xff0c;数学教育面临着前所未有的机遇和挑战。本文首先结合信息技术的特点&#xff0c;阐述了数学教学方式发生的变化。在此背景下&#xff0c;探讨了数学教学内容也应随之发生变化&#xff0c;数学课程应当尽可能地使用计算器和计算机&#xff0…

redis:Invalid input of type: 'bool' type. Convert to a byte,string or number first

分析:出现此错误的原因是redis版本过高导致的,因此降低redis版本即可 解决: pip install -U redis2.10.6转载于:https://www.cnblogs.com/dakewei/p/10079023.html

mysql创建表格1warning_MySQL:创建、修改和删除表

在说创建、修改和删除表前&#xff0c;我们还是要进行一个操作的简单说明&#xff1a;1.登陆数据库系统在命令行中登陆MySQL数据库管理系统&#xff0c;输入一下内容&#xff1a;mysql -h localhost -u root -p很多人都知道这个&#xff0c;但是其中参数的具体表示什么我们还是…

朴素贝叶斯应用:垃圾邮件分类

1. 数据准备&#xff1a;收集数据与读取 2. 数据预处理&#xff1a;处理数据 3. 训练集与测试集&#xff1a;将先验数据按一定比例进行拆分。 4. 提取数据特征&#xff0c;将文本解析为词向量 。 5. 训练模型&#xff1a;建立模型&#xff0c;用训练数据训练模型。即根据训练样…

java学习(106):字符串tocharArray,tolowercase,touppercase方法

public class test45 {//将给定的字符串返回成一个数组public static char[] toArrayFromString(String target){return target.toCharArray();}//大小写转换根据所给的第二个参数取决于大小写转换public static String toLowerUpper(char[] chs,char ch){if(chl||chL)return …

win10计算机启动一分钟重启,Win10开机提示电脑将在一分钟后自动重启怎么办?...

Win10开机提示“你的电脑将在一分钟后自动重启”怎么办&#xff1f; 最近一位用户又遇到了开机问题&#xff0c;该用户在开机后总是提示“你的电脑将在一分钟后自动重启&#xff0c;Windows遇到问题并且需要重新启动&#xff0c;你应立刻关闭此消息并保存你的工作。”&#xff…

xman的思维导图快捷键_一图胜千言,免费的多人协作思维导图工具,推荐收藏值得拥有哦...

今天给大家推荐一款思维导图制作软件&#xff1a;GitMind&#xff0c;捕捉灵感&#xff0c;激发创意。免费在线思维导图软件&#xff0c;简化逻辑梳理&#xff0c;集思广益&#xff0c;释放创造力在线脑图、思维导图、流程图、工业设计、工程管理&#xff0c;一图涵千面。GitMi…

java学习(107):StringBuilder

//stringbuilder public class test47 {public static void main(String[] args){StringBuilder buildernew StringBuilder("我是一个热血的少年");System.out.println(builder);} }运行结果

单点登录 之 OAuth

OAuth2.0是什么 OAuth2.0是什么——豆瓣和QQ的故事 OAuth简单说就是一种授权的协议&#xff0c;只要授权方和被授权方遵守这个协议去写代码提供服务&#xff0c;那双方就是实现了OAuth模式。 举个例子&#xff0c;你想登录豆瓣去看看电影评论&#xff0c;但你丫的从来没注册过豆…

修改tomcat服务器图标,如何修改tomcat项目的图标(两种)

我们在查看网页的时候很多网站都有自己的小图标&#xff0c;系统读取这个标志的时候先从你的项目的根目录下读看有没有favicon.ico文件&#xff0c;如果有直接显示这个图标&#xff0c;如果没有&#xff0c;则会去webapps/root/下找这个文件&#xff0c;如果这两个地方都没有&a…

ueditor上传图片写入数据库_手把手教你,如何用交管12123上传驾驶证照片!

12123APP普及后方便了很多司机朋友足不出户就能办理交管业务然而交管业务网上办理过程中因为一些小问题的存在导致业务受理受阻例如&#xff1a;司机朋友在使用“交管12123”手机APP办理补换领机动车驾驶证等业务时出现了以下情况▼这种情况可能有两种原因&#xff1a;第一种是…

java学习(108):StringBuilder连接字符串和删除操作

public class test48 {//连接字符串public static String concatString(String base,String[] str){StringBuilder buildernew StringBuilder(base);//构建可变字符串for(String s:str){builder.append(" "s);}return builder.toString();}//删除空格public static …

cad怎么把图层英文变成中文_CAD图层管理器昨天是中文的今天怎么变英文 – 手机爱问...

2008-06-14ctrlaltdel,调不出运行输入 c回车打开组策略&#xff0c;在左侧选用户配置/管理模板/系统/CtelAltDel选项/在右侧选&#xff0c;“删除任务管理器”双击它&#xff0c;在打开的对话框中选择“未配置”&#xff0c;设置后按应用确定&#xff0c;重启电脑即可。 另一个…

pcl-三维点云库

pcl-三维点云库 pcl::PointCloud的一些属性值 width(int) two meanings:it can specify the total number of points in the cloud for unorganized point cloud datasets;it can specify the width (total number of points in a row) of an organized point cloud dataset.Th…

奇迹世界服务器不响应,sun-奇迹世界 目前常见问题解决方法

Q&#xff1a;游戏安装过程中提示“ctor.dll路径错误&#xff0c;无法查找相关模块”的解决方法A&#xff1a;下载时没有完整的下载到安装文件时发生类似的问题。先到C:\ProgramFiles\Common Files\InstallShield\6\Intel32文件夹然后将里面的文件删除后&#xff0c;重新安装游…

java学习(109):StringBuilder,stringbuffer,string区别

String、StringBuffer和StringBuilder区别 1、长度是否可变 String 是被 final 修饰的&#xff0c;他的长度是不可变的&#xff0c;就算调用 String 的concat 方法&#xff0c;那也是把字符串拼接起来并重新创建一个对象&#xff0c;把拼接后的 String 的值赋给新创建的对象S…

etlgr是什么服务器_ETL是指什么 - 金融行业 - ITPUB论坛-中国专业的IT技术社区

ETL 简介 frim wwwETL是建置或更新数据仓储中的内容时&#xff0c;对于所需之数据进行数据撷取、转换、加载的过程&#xff0c;由字面上即能得知它是由三个环环相扣的步骤所组成&#xff1a;Extract - 数据撷取、Transform - 数据转换与Load - 数据加载 。ETL ( Extract-Tran…

楚留香手游系统互通的服务器,楚留香手游互通服务器汇总 哪些服能一起玩

楚留香手游互通服务器汇总 哪些服能一起玩由第一手游网小编为大家带来&#xff0c;游戏中有一些服务器它的安卓和ios是互通的可以一起玩的&#xff0c;楚留香手游哪些服能一起玩&#xff1f;哪些服务器互通&#xff1f;来看看吧&#xff01;楚留香手游互通服务器汇总少侠不必担…