当前位置: 首页 > news >正文

Windows下安装Kafka(图文记录详细步骤)

Windows下安装Kafka

  • Kafka简介
  • 一、Kafka安装前提
    • 安装Kafka之前,需要安装JDK、Zookeeper、Scala。
    • 1.1、JDK安装(version:1.8)
      • 1.1.1、JDK官网下载
      • 1.1.2、JDK网盘下载
      • 1.1.3、JDK安装
    • 1.2、Zookeeper安装
      • 1.2.1、Zookeeper官网下载
      • 1.2.2、Zookeeper网盘下载
      • 1.2.3、Zookeeper安装
    • 1.3、Scala安装(version:2.12)
      • 1.3.1、Scala官网下载
      • 1.3.2、Scala网盘下载
      • 1.3.3、Scala安装
  • 二、Kafka安装(version:2.12-3.5.1)
    • 2.1、Kafka官网下载
    • 2.2、Kafka网盘下载
    • 2.3、Kafka安装
      • 2.3.1、解压Kafka安装包到安装目录
      • 2.3.2、Kafka安装目录下新建目录logs
      • 2.3.3、修改Kafka配置文件 server.properties
        • 2.3.3.1、修改 log.dirs 参数
        • 2.3.3.2、修改 listeners 参数
    • 2.4、Kafka启动
      • 2.4.1、先启动Zookeeper服务
      • 2.4.2、再启动Kafka服务
    • 2.4、Kafka相关操作(Kafka新版本命令)
      • 2.4.1、创建topics
      • 2.4.2、查看topics
      • 2.4.3、打开一个producer(生产者)
      • 2.4.4、打开一个consumer(消费者)
      • 2.4.5、测试发送和接受消息
        • 2.4.5.1、producer(生产者)发送消息
        • 2.4.5.2、consumer(消费者)接收消息
      • 2.4.5、收不到消息,常见情况

Kafka简介

(一)、Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
(二)、Kafka 本质上是⼀个消息队列。与zeromq不同的是,Kafka是一个独立的框架而不是一个库。
(三)、Kafka 是一种高吞吐量 的分布式发布订阅消息系统,有如下特性:

  • 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。
  • 高吞吐量 :即使是非常普通的硬件Kafka也可以支持每秒数百万的消息。
  • 支持通过Kafka服务器和消费机集群来分区消息。
  • 支持Hadoop并行数据加载。

一、Kafka安装前提

安装Kafka之前,需要安装JDK、Zookeeper、Scala。

Kafka依赖Zookeeper,在安装Kafka之前,需要安装、运行Zookeeper
本次安装版本选择:
JDK:1.8
Zookeeper:3.6.4
Scala:2.12
Kafka:3.5.1

1.1、JDK安装(version:1.8)

1.1.1、JDK官网下载

官网下载地址(需要oracle账号)
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

1.1.2、JDK网盘下载

或者网盘下载:https://pan.baidu.com/s/1MMkFbzcf8ZYvGwdHreXtUg?pwd=yyds

1.1.3、JDK安装

安装方法就不赘述了。

1.2、Zookeeper安装

1.2.1、Zookeeper官网下载

官网下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

1.2.2、Zookeeper网盘下载

或者网盘下载:https://pan.baidu.com/s/1MMkFbzcf8ZYvGwdHreXtUg?pwd=yyds

1.2.3、Zookeeper安装

安装方法就不赘述了。
参考博文:Windows下安装Zookeeper(图文记录详细步骤,手把手包安装成功)

1.3、Scala安装(version:2.12)

1.3.1、Scala官网下载

官网下载地址(需要oracle账号)
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

1.3.2、Scala网盘下载

或者网盘下载:https://pan.baidu.com/s/1MMkFbzcf8ZYvGwdHreXtUg?pwd=yyds

1.3.3、Scala安装

安装方法就不赘述了。
可参考博文:Windows下安装Scala(以Scala 2.11.12为例)

二、Kafka安装(version:2.12-3.5.1)

version:2.12-3.5.1,表示Scala版本是2.12,Kafka版本是基于此的3.5.1版本。

2.1、Kafka官网下载

官网下载地址:https://downloads.apache.org/kafka/3.5.1/kafka_2.12-3.5.1.tgz

2.2、Kafka网盘下载

网盘下载地址:https://pan.baidu.com/s/1Av4ZwQPUaAntwVxz79Ne9w?pwd=yyds

2.3、Kafka安装

2.3.1、解压Kafka安装包到安装目录

这里解压到:D:\bigdata\kafka\2.12-3.5.1

2.3.2、Kafka安装目录下新建目录logs

在这里插入图片描述

2.3.3、修改Kafka配置文件 server.properties

文件路径:D:\bigdata\kafka\2.12-3.5.1\config\server.properties

2.3.3.1、修改 log.dirs 参数

修改 log.dirs 参数值,修改成上一步新建的logs文件夹。注意文件夹路径中是双左斜杠

log.dirs=D:\\bigdata\\kafka\\2.12-3.5.1\\logs

在这里插入图片描述

2.3.3.2、修改 listeners 参数

