分享好友 最新动态首页 最新动态分类 切换频道
Kafka:安装与简单使用
2024-12-26 22:09

下载地址:kafka-download

下载完后,找一个目录解压。

解压完成后,看看目录结构。

对于linux来讲,所有的启动文件都放在bin目录下,那一堆sh文件

对于windows来讲,所有的启动文件放在binwindows目录下,一堆bat文件。

需要到config目录下,找到server.properties文件,指定log目录

 

指定在kafka安装目录就可以。

目录结构

 

bin目录下放了一堆Kafka的启动文件,包括kafka启动文件、zookeeper启动文件。binwindows目录下甚至还有一套给windows用的启动文件。

config目录下有一堆配置文件,包括kafka服务器的配置文件server.properties,以及ZooKeeper的配置文件zookeeper.properties等。

启动服务器

Kafka使用ZooKeeper,因此如果还没有ZooKeeper服务器,需要先启动一个。

Kafka的那一堆打包脚本里提供了一个简单的单节点ZooKeeper实例,cmd内调用

 

Zookeeper启动后,再启动Kafka服务器

 

到这里,Kafka服务器启动成功。

创建主题

创建一个主题,名为test,设定只有一个分区,保留一个副本。

 

如果想查看当前的主题列表

 

除了手动创建主题以外,还可以将代理配置一下,设置成在发布不存在的主题时自动创建主题。

发送一些消息

Kafka带有一个命令行客户端,该客户端将从文件或者标准输入中获取输入,并将其作为消息发送到Kafka集群。

默认情况下,每行将作为单独的消息发送。

运行生产者,在控制台中输入一些消息以发送到服务器

 

这时候用kafka tool查看就可以看到

启动消费者

Kafka还有一个消费者命令行,可以将消息转存到标准输出

 

如图

如果在不同的终端运行着生产者和消费者的命令行,那么现在应该能够在生产者终端中输入消息,并看到它们出现在消费者终端中。

所有命令行工具都有附加选项。之后可以记录查看。

设置多代理集群

在之前,我们的Kafka集群只有一个代理。虽然启动更多的代理并没有什么太大的作用,但是我们这里可以先感受一下(在本地机器上)将集群扩展为3个节点的方法

