在Linux系统上通过zookeeper集群部署kafka集群

如何安装部署kafka 安装和部署需要以下几个步骤,包括下载 Kafka、配置 ZooKeeper(或者使用 Kafka 自带的 Kafka Raft 模式替代 ZooKeeper),以及启动 Kafka 服务。以下是一个但基于 Linux 的典型安装流程,可以根据需要改装到其他操作系统。 阅读详情

zookeeper集群搭建地址:https://blog.youkuaiyun.com/SpringCYB/article/details/89951158

Kafka基本架构:

  • 它的架构包括以下组件:
  • Broker 服务代理 
    Kafka集群包含一个或多个服务器,这种服务器被称为broker
  • Topic  话题
    每条发布到Kafka集群的消息都有一个类别,这个类别被称为topic。(物理上不同topic的消息分开存储,逻辑上一个topic的消息虽然保存于一个或多个broker上但用户只需指定消息的topic即可生产或消费数据而不必关心数据存于何处)
  • Partition  分片
    parition是物理上的概念,每个topic包含一个或多个partition,创建topic时可指定parition数量。每个partition对应于一个文件夹,该文件夹下存储该partition的数据和索引文件
  • Producer 生产者
    负责发布消息到Kafka broker
  • Consumer  消费者
    消费消息。每个consumer属于一个特定的consuer group(可为每个consumer指定group name,若不指定group name则属于默认的group)。使用consumer high level API时,同一topic的一条消息只能被同一个consumer group内的一个consumer消费,但多个consumer group可同时消费这一消息。

Kafka使用zk的分布式协调服务,将生产者,消费者,消息储存(broker,用于存储信息,消息读写等)结合在一起。同时借助zk,kafka能够将生产者,消费者和broker在内的所有组件在无状态的条件下建立起生产者和消费者的订阅关系,实现生产者的负载均衡。kafka搭载zk,通常有3种模式:

1. 单机模式,只安装部署一个server。

2. 伪分布式集群模式,一台机器分别安装部署3个zk和kafka节点server。

3. 分布式集群模式,3台以上机器(以3台为例),3台机器上分别安装部署3个zk和kafka节点server。

本文仅以第二种:伪分布式集群模式讲解,安装部署为分布式集群的详细步骤。

环境和版本:

  • linux(centos7_64位)+vm15pro
  • Jdk 1.8
  • Zookeeper-3.4.6
  • Kafka-2.12

搭建开始:

1.通过ssh工具将安装包上传至linux服务器

当前目录在  /usr/kafka

通过tar 命令解压缩:

为了操作方便,重命名为kafka

2.在 /usr/kafka 目录下创建三个文件夹  用来存放日志文件

mkdir kafka-logs1

mkdir kafka-logs2

mkdir kafka-logs3

3.修改配置文件

进入解压出来的kafka中,进入config目录,通过vi打开server.properties,修改以下参数

:wq! 命令保存。

然后将server.properties 复制成三份,分别为server1.properties,server2.properties,server3.properties,

先通过 mv server.properties server2.properties 命令重命名。

然后通过 cp server2.properties server3.properties  和 cp server2.properties server1.properties 命令复制两份

然后修改配置信息

修改server2.properties如下:

broker.id=1

listeners=PLAINTEXT:// 192.168.***.***:9093此ip地址为本机ip

port=9093

log.dirs=/usr/kafka/kafka-logs2

zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

 

修改server3.properties如下:

broker.id=2

listeners=PLAINTEXT:// 192.168.***.***:9094 此ip地址为本机ip

port=9094

log.dirs=/usr/kafka/kafka-logs3

zookeeper.connect=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183

3.kafka集群配置完毕,启动Kafka集群并测试

注意:

(1)首先要保证zookeeper集群已启动

(2)从后台启动Kafka集群(3台都需要启动)

(3)进入到kafka的根目录 cd /usr/kafka/kafka

模拟启动三个配置文件,代表三台服务器.

./bin/kafka-server-start.sh config/server1.properties

./bin/kafka-server-start.sh config/server2.properties

./bin/kafka-server-start.sh config/server3.properties

如果报错需要修改kafka的堆内存分配

进入kafka 的bin目录下

vi kafka-server-start.sh

默认是1G我们修改为256M,和128M

export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"

然后,在启动,三台全部启动,如出现下图,stated则表示启动成功!

