kafka安装及配置

1. 下载

下载地址:Apache Kafka

我这里下载的是 3.2.1 版本。

2. 上传并解压

上传到 linux 下的 /home/software/ 目录下,然后解压 kafka_2.13-3.2.1.tgz 包到/usr/local/

cd /home/software
tar -zxvf kafka_2.13-3.2.1.tgz -C /usr/local  # -C 选项的作用是:指定需要解压到的目录。
# 重命名
cd /usr/local
mv kafka_2.13-3.2.1 kafka-3.2.1

 3. 修改kafka配置文件

  vim /usr/local/kafka-3.2.1/config/server.properties

修改内容:

  broker.id=0  # broker的id,每个broker的id必须不一样
 
  port=9092    # 服务端口

  host.name=192.168.11.221  # 主机地址

  advertised.host.name=192.168.11.221  # 备用主机地址

  log.dirs=/usr/local/kafka-3.2.1/kafka-logs  # kafka存储消息(log日志数据)的目录

  num.partitions=5 # 创建topic时默认的分区数量

  zookeeper.connect=192.168.11.221:2181,192.168.11.222:2181,192.168.11.223:2181  # zookeeper地址

4. 创建kafka存储消息(log日志数据)的目录

由于配置文件里配置的 log.dirs=/usr/local/kafka-3.2.1/kafka-logs,所以要创建一个该目录:

mkdir /usr/local/kafka-3.2.1/kafka-logs

5. 启动kafka

 以配置文件的方式启动,后面的 & 表示后台启动。

/usr/local/kafka-3.2.1/bin/kafka-server-start.sh /usr/local/kafka-3.2.1/config/server.properties &

关闭命令:

/usr/local/kafka-3.2.1/bin/kafka-server-stop.sh

使用 jps 命令检查 kafka 是否启动成功,如下所示则是启动成功:

如果想要搭建集群的话,需要对于其他的虚拟机节点也按照上述方法执行安装,只是其中配置文件里的  broker.id=0 的值需要修改一下,每个节点必须保证不一样。

6. 安装kafka manager可视化管控台

(1)kafka manager 下载

下载地址:kafka-manage-2.0.0.2

把 kafka manager 的压缩包上传到 192.168.31.102 虚拟机上

 (2)解压zip文件

unzip kafka-manager-2.0.0.2.zip -d /usr/local/

(3)修改配置文件:

 vim /usr/local/kafka-manager-2.0.0.2/conf/application.conf

 修改内容:

kafka-manager.zkhosts="192.168.31.101:2181,192.168.31.102:2181,192.168.31.103:2181"

(4)启动kafka manager 控制台

  /usr/local/kafka-manager-2.0.0.2/bin/kafka-manager &

如果提示权限不够,可以使用 chmod kafka-manager 修改权限 。

 (5)浏览器访问控制台:默认端口号是9000

  http://192.168.31.102:9000/

添加Cluster集群:

 添加 topic :

7. 操作:

(1)通过控制台创建了一个topic为"topic-test" 2个分区 1个副本

(2)消费发送与接收验证

在 192.168.31.101 节点上打开两个终端界面分别用于执行消息的发送和接收。

启动发送消息的脚本

cd /usr/local/kafka-3.2.1/bin
./kafka-console-producer.sh --broker-list 192.168.31.101:9092 --topic topic-test
 ## --broker-list 192.168.31.101 指的是 kafka broker 的地址列表
 ##  --topic topic-test 指的是把消息发送到 topic-test 主题

启动接收消息的脚本

cd /usr/local/kafka-3.2.1/bin
./kafka-console-consumer.sh --bootstrap-server 192.168.31.101:9092 --topic topic-test

截图如下: 

8. 使用 java 代码连接 kafka 节点失败

(1)报错

java端代码启动生产者或者消费者时,报错如下:

 我的 kafka 是安装在虚拟机中,虚拟机的 hostname 是 master,报错提示是连接到 master节点失败。

(2)解决方案:

修改 kafka 节点上的 配置文件:

  vim /usr/local/kafka-3.2.1/config/server.properties

修改内容为:在配置文件中加入下面一行代码(原来这行代码是被注释掉的):

listeners=PLAINTEXT://192.168.31.101:9092  # 其中的ip地址修改成你的 kafka 节点的ip

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

处理日期和时间的 chrono 库

C11 中提供了日期和时间相关的库 chrono,通过 chrono 库可以很方便地处理日期和时间,为程序的开发提供了便利。chrono 库主要包含三种类型的类:时间间隔duration、时钟clocks、时间点time point。 1. Ratio 时间精度(节拍) std::chrono::ra…

【PHP在线定制商城网站源码V3.0】开源的DIY在线定制商城系统+在线礼品定制

源码下载:https://download.csdn.net/download/m0_66047725/87637177 PHP在线定制商城网站源码,免费开源、免费下载。本商城基于mycncart开发。安装成功后即可浏览,你可以在后台->安装扩展功能上传安装插件,在代码调整中点击刷…

zlmediakit 新增可以使用硬件加速的转码http api接口方法

根据项目需求,我们需要使用硬件解码的方式进行网络摄像头数据帧的解析,给到算法模块使用 1、通过ffmpeg命令实验,ffmpeg -i IPC_URL -f rtsp rtsp://*/live 该命令默认是使用cpu进行解码的,我们需要使用GPU进行解码。 2、ffmpe…

如何进行DNS优化

