首页 > 其他分享 >单节点kafka部署笔记

单节点kafka部署笔记

时间:2023-06-04 18:45:34浏览次数:48  
标签:bin -- 笔记 kafka topic sh 节点 localhost

1 背景

因为工作中需要对接kafka,准备在测试环境中自己部署一套,考虑方便决定部署一台单点。

2 部署

2.1 scala

2.1.1 java环境

openjdk即可,我使用的是openjdk1.8

2.1.2 下载软件

下载scala-2.12.17.tgz并解压,例如解压到/home/scala/scala-2.12.17

2.1.3 环境变量

export SCALA_HOME=/home/scala/scala-2.12.17
export PATH=$SCALA_HOME/bin:$PATH

2.1.4 测试

scala -version,如能正常输出版本则一切正常

2.2 kafka

以下为官网教程

2.2.1 下载

下载 kafka_2.12-3.3.1.tgz 并解压,进入目录下。

2.2.2 生成Cluster UUID

KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"

2.2.3 日志记录

bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties

2.2.4 启动

首先修改kafka目录下 /config/kraft/server.properties中的

listeners=PLAINTEXT://:9092

修改为对外地址,否则只能localhost使用

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

如果正常,则tcp 9092、9093端口处于listening状态

3 测试

3.1 命令行调用

3.1.1 操作topic

创建topic

bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092

删除topic

bin/kafka-topics.sh --delete --topic quickstart-events --bootstrap-server localhost:9092

3.1.2 显示topic信息

显示所有topic

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

显示具体topic信息

bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092

查看topic是否已成功创建

3.1.3 写入信息

bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092

3.1.4 读取信息

新开一个终端执行

bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092

完成后,在原先终端输入信息,在本终端则可以查看到

3.2 python调用

3.2.1 模块安装

pip3 install kafka-python -i https://pypi.tuna.tsinghua.edu.cn/simple

3.2.2 demo代码

from kafka import KafkaProducer
kafka_producer= KafkaProducer(bootstrap_servers = "localhost:9092")
kafka_producer.send("topic-01", "this is message".encode('utf-8'))

3.3 旧版本命令

bin/kafka-topics.sh --zookeeper localhost:2181 --list
bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic alarm-01 --partitions 1 --replication-factor 1
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic alarm-01
bin/kafka-console-consumer.sh --topic alarm-01 --from-beginning --bootstrap-server localhost:9092
bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic alarm-01

标签:bin,--,笔记,kafka,topic,sh,节点,localhost
From: https://www.cnblogs.com/virtualzzf/p/17456070.html

相关文章

  • m基于节点位置偏好的自组织网络节点度分布的matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:     2.算法涉及理论知识概要​      移动自组织(AdHoc)网络是一种多跳的临时性自治系统,它的原型是美国早在1968年建立的ALOHA网络和之后于1973提出的PR(PacketRadio)网络。ALOHA网络需要固定的基站,网络中的每一......
  • (ex)BSGS/(扩展)大步小步算法 学习笔记
    (ex)BSGS/(扩展)大步小步算法学习笔记在即将暂时退役之际杀掉了P4195的毒瘤模板题,于是来写篇学习笔记。谨此为我初中三年摆烂的OI生涯画上一个句号。(距离中考还有20天!)BSGSlink求\(a^x\equivb\pmodp\)的非负整数解,其中\(a,p\)互质。算法思路我们不妨令\(t=\lceil{\sqrt{p}......
  • 「学习笔记」模运算与 BSGS 算法
    取模取模符号:\(x\bmody\),表示\(x\)除以\(y\)得到的余数。例如,\[5\bmod3=2\\7\bmod4=3\\3\bmod3=0\\\]设\(x\)为被除数,\(y\)为除数,\(z\)为余数,则\(x=k\cdoty+z,k=\lfloor\dfrac{x}{y}\rfloor\)。模运算\[\left(a+b\right......
  • flutter学习笔记(二)
    flutter一切皆widgetflutter和web前端的区别:1.js语法变成dart2.html标签变成组件widget3.flutter里没有css,只有各种widget的属性来实现样式(比如绝对定位用Stack组件来实现)fluter和web前端的相同点:1.dart语法接近js2.flutter里也可以实现flex弹性布局,用Expanded来实现(Expand......
  • 小迪安全web学习笔记(8)
    1、信息收集在安全测试中,信息收集是非常重要的一个环节,此环节的信息将影响到后续的成功几率,掌握信息的多少将决定发现漏洞机会大小,换言之决定着是否能完成目标的测试任务。也可以很直接的跟大家说:渗透测试的思路就是从信息收集这里开始。2、信息收集过程有无web 有CDN 国外请求......
  • 小迪安全web学习笔记(10)
    1、信息收集-资产信息github监控通过第三方软件监控你设定的最新漏洞信息并推送ctcms监控seo优化2、子域名挖掘3、补天漏洞响应平台用来攻击漏洞赚钱的平台。4、python脚本用来完成GitHub的监控,用信息搜集过程中得到得名称代入进脚本中运行,再下载推送得程序脚本再把它拖到相应......
  • 小迪安全web学习笔记(9)
    1、信息收集APP及其他资产APK:安卓应用程序包2、某IP无web框架下的第三方测试一阵扫描端口接口3、端口扫描工具速度:mas准确度:Nmap扫描ip用黑暗引擎:zoomeye子域名查看旁注查询4、类似域名接口查,查备案信息shodanfofa ......
  • 小迪安全web学习笔记(12)
    1、SQL注入数据库类型提交方法数据类型查询方法回显/盲注注入扩展WAF绕过防御方案2、mySQL简单注入危害:SQL注入可操控数据简易代码分析原理:通过参数传递把恶意代码传入sql语句中,让后面的代码显现出来。需要学习php、html、mySQL语句的基础知识去理解3、post注入的地方是输入账号......
  • 小迪安全web学习笔记(11)
    1、web漏洞-必懂知识点数据库的语句2、地址:网站域名、文件夹(目录)、文件参数名、参数值3、目录遍历漏洞跨目录文件的读取:/../../../文件名需要知道目录结构(怎样知道):工具扫描爬行通过网页源代码读4、漏洞等级和危害高危:SQL注入文件上传文件包含代码执行未授权访......
  • 【学习笔记】(18) 长链剖分
    长链剖分1.算法简介与性质长链剖分本质上就是另外一种链剖分方式。长链剖分与重链剖分有相通之处,后者是将子树大小最大的儿子作为重儿子,前者则是将子树深度最大的儿子作为重儿子。可见两者只是换了一个剖分形式。长链剖分有如下性质:性质1:每个节点所在长链末端为其子树......