4.测试kafka

创建主题:

创建一个test主题,分区数为3,备份数为3

在kafka根目录执行下面命令

bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 3 --partitions 3 --topic test

如出现下图  Created topic test.  则表示创建成功

5.启动生产者:

kafka根目录执行,启动一个生产者

bin/kafka-console-producer.sh --broker-list 127.0.0.1(此ip地址为本机ip):9092 --topic test

出现 > 输入符 则表示成功,此时端口号9092为生产者

6.启动消费者

不要关闭生产者窗口,再打开一个新窗口,进入到kafka根目录,启动消费者:

bin/kafka-console-consumer.sh --bootstrap-server  127.0.0.1(此ip地址为本机ip):9093  (消费者端口号) --topic test --from-beginning

7.验证:

在生产者输入信息:

消费者可以接收到

搭建完成!

1)查看当前所有的topic列表

bin/kafka-topics.sh --list --zookeeper 127.0.0.1:2181

2)看下topic的详情信息

查看所有topic:

bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181

查看指定topic:

bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic test

kafka集群部署参考 zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181 #zookeeper 集群列表。broker.id=0 #整个集群内唯一 id 号,整数(集群使用的名称不要相同重复)#分区为为 1 复制因子为 2 他的 zeze 的分区为 0。--partitions 1 #创建 1 个分区。#Replicas: 0,1 复制的为 0,1。'''在一台服务器上创建一个发布者''''''在一台服务器上创建一个订阅者''' 阅读详情

相关推荐

【kafka】在Linux系统中部署配置Kafka的详细用法教程分享

Apache Kafka是一个开源的分布式流处理平台,由Scala和Java编写,最初由LinkedIn开发,之后捐赠给Apache软件基金会。Kafka被广泛应用于构建实时数据管道和流应用程序,如消息队列、日志收集、监控、实时分析等。本文将结合实际案例,详细介绍在Linux系统中部署和配置Kafka的步骤,包括前置环境准备、安装、配置以及测试。

景天科技苑 3万+

「实践操作篇」单机部署实践手册

即使是面试跳槽,那也是一个学习的过程。只有全面的复习,才能让我们更好的充实自己,武装自己,为自己的面试之路不再坎坷!今天就给大家分享一个Github上全面的Java面试题大全,就是这份面试大全助我拿下大厂Offer,月薪提至30K!我也是第一时间分享出来给大家,希望可以帮助大家都能去往自己心仪的大厂!为金三银四做准备!

2401_84046577的博客 970

基于Cesium的北斗卫星轨道实时可视化系统开发实践

本文详细介绍了基于Cesium的北斗卫星轨道实时可视化系统开发实践,涵盖系统架构设计、轨道计算实现、后端服务开发及前端可视化实现等关键环节。通过优化算法和数据流设计,系统实现了厘米级精度的卫星轨道实时渲染,适用于导航卫星系统的科研与工程应用。

j7k8l的博客 521

kafka查看topic配置

kafka查看topic配置

u011250186的博客 2万+

FANUC机器人KAREL编程实战:手把手教你用SOCKET指令连接外部设备(附完整.KL文件)

本文详细解析了FANUC机器人KAREL编程中SOCKET指令的应用,从开发环境配置到工业级通讯全流程,涵盖网络参数设置、模块化代码设计、错误处理及现场调试技巧。通过实战案例,帮助开发者掌握与外部设备稳定连接的关键技术,提升工业自动化系统的通讯可靠性。

weixin_30907935的博客 226

小米汽车技术路线

从小米的电子电器架构来看,行业内EEA已经由域集中逐渐过度到域融合+区域控制的架构并向着中央计算+区域控制的方向发展。 而小米汽车智驾算法也从基于高精地图模块化架构,到去高精地图模块化架构,再到端到端架构,这也正是行业对于智驾算法演进的共识。

HITbingdu的博客 3791

kafka命令行使用

kafka使用查看Kafka当前的主题列表创建一个主题查看主题信息修改分区信息删除一个主题生成者推送消息消费者接收查看分组信息查看特定consumer group 详情 基于Kafka 2.13版本的操作 查看Kafka当前的主题列表 ./kafka-topics.sh --zookeeper 127.0.0.1:2181 --list 创建一个主题 –zookeeper 连接zk集群 –replication-factor 副本数量 –partitions 分区数量 –topic

