kafak集群搭建-基于zookeeper方式

2024-08-26 09:12

本文主要是介绍kafak集群搭建-基于zookeeper方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

kafak集群搭建-基于zookeeper方式

  • 1、准备3个kafka
  • 2、修改配置文件
    • 2.1、修改配置文件
  • 3、启动测试
    • 3.1、先启动zookeeper
    • 3.2、再启动三台kafka
  • 4、SpringBoot集成kafka集群
    • 4.1、项目配置文件application.yml
    • 4.2、kafka配置类
    • 4.3、启动SpringBoot程序
  • 5、kafka集群架构分析
  • 6、查看topic详情
  • 7、kafka集群架构-多副本架构分析

在这里插入图片描述

1、准备3个kafka

解压kafka压缩包

tar -zxvf kafka_2.13-3.7.0.tgz 

在这里插入图片描述
将解压后的kafka移动到/usr/local文件夹下,并修改名字

mv kafka_2.13-3.7.0 /usr/local/kafka_2.13-3.7.0-01

在这里插入图片描述

将kafka_2.13-3.7.0-01复制两份

cp -rf kafka_2.13-3.7.0-01/ kafka_2.13-3.7.0-02cp -rf kafka_2.13-3.7.0-01/ kafka_2.13-3.7.0-03

在这里插入图片描述

2、修改配置文件

在这里插入图片描述在这里插入图片描述

2.1、修改配置文件

下边以一台kafka服务为例进行配置:
在这里插入图片描述
在这里插入图片描述
*在这里插入图片描述*

3、启动测试

在这里插入图片描述

3.1、先启动zookeeper

在这里插入图片描述
在这里插入图片描述

3.2、再启动三台kafka

在kafka安装目录下bin文件夹内,执行命令
./kafka-server-start.sh ../config/server/properties

在这里插入图片描述

4、SpringBoot集成kafka集群

4.1、项目配置文件application.yml

在这里插入图片描述

spring:application:#应用名称name: spring-boot-08-kafka-colony#kafka连接地址(ip+port)kafka:bootstrap-servers: <你的服务器IP>:9091,<你的服务器IP>:9092#配置消费者的反序列化consumer:key-deserializer: org.apache.kafka.common.serialization.StringDeserializervalue-deserializer: org.apache.kafka.common.serialization.StringDeserializer

4.2、kafka配置类

  • 副本数一般与服务器节点数保持一致
  • 分区数不做限制
package com.power.config;import org.apache.kafka.clients.admin.NewTopic;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class KafkaConfig {@Beanpublic NewTopic newTopic(){//设置副本个数不能为0,也不能大于节点个数,否则将不能创建Topicreturn new NewTopic("clusterTopic",2, (short)2);}
}

4.3、启动SpringBoot程序

SpringBoot集成kafka成功

在这里插入图片描述

5、kafka集群架构分析

在这里插入图片描述

6、查看topic详情

./kafka-topics.sh --bootstrap-server 127.0.0.1:9091 --describe --topic clusterTopic

在这里插入图片描述
在这里插入图片描述

7、kafka集群架构-多副本架构分析

  • 主副本究竟放在哪个broker中由kafka内部机制决定;
  • 从副本和主副本不在同一个broker上。

在这里插入图片描述

这篇关于kafak集群搭建-基于zookeeper方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108153

相关文章

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

Python验证码识别方式(使用pytesseract库)

《Python验证码识别方式(使用pytesseract库)》:本文主要介绍Python验证码识别方式(使用pytesseract库),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录1、安装Tesseract-OCR2、在python中使用3、本地图片识别4、结合playwrigh

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

Spring中管理bean对象的方式(专业级说明)

《Spring中管理bean对象的方式(专业级说明)》在Spring框架中,Bean的管理是核心功能,主要通过IoC(控制反转)容器实现,下面给大家介绍Spring中管理bean对象的方式,感兴趣的朋... 目录1.Bean的声明与注册1.1 基于XML配置1.2 基于注解(主流方式)1.3 基于Java

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

MySQL 添加索引5种方式示例详解(实用sql代码)

《MySQL添加索引5种方式示例详解(实用sql代码)》在MySQL数据库中添加索引可以帮助提高查询性能,尤其是在数据量大的表中,下面给大家分享MySQL添加索引5种方式示例详解(实用sql代码),... 在mysql数据库中添加索引可以帮助提高查询性能,尤其是在数据量大的表中。索引可以在创建表时定义,也可

ShardingSphere之读写分离方式

《ShardingSphere之读写分离方式》:本文主要介绍ShardingSphere之读写分离方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录ShardingSphere-读写分离读写分离mysql主从集群创建 user 表主节点执行见表语句项目代码读写分