首先我们需要为每个broker都创建一个配置文件(windows上用copy指令

 

然后分别编辑这几个配置文件,主要修改以下几个属性即可

 

默认的server.properties,broker.id=0,listener默认应该是9092。

broker.id,这个属性是每个代理的唯一名称,要保证不重复。

这里重写端口和日志目录,是因为我们需要在同一台机器上运行它们,所以要避免不同代理使用同一端口的情况。

之前我们已经启动了ZooKeeper和一个单节点,现在我们启用两个新来的节点

 

启动之后,在kafka tool中可以看到

broker已经变成3个了。

现在再创建一个复制因子为3的新主题

 

既然我们现在有了一个集群,那我们怎么知道集群下每个代理都在做些什么

使用describe指令

 

第一行给出了所有分区的摘要,之后每附加一行就给出一个分区的信息。

当前主题只有一个分区,所以只有一行。

  • leader:负责给定分区所有读取和写入的节点。每个节点都可能成为领导者
  • replicas:副本,哪些节点复制了此分区的日志
  • Isr:一组同步副本,是replicas的子集,当前存活,且进度跟leader一样

在我们的示例中,my-replicated-topic 只有一个分区,分区下只有一个leader节点。

如果想在新主题下发布或者查看消息的话,跟之前一样,改改topic名就可以,比如说发布

 

如果我们这时候把leader节点关掉,也并不会影响整个集群的时候,kafka将在现有的可用节点里选择一个作为leader,原先的leader也将不会在同步副本集中。

2022-4-13 17:47:20 以上测试失败,集群崩掉了。。

常见问题

在kafka安装目录下,输入命令

 

结果报错

 

疑似原因是kafka目录建的太深了,原先我的kafka根目录位于磁盘下的四级目录,直接放在磁盘目录下就好了。

很神奇的问题,据说就是文件夹树的深度太深了。

可视化查看kafka topic内容的工具

下载地址:https://www.kafkatool.com/download.html

安装后,双击.exe,启动工具就可以。

右键add 新链接,填写基本信息

bootstrap servers多是限制只能用域名来访问,所以需要自己设置hosts。

C:WindowsSystem32driversetc 下的 hosts 文件中,添加入 kafka 的集群域名, 例如

 

kafka tool支持的功能有很多,还可以模拟发送message,功能很丰富。

详细的功能,可以参照参考文献1。

打印当前所有topic

 
 

2022-4-26 13:53:21 第一种方式好像不行,删完之后直接kafka打不开了。

2022-4-26 14:13:42 windows端删除topic就是有问题每次删除必崩溃。我已经不敢动了。

彻底删除topic有两种方式

  1. 删除kafka存储目录下相关topic目录。(即server.properties中对log.dirs的设置
  2. 如果配置了delete.topic.enable=true直接通过命令删除,如果命令删除不掉,直接通过zookeeper-client 删除掉broker下的topic即可。
 
 

The Cluster ID doesn’t match stored clusterId

最新文章
跨越王X7该怎么选 买轻型卡车选它就对了
在与同级别车型的竞争中,在空间表现上值得一说。接下来就让我们一起来看一下吧。首先从外观来看,跨越王X7车头设计显得十分稳重 ,看上去很有运动气息。再采用了简洁的前车灯设计,符合年轻消费者的“口味”。该车配备了前雾灯、等。来到
万剑挂机与高效双开神器精选推荐,助你轻松征服游戏世界,畅享无限乐趣
在《万剑》这款引人入胜的武侠游戏中,挂机与双开无疑是提升游戏体验、加速资源积累的重要手段,对于广大玩家而言,找到一款高效、安全的挂机软件以及便捷的双开工具,无疑是如虎添翼,就让我们一起探索那些能够轻松搞定《万剑》双开和挂机
关于新奥免费资料大全的细化释义与落实解析
随着科技的飞速发展和信息时代的到来,人们对于各类资料的需求日益旺盛,特别是在教育领域,资料的获取对于学生的学习和教师的教授至关重要,本文将围绕“新奥免费资料大全”这一主题展开,细化释义并探讨如何落实这一资源,为广大师生提供
荣威i6 MAX EV配置怎么选
使用经济性虽然是买车时的一个关注点,但对那些一年只跑几千公里的用户来说,其实影响很小。配置的高低一定程度上决定了一款车的竞争力,就比如我们这篇文章讲的。现在就让大家跟着小编一起来看看它都有哪些表现吧。首先从外观来看,荣威i6
明白:为什么选择免费外链平台
在现代互联网时代,免费外链平台在网站推广中起着至关重要的作用。免费外链平台是指可以免费发布和分享网站链接的平台,这些平台可以为网站提供高质量的外部链接,从而提升网站的权重和排名。选择合适的免费外链平台可以帮助网站获得更多的
超真实美女写真生成神器!使用AI工具轻松打造你的AI女友
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个科技飞速发展的时代,很多人都对人工智能产生了极大的兴趣,特别是AI生成的图片技术。
赛车打枪小游戏怎么玩?超详细教程视频来了!
哎呦喂,今儿个咱来唠唠那个啥,小游戏赛车打枪的教程视频。我这老太婆一个,大字不识几个,玩那游戏可费劲儿了。但俺家那小孙子天天抱着个手机,玩得那叫一个带劲儿。我就在旁边瞅着,看他咋玩的,也跟着瞎琢磨琢磨,今儿个就给大伙儿说道
自动剪辑短剧视频:探秘AI生成工具的名称究竟是什么
在数字化时代的浪潮中人工智能技术正以前所未有的速度改变着咱们的生活方法。其中自动剪辑短剧视频的工具更是让短视频创作变得触手可及。多人对这些神奇的工具充满好奇却又一头雾水。它们究竟是怎么样工作?那些令人惊叹的短剧生成工具的名
莱西屋顶漏水维修电话〈免费上门〉莱西市屋顶防水补漏师傅
不砸砖、不砸墙;免砸砖防水补漏技术,2小时快速解决漏水问题,超长保修期。漏水维修服务项目:高压注浆堵漏、窗台防水补漏、飘窗防水、防水施工、漏水检测维修、墙壁发霉、泳池渗水、洗浴间漏水、房顶漏水、厂房漏水维修、屋顶漏水、彩钢瓦防
拼多多怎么发视频
拼多多,作为国内知名的电商平台,不仅提供了丰富的商品选择,还为用户提供了多样的互动方式,其中之一便是发布视频。通过视频,用户可以更直观地展示商品、分享心得或进行娱乐。那么,如何在拼多多上发布视频呢?以下是详细的步骤说明:**
相关文章
推荐文章
发表评论
0评