修改 listeners 参数值,修改成上一步新建的logs文件夹。

listeners=PLAINTEXT://localhost:9092

在这里插入图片描述

2.4、Kafka启动

由于Kafka依赖于Zookeeper,所以要先启动Zookeeper,再启动Kafka。

2.4.1、先启动Zookeeper服务

管理员权限打开命令窗口,输入命令zkServer,启动Zookeeper服务:

zkServer

在这里插入图片描述
显示如下信息,则表示Zookeeper服务正常运行:
在这里插入图片描述

2.4.2、再启动Kafka服务

管理员权限打开命令窗口,进入到Kafka安装目录(D:\bigdata\kafka\2.12-3.5.1)。
输入如下命令启动Kafka服务:

.\bin\windows\kafka-server-start.bat .\config\server.properties

在这里插入图片描述
显示如下信息,则表示Kafka服务正常运行:
在这里插入图片描述

2.4、Kafka相关操作(Kafka新版本命令)

Kafka2.2之后版本中使用–zookeeper hadoop01:2181会出现报错情况,2.2之后的版本使用了–bootstrap-server hadoop01:9092来替换–zookeeper hadoop01:2181

2.4.1、创建topics

以管理员权限新开一个命令提示窗口,进入D:\bigdata\kafka\2.12-3.5.1\bin\windows目录,执行以下命令,创建topics:

kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test

在这里插入图片描述

2.4.2、查看topics

查看topics列表:

bin/kafka-topics.sh --bootstrap-server kafkahost:9092 --list

在这里插入图片描述

2.4.3、打开一个producer(生产者)

以管理员权限新开一个命令提示窗口,进入D:\bigdata\kafka\2.12-3.5.1\bin\windows目录,
在这里插入图片描述
执行以下命令,打开一个producer(生产者):

kafka-console-producer.bat --broker-list localhost:9092 --topic test

在这里插入图片描述

2.4.4、打开一个consumer(消费者)

以管理员权限新开一个命令提示窗口,进入D:\bigdata\kafka\2.12-3.5.1\bin\windows目录,执行以下命令,打开一个consumer(消费者):

kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning

在这里插入图片描述

2.4.5、测试发送和接受消息

以上打开的窗口不要关闭,然后就可以在producer(生产者)控制台窗口输入消息并回车。在消息输入过后,很快consumer(消费者)窗口就会显示出producer(生产者)发送的消息。

2.4.5.1、producer(生产者)发送消息

在producer(生产者)控制台窗口输入消息:
在这里插入图片描述

2.4.5.2、consumer(消费者)接收消息

在consumer(消费者)控制台窗口查看消息:
在这里插入图片描述
我们发现,producer(生产者)发送的消息被consumer(消费者)接受到了。
这里乱码是字符集的问题。

2.4.5、收不到消息,常见情况

  1. 在consumer没有打开之前,就在producer里面发送了消息
  2. producer和consumer使用的topic不一致

相关文章:

Windows下安装Kafka(图文记录详细步骤)

Windows下安装Kafka Kafka简介一、Kafka安装前提安装Kafka之前,需要安装JDK、Zookeeper、Scala。1.1、JDK安装(version:1.8)1.1.1、JDK官网下载1.1.2、JDK网盘下载1.1.3、JDK安装 1.2、Zookeeper安装1.2.1、Zookeeper官网下载1.2.…...

linuxARM裸机学习笔记(3)----主频和时钟配置实验

引言:本文主要学习当前linux该如何去配置时钟频率,这也是重中之重。 系统时钟来源: 32.768KHz 晶振是 I.MX6U 的 RTC 时钟源, 24MHz 晶振是 I.MX6U 内核 和其它外设的时钟源 1. 7路PLL时钟源【都是从24MHZ的晶振PLL而来…...

防勒索病毒

随着勒索软件攻击在2023年的激增,网络安全已成为当今最重要的议题之一。根据区块链分析公司Chainaanalysis的最新报告,勒索软件攻击已成为唯一呈增长趋势的基于加密货币的犯罪行为,勒索金额更是比一年前增加了近1.758亿美元,达到4…...

剑指 Offer 53 - II. 0~n-1 中缺失的数字

