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

kafka(二)安装部署(2)windows

目录

一、前提

1、jdk

2、Zookeeper

2.1、解压

2.2、创建data文件夹

2.3、配置文件

2.4、添加环境变量

2.5、启动zk:zkServer

2.6、客户端

3、Scala

3.1、下载安装

3.2、配置环境变量

3.3、验证是否安装成功

二、kafka下载安装

1、下载

2、安装

2.1、解压

2.2、新建logs目录

​编辑 2.3、修改配置文件

2.3.1、修改 log.dirs 参数

2.3.2、修改 listeners 参数

3、启动 

4、kafka操作 

4.1、创建topic

4.2、查看topic列表 

4.3、创建生产者

4.4、创建消费者 

4.5、测试收发消息 


一、前提

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

本次安装版本选择:
JDK:1.8
Zookeeper:3.6.4
Scala:2.12
Kafka:3.5.2

1、jdk

Java Downloads | Oracle

见jdk下载安装。

2、Zookeeper

下载地址

Apache ZooKeeper

Apache Download Mirrors

下载后安装:

2.1、解压

进入到解压后的文件查看:

2.2、创建data文件夹

2.3、配置文件

(1)进入config目录 ,复制zoo_sample.cfg文件,改名为zoo.cfg,更改zoo_sample.cfg 文件名为 zoo.cfg 的原因为:安装的bin目录下的 zkEnv.cmd文件内指定了使用 zoo.cfg文件。

(若不更改zoo_sample.cfg文件名,也可直接把此文件中的 zoo.cfg 更改为 zoo_sample.cfg

(2)修改配置文件 zoo.cfg:

把dataDir=/tmp/zookeeper
修改为:
dataDir=D:\\javas\\zk\\apache-zookeeper-3.6.4-bin\\data
注意:此处的路径一定要使用双斜杠" \ ",如果是单斜杠,在启动服务端时会把配置的内容输出到 bin 目录下面)
2.4、添加环境变量

    ①新建环境变量

   点击确定

  ②将新建的环境变量添加到系统变量path中

2.5、启动zk:zkServer

以管理员权限打开cmd命令窗口,输入

zkServer

或者进入到 bin 目录,双击 zkServer.cmd: 

2.6、客户端

客户端连接Zookeeper:zkCli,

以管理员权限打开命令窗口,输入:zkCli

3、Scala
3.1、下载安装

下载地址:https://downloads.lightbend.com/scala/2.11.12/scala-2.11.12.msi

下载后按照提示一步步安装,如我安装在

3.2、配置环境变量

(1)新增环境变量%SCALA_HOME% 

(2)%SCALA_HOME%\bin添加到path中

 

3.3、验证是否安装成功

cmd输入:Scala

二、kafka下载安装

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

1、下载

官网下载地址:Index of /kafka/3.5.2 (apache.org)

2、安装
2.1、解压

如我解压到D:\javas\kafka\kafka_2.12-3.5.2

2.2、新建logs目录
 2.3、修改配置文件

修改Kafka配置文件 server.properties

文件路径:D:\javas\kafka\kafka_2.12-3.5.2\config\server.properties

2.3.1、修改 log.dirs 参数

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

log.dirs=D:\\javas\\kafka\\kafka_2.12-3.5.2\\logs
2.3.2、修改 listeners 参数
listeners=PLAINTEXT://localhost:9092

3、启动 

(1)启动zk:

   由于Kafka依赖于Zookeeper,所以要先启动Zookeeper,cmd输入zkServer即可启动zk。

(2)启动kafka:

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

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

4、kafka操作 

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

以下命令均在D:\javas\kafka\kafka_2.12-3.5.2\bin\windows目录下:

4.1、创建topic

cmd打开一个新窗口:

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

4.2、查看topic列表 
kafka-topics.bat --bootstrap-server localhost:9092 --list

4.3、创建生产者

cmd打开一个新窗口

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

4.4、创建消费者 

cmd打开一个新窗口

4.5、测试收发消息 

(1)在producer(生产者)控制台窗口输入消息:

(2)在consumer(消费者)控制台窗口查看消息:

注意:收不到消息,常见情况

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

三、kafka manager控制台

为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager。这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况。它支持管理多个集群、选择副本、副本重新分配以及创建Topic。同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具,有如下功能:

1.管理多个kafka集群
2.便捷的检查kafka集群状态(topics,brokers,备份分布情况,分区分布情况)
3.选择你要运行的副本
4.基于当前分区状况进行
5.可以选择topic配置并创建topic(0.8.1.1和0.8.2的配置不同)
6.删除topic(只支持0.8.2以上的版本并且要在broker配置中设置delete.topic.enable=true)
7.Topic list会指明哪些topic被删除(在0.8.2以上版本适用)
8.为已存在的topic增加分区
9.为已存在的topic更新配置
10.在多个topic上批量重分区
11.在多个topic上批量重分区(可选partition broker位置)