legendaryhaha的博客 4495

使用Hyper-V使用下载下来的macOS安装引导安装macos

然后关闭工具返回安装界面选择第二个reinstall,选择119g那个硬盘。我的资源上传了:macOS Monterey on Hyper-V.7z。设置固件的启动顺序,引导安装盘放到第一位,mac安装110g放第二。选择disk utility格式化那个110g。下载解压的macos引导挂载到虚拟硬盘。其他设置安全禁用,检查禁用,集成都选中。新建一个虚拟硬盘装mac,110g。

viviliving的专栏 3025

【Kafka】Linux部署Kafka集群

将压缩包分别上传到三台Kafka服务器的/usr/local/kafka目录下,备用。分别在202,203节点上创建消费者。在151的broker上创建生产者。创建data和log目录。151节点下创建主题即可。启动Zookeeper。

鸟人的博客 1306

别再死记硬背HJB方程了!用Python数值求解一个简单最优控制问题(附完整代码)

本文通过Python数值求解Hamilton-Jacobi-Bellman(HJB)方程,帮助读者从工程实践角度理解最优控制问题。教程涵盖从建立简单车辆控制模型到离散化HJB方程、实现值迭代算法及可视化结果的完整流程,适合具备Python基础的开发者学习。

weixin_42520796的博客 371

Chrome DevTools MCP 实战完整教程

本教程介绍了Chrome DevTools MCP(Model Context Protocol)在智能Web测试中的应用。该系统通过MCP协议将Chrome开发者工具能力标准化,并与AI结合,提供了统一的测试解决方案。核心功能包括智能自动化、深度调试分析和性能监控优化。教程详细讲解了环境搭建、MCP服务器配置、参数说明及多种工具集(输入自动化、导航、设备仿真、性能分析等)的使用方法。通过mcp-use库的MCPAgent和MCPClient组件,用户可以轻松实现自然语言驱动的浏览器操作和测试流程管理。

blues_C的博客 3808

Linux 搭建Kafka集群,最新教程,细到极致

Linux 搭建Kafka集群,最新教程,细到极致

gubeichengxuyuan的博客 5596

【教程4>第2章>第18节】 GMSK调制系统的FPGA开发与matlab对比验证

GMSK(高斯最小频移键控)是一种连续相位的频移键控(CPFSK)调制方法,它在数字通信中得到了广泛应用,特别是在移动通信系统中。GMSK通过限制频率偏差的累积来减少带外辐射,并通过使用高斯滤波器对。

FPGA/MATLAB学习教程/源码/项目合作开发 998

【Linux系统基础】(5)在Linux上集群化环境前置准备及部署Zookeeper、Kafka软件详细教程

SSH服务是一种用于远程登录的安全认证协议。我们通过FinalShell远程连接到Linux,就是使用的SSH服务。通过账户+密码的认证方式来做用户认证通过账户+秘钥文件的方式做用户认证SSH可以让我们通过SSH命令,远程的登陆到其它的主机上,比如:在node1执行:ssh root@node2,将以root用户登录node2服务器,输入密码即可成功登陆或者ssh node2,将以当前用户直接登陆到node2服务器。ZooKeeper是一个分布式的,开放源码的分布式应用程序。

1866

IEC 104电力规约详细解读(五) - 遥控

主站下发遥控选择命令,子站进行遥控选择返校,若成功则回答遥控选择成功报文,若失败则回答失败报文。主站下发取消遥控命令或者遥控执行命令行。子站皆以报文的镜像确认。遥控命令用来实现对一个可操作设备状态的改变。在配电自动化中,包括单点命令和双点命令。通常,单点命令用于控制单点信息对象;双点命令用于控制双点信息对象。

张二狗的博客 7353

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Linux系统之Kafka+Zookeeper(Kafka自带)单机伪集成部署

Linux系统之Kafka+Zookeeper单机伪集成部署 文章目录Linux系统之Kafka+Zookeeper单机伪集成部署一、Kafka版本和安装二、单机伪集成部署1、准备2、下载3、安装4、zookeeper配置 一、Kafka版本和安装 二、单机伪集成部署 1、准备 服务器一台ip:192.168.138.135 JDK:1.8 2、下载 从官方网站 kafka.apache.org/downloads 下载Kafka,目前新的版本Kafka都自带zookeeper。 3、安装 下载