在互联网时代,网站的访问速度直接影响着用户体验和转化率。而DNS(Domain Name System)作为域名解析系统,负责将域名转换为IP地址,是网站访问速度的重要因素之一。因此,DNS优化成为了提升网站速度的重要手段之一。 DNS优化到底是什…

API接口的对接流程和注意事项

一、对接API数据接口的步骤通常包括以下几个部分: 了解API:首先需要详细了解API的基本信息、请求格式、返回数据格式、错误码等相关信息。可以查看API的官方文档或者使用API探索工具。同时,还需要明确数据请求的频率和使用权限等限制。 ​​测…

leetcode:环形链表(详解)

前言:内容包括-题目,代码实现,大致思路,代码解读,拓展问题 题目: 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达&…

C语言:指针求解鸡兔同笼问题

题目:鸡兔同笼问题 要求:使用自定义函数void calc(int h, int f,int *c,int *r) 求解鸡兔同笼问题。 h 表示总的头数,f 表示总的脚数。 例子: 输入: 5 16 输出: 2 3 分析: 在该代码中&a…

WxGL应用实例:绘制高精度的3D太阳系模型

文章目录 1 坐标系的选择1.1 黄道坐标系1.2 三维空间直角坐标系 2 使用JPL星历表计算轨道2.1 日期时间2.2 特定时刻天体的位置2.3 天体运行轨道 3 太阳系模型3. 1 太阳和八大行星全家福3.2 时间、距离和半径的缩放3.3 黄道坐标系模型 天何所沓?十二焉分?…

AI歌手——超简单一键运用ACE Studio来训练模拟真人唱歌

目录 1.安装ACE Studio 2.打开ACE Studio 3.导入midi或音频 4.调试音频 5.调整人物音色音高 6.调整歌词 7.自动添加呼吸​编辑 8.成品演示(周杰伦の稻香——鲤阮) 1.安装ACE Studio 安装地址 ACE Studio | Create Limitless Vocals with AI (t…

RK3568平台开发系列讲解(Linux内存篇)Linux内存管理框架

🚀返回专栏总目录 文章目录 一、内核态内存分配二、用户态内存分配三、内存篇章更新哪些内容沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们一起将整个内存管理的体系串起来。 对于内存的分配需求,可能来自内核态,也可能来自用户态。 一、内核态内存分配…

年后准备进腾讯的可以看看....

大家好~ 最近内卷严重,各种跳槽裁员,今天特意分享一套学习笔记 / 面试手册,年后跳槽的朋友想去腾讯的可以好好刷一刷,还是挺有必要的,它几乎涵盖了所有的软件测试技术栈,非常珍贵,肝完进大厂&a…

Eplan2022 复制已有的宏文件生成新的原理图宏文件

下图所示为wago的787-722稳压电源,我们可以从官网下载到相应的eplan宏文件并导入数据源库。但是能下载到eplan宏文件的只是少部分公司的部件。那么没有宏文件的部件该怎么办? 接下来以明纬开关电源 NDR-120-24为例,创建一个宏文件。选择【主数…

基于springboot的医院信管系统

摘 要 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代&…

晶振概述及工作原理

晶振在电路板中随处可见,只要用到处理器的地方就必定有晶振的存在,即使没有外部晶振,芯片内部也有晶振。 晶振概述 晶振一般指晶体振荡器。晶体振荡器是指从一块石英晶体上按一定方位角切下薄片(简称为晶片)&#xf…

tensorflow GPU训练环境布置

tensorflow GPU训练环境布置 一、显卡驱动安装1.1 如何处理**Failed to initialize NVML: Driver/library version mismatch的问题**1.2 卸载旧的版本1.3 驱动安装 1.3.1 利用apt 安装1.3.2 手动安装 二、安装CUDA2.1 确定CUDA版本2.2 下载文件1. 找匹配版本2. 选合适的平台 2…

数据结构学习

1. 数据结构概述 数据结构是计算机存储、组织数据的方式;通常情况下,选好数据结构可以带来更高的运行或者执行效率。数据结构的优良直接影响着我们程序的性能;常用的数据结构有:数组(Array)、栈&#xff0…

更懂业务的数智平台,应对数智化转型的“千变万化”

本文作者 跨界的申斯基 毫无疑问,随着数智化转型的加速,越来越多的企业正在把数智化战略提升到一个全新的高度,转型的进程也正从“浅层次”的数智化走向“深层次”数智化的阶段。 这也让企业的数智化转型进入到了一个全新的阶段,…

IntelliJ IDEA编辑模板变量详解(Edit Template Variables)

函数描述annotated(“annotation qname”)使用驻留在指定位置的注释创建类型符号。 例如,请参见迭代组中的活动模板。anonymousSuper()为Kotlin对象表达式建议一个超类型。arrayVariable()建议当前作用域中适用的所有数组变量。 例如,请参见迭代组中的活…

基于绝缘状态的煤矿电缆绝缘可视化在线检测系统

摘要:针对供电系统绝缘问题检测技术限制煤炭产量效率的问题,以某煤炭企业6kV井下供电系统为研究对象,开展了在线监测系统设计与应用工作。结果表明,系统工作稳定,满足井下电力电缆绝缘在线监要求,降低了井下…

米哈游的春招实习面经,问的很基础

米哈游的春招实习面经,主要考察了java操作系统mysql网络,这四个方面。 面试流程,共1小时,1min自我介绍,20min写题,剩下问题基础知识。 Java String,StringBuilder, StringBuffer区…
最新文章