https://github.com/yahoo/kafka-manager

下载kafka-manager的releases中的最新zip版本: https://github.com/yahoo/kafka-manager/releases

相关文章:

kafka(二)安装部署(2)windows

目录 一、前提 1、jdk 2、Zookeeper 2.1、解压 2.2、创建data文件夹 2.3、配置文件 2.4、添加环境变量 2.5、启动zk:zkServer 2.6、客户端 3、Scala 3.1、下载安装 3.2、配置环境变量 3.3、验证是否安装成功 二、kafka下载安装 1、下载 2、安装 2.1…...

aliplayer Server returned 403 Forbidden (access denied)

最近在接入阿里云播放器的sdk,项目的播放地址是m3u8的,h265的url 输入播放源以后播放报错,提示403,拒绝访问,起初以为是crt路径问题和key的问题,然后检查了以后没问题,后来又看了一下是不是白名单的问题,但是项目资源没通过阿里云平台存储 AVPUrlSource *source [[AVPUrlSou…...

单例模式(下)

文章目录 文章介绍步骤安排及单例讲解step1:注册单例类型(main.cpp)step2:定义类和私有构造函数(keyboardinputmanager.h)step3:(keyboardinputmanager.cpp)step4:在qml中…...

合约期VS优惠期,搞明白他们的区别才能避免很多坑!

在购买流量卡时,相信大家也都发现了,市面上的不少套餐都是有合约期和优惠期的,尤其是联通和移动,那么,什么是合约期?什么又是优惠期呢? ​ 其实,目前很多在网上办理的大流量卡都是有…...

函数式反应式编程(FRP)在Scala中的实践与探索

函数式反应式编程(Functional Reactive Programming,简称FRP)是一种编程范式,它结合了函数式编程(Functional Programming,FP)的声明式特性和反应式编程(Reactive Programming&#…...

NGINX配置web文件服务

一、需求描述 系统需要提供文件(pdf、图片)等上传后支持预览功能。 二、实现方式 2.1 文件权限配置 chmod arwx -R public/chmod 是更改文件权限的命令。-R 是递归选项,表示更改目录及其所有子目录和文件的权限。arwx 是权限设置&#xf…...

deepspeed docker集群实现多机多卡训练----问题记录及解决方案资源汇总

. Docker中实现Deepspeed多机多卡训练 【掘金-雨田君的记事本】docker容器中deepspeed多机多卡集群分布式训练大模型 . 问题记录及解决方案资源汇总 问题1&#xff1a;deepspeed socketStartConnect: Connect to 172.18.0.3<54379> failed : Software caused connectio…...

恢复 IntelliJ IDEA 中消失的菜单栏

要恢复 IntelliJ IDEA 中消失的菜单栏&#xff0c;可以按照以下简单步骤操作&#xff1a; 使用快捷键打开搜索&#xff1a;首先&#xff0c;双击 Shift 键打开全局搜索对话框。 搜索“Menu”&#xff1a;在搜索框中输入 menu&#xff0c;然后从搜索结果中选择与“Main Menu”相…...

漏洞利用开发基础学习记录

文章目录 简介Win32缓冲区溢出内容难点 SEH 溢出内容难点 Egg Hunters内容难点 Unicode 溢出内容难点 x86-64 缓冲区溢出内容难点 参考资料 简介 本文基于ERC.Xdbg漏洞分析文章进行初步归纳整理&#xff0c;主要有Win32 缓冲区溢出、SEH 溢出、Egg Hunters、Unicode 溢出、x86…...

云通SIPX,您的码号资源智能调度专家!

在数字化转型的浪潮中&#xff0c;号码资源作为企业与客户沟通的重要桥梁&#xff0c;其管理效率直接关系到企业运营的成败。随着运营商对号码资源管理的规范化和精细化&#xff0c;企业对高效、智能的号码资源管理需求日益增长&#xff0c;以实现对外呼叫的降本增效。 一、什么…...

04-Mysql 索引,事务

MySQL 索引介绍 索引是一个排序的列表&#xff0c;在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址。在数据十分庞大的时候&#xff0c;索引可以大大加快查询的速度。这是因为使用索引后可以不用扫描全表来定位某行的数据&#xff0c;而是先通过索引表找到该行…...

U盘提示格式化怎么搞定?本文有5种方法(内含教程)

U盘提示格式化是一种常见故障&#xff0c;即&#xff1a;当U盘插入电脑后&#xff0c;电脑上弹出对话框&#xff0c;提示该U盘需要格式化才能使用。 接触不良、文件系统损坏、热插拔、感染病毒、芯片损坏等原因都可能导致U盘出现此故障。这时点击“格式化”&#xff0c;大概率会…...

day02-登录模块-主页鉴权

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1.分析登录流程1.1传统思路是登录校验通过之后&#xff0c;直接调用接口&#xff0c;获取token之后&#xff0c;跳转到主页1.2vue-element-admin模板的登录思路&…...

git rebase的使用

没有排版&#xff0c;但是干货 因为项目要求&#xff0c;所以使用rebase指令 我使用的是rebase 的分支变基的功能 情景描述&#xff1a; 一共有两个分支&#xff1a;master owner 我在owner分枝上开发&#xff0c;有好多次commit master上也有同事在正常commit&#xff0c; …...

LICEcap-开源GIF 屏幕录制工具

LICEcap-开源GIF 屏幕录制工具 开源GIF 屏幕录制工具 下载可以访问&#xff1a;https://www.cockos.com/licecap/ 点击Record&#xff0c;开始录制 点击Stop&#xff0c;停止录制 点击Record&#xff0c;进入该页面 display in animation&#xff08;在动画中显示&#xff09; …...

【Java Web】会话管理

目录 一、为什么需要会话管理&#xff1f; 二、会话管理机制 三、Cookie概述 四、HttpSession概述 4.1 HttpSession时效性 一、为什么需要会话管理&#xff1f; HTTP协议在设计之初就是无状态的&#xff0c;所谓无状态就是在浏览器和服务器之间的通信过程中&#xff0c;服务器并…...

RestTemplate修改默认转换器,使用FastJsonConverter

问题描述&#xff1a; 在使用RestTemplate发送POST请求时&#xff0c;发现发送的数据并未按配置的JSONField转换&#xff0c;导致服务方一直收不到参数 排查过程&#xff1a; 将itemList改成Items传输即可 原因分析&#xff1a; RestTemplate有默认的转换器&#xff0c;所以…...

什么是div移动指令?如何用vue自定义指令实现?

目录 一、Vue.js框架介绍二、vue自定义指令directive三、什么是div移动指令四、使用vue自定义指令directive写一个div移动指令 一、Vue.js框架介绍 Vue.js是一个用于构建用户界面的渐进式JavaScript框架。它设计得非常灵活&#xff0c;可以轻松地被集成到现有的项目中&#xf…...

Golang | Leetcode Golang题解之第187题重复的DNA序列

题目&#xff1a; 题解&#xff1a; const L 10 var bin map[byte]int{A: 0, C: 1, G: 2, T: 3}func findRepeatedDnaSequences(s string) (ans []string) {n : len(s)if n < L {return}x : 0for _, ch : range s[:L-1] {x x<<2 | bin[byte(ch)]}cnt : map[int]in…...

智能猫砂盆到底是不是智商税?解救上班族双手的测评合集来了

不得不说&#xff0c;像我这样的上班族真的是很需要一个智能猫砂盆了。普通的猫砂盆一天就要打扫3次&#xff0c;遇到很能拉的猫咪的时候&#xff0c;就不止是三次那么简单了。如果有个产品能帮我解决这个问题&#xff0c;让我能放心外出&#xff0c;那又何乐而不为呢&#xff…...

java 数据新增、更新、删除监听,并记录日志或其他业务

数据新增、更新、删除监听&#xff0c;并记录日志或其他业务 1.使用场景 日志记录、KPI考核&#xff08;业务进行到某个阶段&#xff0c;对人员的考核&#xff09;等等 实体监听器 实体增加注解 EntityListeners({KpiOrderCounter.class}) /*** 订单管理考核** author sul…...

developer.android.com在国内无法正常访问解决方法

将android.com替换为android.google.cn...

大学物理(下)笔记

摘录来自笔记网站的笔记。笔记网站详见https://onford.github.io/Notes/。 大学物理&#xff08;下&#xff09;笔记 部分常用物理常量的计算值 C h a p t e r 9 Chapter9 Chapter9 恒定磁场 毕奥-萨伐尔定律 磁场和电场在很多性质上是有共性的&#xff0c;很多时候可以拿它…...

Mind+在线图形编程软件(Sractch类软件)

Scratch作为图形编程软件&#xff0c;可以为小朋友学习编程提供很好的入门&#xff0c;是初次接触编程的小朋友的首选开发软件。这里介绍的Mind软件与Sractch用法几乎完全一致&#xff0c;并且可以提供在线免安装版本使用&#xff0c;浏览器直接打开网址&#xff1a; ide.mindp…...

数智化招采供应链平台七大优点

在当今快速发展的商业环境中&#xff0c;技术更新风起云涌、数字化转型不断加快&#xff0c;产业链供应链竞争日趋激烈。企业必须不断提升产业链供应链现代化水平&#xff0c;建设畅通、韧性、竞争力强的产业链供应链&#xff0c;因此招采供应链平台的需求日益迫切。 为满足企…...

Java面试题:对比HTTP的GET和POST方法,并讨论它们的使用场景

HTTP的GET和POST方法是用于在客户端和服务器之间交换数据的两种基本请求方法。它们有不同的特性和使用场景。 GET方法 特性 数据在URL中传输&#xff1a;GET请求的数据附加在URL的末尾&#xff0c;通过查询字符串传输。数据长度限制&#xff1a;由于浏览器和服务器对URL长度…...

webpack+webpack server入门

​ 1.webpack介绍 webpack是一个模块加载器兼打包工具。它是以 commonJS 的形式来书写脚本的&#xff0c;但对 AMD/CMD 的支持也很全面&#xff0c;方便旧项目进行代码迁移。支持对react热插拔。 2.安装&#xff08;使用淘宝镜像&#xff09; 全局安装 cnpm install webpa…...

Java内存模型以及多线程并发深度剖析

文章目录 Java内存模型JMM的基本概念缓存一致性与处理器优化happens-before原则总结主内存以及cpu的多级缓存模型的实现原理主内存(Main Memory)CPU多级缓存模型实现原理:多线程并发运行时可能引发的数据不一致问题总线加锁机制和MESI缓存一致性协议的工作原理总线加锁机制M…...

【JS问题】require相对路径引入模块

潜在问题 安全性问题&#xff1a;使用相对路径来引入模块可能会带来安全隐患&#xff0c;尤其是如果这段代码运行在客户端&#xff08;比如Node.js的Electron框架&#xff09;且相对路径可以被用户控制的情况下。恶意用户可能会尝试修改路径来访问不应该被访问的文件。 模块路…...

SAP ABAP 常用实用类

文章目录 前言一、输出 展示 数据信息 a.将 JSON 格式化为可读 并以弹框形式输出 b.将内表内容以表格形式输出 c.弹框形式显示 HTML 内容。也能显示包含js 的html。也可以显示pdf 图片 二、输入 获取 数据信息 a.弹框 添加 输入框…...

wordpress hook/什么是网站seo

光学字符识别问题&#xff1a;手写数字识别。简单点说&#xff0c;这个问题包括图像中字符的定位和识别两部分。为了演示方便&#xff0c;我们选择使用 Scikit-Learn 中自带的手写数字数据集。 1.加载并可视化手写数字 首先用 Scikit-Learn 的数据获取接口加载数据&#xff0c;…...

花钱做网站/推广软文范文

移动端click事件延迟300ms问题因为历史原因,移动端点击事件会有300ms延迟,来判断用户是连续双击缩放还是点击跳转.即如果300ms内连续点击两次,则会理解为对页面进行缩放操作(当然前提是移动端页面设置为可缩放的):在一次点击之后 ...Hibernate学习笔记&lpar;一&rpar;&a…...

高品质的网站开发公/百度风云榜各年度小说排行榜

养成好习惯&#xff0c;点个赞再走 有问题&#xff0c;欢迎私信、评论&#xff0c;我看到都会回复的 文章目录打开注册表编辑器备份部分注册表部分注册表的恢复导出整个注册表整个注册表的恢复未将所有数据都成功写入到注册表中。某些项是由系统或其他进程打开的&#xff0c;或…...

网站建设需求计划/免费自建网站有哪些

hello&#xff0c;我是【考研顶呱呱】的呱喵&#xff0c;院校专业大揭秘、高性价比院校专业推荐、最新报录比不断更新、院校专业考研难度分析&#xff0c;我为自己带盐 (*▽*)本次更新涉及专业&#xff1a;学科教学(英语)、英语语言文学、法语语言文学、日语语言文学、外国语言…...

网站优化网站建设/免费长尾词挖掘工具

1. 安装docker 2. 安装Huginn docker run -it -p 3000:3000 huginn/huginn 3. 访问服务 [http://docker-machine ip:3000] 默认用户名/密码: admin/password 微博更新自动提醒 使用Weibo User Agent , uid要填写正确 , 例子里填为30分钟查询一次.{ “uid”: “602949”,“…...

wordpress科技网站模板/网站点击率查询

1. 原始字面量是干什么的 在 C11 中添加了定义原始字符串的字面量&#xff0c;定义方式为&#xff1a;R “xxx(原始字符串)xxx” 其中&#xff08;&#xff09;两边的字符串可以省略。 原始字面量 R 可以直接表示字符串的实际含义&#xff0c;而不需要额外对字符串做转译或连接…...