lwd2307997664的博客 386

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Linux 部署集群应用系统

1、案例分析 1.1、规划节点 使用 Mycat 读写分离数据库作为应用系统的数据库后端,使用 ZooKeeper 集群,Kafka 集群提供应用系统调度服务,使用 Reids 提供应用系统消息队列服务。 1.2.基础准备 使用 CentOS 7.2 系统,flavor 使用 2vCPU/4G 内存/50G 硬盘,创建 3 台虚拟机分别为 jar1 节 点 、 jar2 节 点 和 Nginx 节 点 。 使 用 提 供 gpmall-shopping-0.0.1-SNAPSHOT.jar 、 gpmal

w13107130889的博客 1396

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Hello Kafka(六)——Kafka集群部署

一、Kafka集群部署方案规划 1、操作系统选择 通常,生产环境应该将Kafka集群部署在Linux操作系统上,原因如下: (1)Kafka客户端底层使用了Java的selector,selector在Linux上的实现机制是epoll,而在Windows平台上的实现机制是select,因此Kafka部署在Linux上能够获得更高效的I/O性能。 (2)网络传输效率的差别。Kafka需要在磁盘和网络间进行大量数据传输,在Linux部署Kafka能够享受到零拷贝(Zero Copy)技术所带来的快速数

天山老妖 2539

kafka 在Linux上的安装部署

通过以上步骤,我们在 Linux 系统上成功安装和部署了 Kafka。在实际应用中,可以根据具体的业务需求进一步配置和优化 Kafka,如设置更复杂的安全机制、调整性能参数等。希望本教程对大家有所帮助,让大家能够顺利开启 Kafka 之旅。

m0_56341622的博客 5161

Windows10、CentOS Stream9 环境下安装kafka_2.12-3.6.2记录

最近学习了kafka相关原理,记录下kafka_2.12-3.6.2部署记录

coisini.cn记录 2153

Kafka集群搭建具体操作步骤

至此,一个三节点的 Kafka 高可用集群已经搭建完成。关键步骤包括:1.规划网络和主机:确保服务器间网络畅通。2.部署 ZooKeeper 集群:正确配置 `myid` 和 `server.x`。3.部署 Kafka Broker:确保 `broker.id` 唯一,正确配置 `listeners`、`advertised.listeners` 和 `zookeeper.connect`。4.测试验证:通过创建 Topic、查看描述、生产消费消息来验证集群健康状态。5.

m554062212的博客 928

Linux 下 kafka 集群部署

本文将以三台服务器为例,介绍在 linux 系统下kafka的部署方式。

qq_59998784的博客 4071

zookeeper + kafka

【代码】zookeeper + kafka。

2201_75894418的博客 447

kafka 集群版本搭建

一、准备内容: 1.jdk(1.8) 2.zookeeper.tar(3.6) 3.kafka.tar(2.13-2.4.1) 二、安装jdk 将下载好的jdk解压到指定的文件夹下 卸载linux自带jdk 编辑/etc/profile 文件 添加一下内容 export JAVA_HOME=/opt/jdk1.8 #jdk的解压路径, export...

lwz18642660013的博客 509

进击消息中间件系列(二):Kafka 单机与集群部署实践

点击下方名片,设为星标!回复“1024”获取2TB学习资源!前面介绍了 Kafka 的基础概念与架构相关的知识点,今天我将详细的为大家介绍 Kafka 单机与集群部署相关知识,希望大家能够从中收获多多!如有帮助,请点在看、转发支持一波!!!Windows 系统官方网站下载安装包因为Kafka的运行依赖于 Zookeeper,因此,还需要下并安装Zookeeper,当然Kafka也内置了Zookee...

民工哥的博客 560

Kafka安装部署指南

Kafka 的安装和部署可以分为几个步骤,包括环境准备、下载安装、配置、启动和测试。这里提供一个基于 Linux 系统(如 CentOS 或 Ubuntu)的单机模式(Standalone)和集群模式(Cluster)的详细指南。

ITHomeZSL的博客 1184
上一篇: 在Linux系统上搭建Mongodb副本集,实现一主一从一选举。
下一篇: SpringCloud框架集成zookeeper集群+kafka集群
听风动
博客等级 码龄8年 63粉丝 90原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

听风动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值