力扣 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3] 输出: 2 示例 2: 输入: [0,1,2,3,4,5…...

vue2和vue3区别

vue2和vue3的区别有以下8点: 1、双向数据绑定原理不同; 2、是否支持碎片; 3、API类型不同; 4、定义数据变量和方法不同; 5、生命周期钩子函数不同; 6、父子传参不同; 7、指令与插槽不同&#x…...

IMV3.0

经历了两个版本,基础内容在前面,可以使用之前的基础环境: v1: https://blog.csdn.net/wtt234/article/details/132139454 v2: https://blog.csdn.net/wtt234/article/details/132144907 一、代码组织结构 二、代码 2.…...

怎么在树莓派环境上搭建web网站,并发布到外网可访问,今天教给大家

怎么在树莓派上搭建web网站,并发布到外网可访问? 文章目录 怎么在树莓派上搭建web网站,并发布到外网可访问?概述使用 Raspberry Pi Imager 安装 Raspberry Pi OS测试 web 站点安装静态样例站点 将web站点发布到公网安装 Cpolarcpo…...

大文件传输软件| 生命科学中的关键因素

在2023年,生命科学领域以及其先进的科学技术吸引了人们的目光。这些研究背后,很少有人知道的是,其中涉及了大量的研究数据需要实时进行文件传输,以便于研究,合作,分享,分析,临床试验…...

varint编码实现原理

简言 1. varint即 variable int,也就是变长整型,在mysql,levelDB,protobuf中都有使用 2. varint编码的优点是对数值较小的数进行编码后占用字节较少,比如[0-127]只占用1个字节,[128~16383]只占用2个字节。…...

如果新电脑是刚安装的mysql,但是旧电脑迁移过来的文件里面有相关的rails文件,运行rake db:migrate一直报错

$ bundle exec rake db:migrate#运行完命令报错 rake aborted! LoadError: libmysqlclient.so.21: cannot open shared object file: No such file or directory - /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/mysql2-0.5.5/lib/mysql2/mysql2.so /home/m…...

ChatGPT已闯入学术界,Elsevier推出AI工具

2022年11月,OpenAI公司发布了ChatGPT,这是迄今为止人工智能在现实世界中最重要的应用之一。 当前,互联网搜索引擎中出现了越来越多的人工智能(AI)聊天机器人,例如谷歌的Bard和微软的Bing,看起来…...

深度学习论文: RepViT: Revisiting Mobile CNN From ViT Perspective及其PyTorch实现

深度学习论文: RepViT: Revisiting Mobile CNN From ViT Perspective及其PyTorch实现 RepViT: Revisiting Mobile CNN From ViT Perspective PDF: https://arxiv.org/pdf/2307.09283.pdf PyTorch代码: https://github.com/shanglianlm0525/CvPytorch PyTorch代码: https://gith…...

R语言3_安装SeurateData

环境Ubuntu22/20, R4.1 在命令行中键入, apt-get update apt install libcurl4-openssl-dev libssl-dev libxml2-dev libcairo2-dev libgtk-3-dev # libcairo2-dev :: systemfonts # libgtk :: textshaping进入r语言交互环境,键入, instal…...

详解Gillespie算法:使用Python构建分子化学模拟及其在随机多智能体动力学中的应用

第一部分:Gillespie算法简介 Gillespie算法是一种利用蒙特卡洛抽样模拟化学体系随机动力学行为的方法[3]。它是由Joseph L. Doob提出的,用于生成具有已知反应速率的随机方程组的统计上正确的轨迹(可能的解)[5]。在本文中,我们将详细介绍Gillespie算法的原理,并使用Pytho…...

Unity数字可视化学校_昼夜(三)

1、删除不需要的 UI using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class EnvControl : MonoBehaviour {//UIprivate Button btnTime;private Text txtTime; //材质public List<Material> matListnew Li…...

使用罗技鼠标后 弹出当前页面的脚本发生错误AppData/Local/Temp/LogiUI/Pak/js/jquery-1.3.2.min.js解决

使用的台式机&#xff0c;没有蓝牙驱动&#xff0c;在用logi无线鼠标时&#xff0c;把鼠标连接插入台式机后弹出的如上图所示这个提示&#xff0c;无论是点是/否&#xff0c;还是X掉上图提示&#xff0c;电脑右下角的图依然存在。不习惯这丫的存在。 我重启还是有&#xff0c;然…...

Kubernetes(K8s)从入门到精通系列之十四:安装工具

Kubernetes K8s从入门到精通系列之十四&#xff1a;安装工具 一、kubectl二、kind三、minikube四、kubeadm 一、kubectl Kubernetes 命令行工具 kubectl&#xff0c; 让你可以对 Kubernetes 集群运行命令。 你可以使用 kubectl 来部署应用、监测和管理集群资源以及查看日志。 …...

【Python】Python元组学习

Python之元组学习记录 一、元组的特点 可以容纳多个数据可以容纳不同类型的数据&#xff08;混装&#xff09;数据是有序存储的&#xff08;下标索引&#xff09;允许重复数据存在不可以修改&#xff08;增加或删除元素等&#xff09;但内部list元素可以被修改支持while&…...

HTML 元素的属性有哪些?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ class⭐ id⭐ style⭐ src⭐ href⭐ alt⭐ width和height⭐ disabled⭐ value⭐ required⭐ placeholder⭐ checked⭐ selected⭐ target⭐ colspan和rowspan⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得…...

Spring之事务实现方式及原理

目录 Spring事务简介 Spring支持事务管理的两种方式 编程式事务控制 声明式事务管理 Spring事务角色 未开启事务之前 开启Spring的事务管理后 事务配置 事务传播行为 事务传播行为的可选值 Spring事务简介 事务作用&#xff1a;在数据层保障一系列的数据库操作同成功…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言&#xff1a; 最近在做行为检测相关的模型&#xff0c;用的是时空图卷积网络&#xff08;STGCN&#xff09;&#xff0c;但原有kinetic-400数据集数据质量较低&#xff0c;需要进行细粒度的标注&#xff0c;同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

回溯算法学习

一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...