kafka集群搭建

这篇具有很好参考价值的文章主要介绍了kafka集群搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

准备三台互通服务器(关闭防火墙)

192.168.203.136

192.168.203.137

192.168.203.138

一.搭建zookeeper集群

1、在/usr/local目录下解压安装包,

tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz

链接:百度网盘 请输入提取码

提取码:bd2u

2、进入zookeeper目录下新建文件夹zkData

mkdir zkData

3、进入conf目录下修改配置文件

mv zoo_sample.cfg zoo.cfg

vi zoo.cfg

(修改dataDir参数)

dataDir=/usr/local/zookeeper-3.7.1/zkData

(新增下面三行,2888端口用于主从信息同步,3888端口用于选举)

server.1=192.168.203.136:2888:3888

server.2=192.168.203.138:2888:3888

server.3=192.168.203.137:2888:3888

保存退出

4、进入zkData目录,将myid文件上传到该目录下(myid中的数字与上面server.1 2 3表示的服务器对应)

5、安装剩余的两台服务器(重复上面操作,myid要修改为对应的数字)

6、依次进入bin目录启动三台zookeeper

./zkServer.sh start (启动)

./zkServer.sh status (查看状态,一主两从即为成功)

kafka集群搭建

kafka集群搭建

kafka集群搭建

二.搭建kafka集群

链接:百度网盘 请输入提取码

提取码:q4pm

1、在/usr/local目录下解压安装包

tar -zxvf kafka_2.12-3.3.2.tgz

2、进入kafka/config/目录下修改配置文件

vi server.properties(broker.id 不能相同,可以依次设置为0,1,2。ip改为对应服务器的ip地址)

broker.id=0(修改参数)

port=9092 (新增参数)

host.name=192.168.203.136 (新增参数)

steners=PLAINTEXT://192.168.203.136:9092 (新增参数)

advertised.listeners=PLAINTEXT://192.168.203.136:9092 (新增参数)

zookeeper.connect=192.168.203.136:2181,192.168.203.138:2181,192.168.203.137:2181(修改参数)

3、安装剩余的两台服务器(重复上面操作,修改broker.id)

4、依次进入kafka目录下,启动kafka

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

netstat -tunlp |grep 9092 (检查kafka端口)

注1:kafak新版本操作命令

启动命令:

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

创建topic

./kafka-topics.sh --create --bootstrap-server 192.168.203.136:9092 --replication-factor 1 --partitions 1 --topic test

查看topic

./kafka-topics.sh --bootstrap-server 192.168.203.136:9092 --list

向指定topic中生产数据

./kafka-console-producer.sh --broker-list 192.168.203.136:9092 --topic test

例如:{"id":"1","name":"xiaoming","age":"20"}

查看topic具体内容

./kafka-console-consumer.sh --bootstrap-server 192.168.203.136:9092 --topic test --from-beginning

创建消费者组

./kafka-console-consumer.sh --bootstrap-server 192.168.203.136:9092 --topic test --group consumer-10

查看消费者组

./kafka-consumer-groups.sh --bootstrap-server 192.168.203.136:9092 --list

查看消费者详情

./kafka-consumer-groups.sh --bootstrap-server 192.168.203.136:9092 --describe --group consumer-10

消费数据

./kafka-console-consumer.sh --bootstrap-server 192.168.203.136:9092 --topic test --from-beginning

注2:kafka集群监控系统安装

1、选择集群中任意一台服务器上传并解压安装包

unzip kafka-manager-2.0.0.2.zip

2、进入kafka-manager/conf目录下修改配置文件

vi application.conf

kafka-manager.zkhosts="192.168.203.136:2181" (修改参数ip为zookeeper主机ip)

3、返回kafka-manager目录启动系统

nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=9000 >kafka-manager.log 2>&1 &

浏览器访问ip:9000端口即可。

kafka集群搭建

注3:java连接kafka集群:

1、pom文件增加依赖

<!-- kafka -->
<dependency>
    <groupId>org.springframework.kafka</groupId>
    <artifactId>spring-kafka</artifactId>
</dependency>

2、修改配置文件(groupId自定义)

kafka:
  bootstrapServers: 192.168.203.136:9092,192.168.203.138:9092,192.168.203.137:9092
  producer:
    key-serializer: org.apache.kafka.common.serialization.StringSerializer
    value-serializer: org.apache.kafka.common.serialization.StringSerializer
  consumer:
    groupId: consumer-10
    auto-offset-reset: latest
    value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
    key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
    enable-auto-commit: false
    auto-commit-interval: 5000
    max-poll-records: 1

3、生产者

@Autowired
private KafkaTemplate kafkaTemplate;

@Scheduled(cron = "0/5 * * * * ?")
public void kafkaTest(){
    kafkaTemplate.send("test","测试kafka+时间为"+LocalDateTime.now());
    log.info("发送kafka test 数据:");
}

4、消费者文章来源地址https://www.toymoban.com/news/detail-429595.html

package com.example.demo.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;

@Component
@Slf4j
public class KafkaListener1 {
    @KafkaListener(topics = "test")
    public void listenKafkaHour1(String payMessage) {
        log.info("收到kafka test 数据:" + payMessage);
    }
}

到了这里,关于kafka集群搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu服务器版本搭建Hadoop集群

    实验环境: 虚拟化软件:VMware® Workstation 16 Pro 镜像:ubuntu-22.04.2-live-server-amd64.iso Hadoop版本:hadoop-3.3.4.tar.gz ubuntu镜像链接 hadoop文件链接 配置虚拟机 (1)新建虚拟机,选择实验镜像【ubuntu-22.04.2-live-server-amd64.iso】 (2)调整硬件配置,配置如图 安装操作系统 (1)选择虚拟

    2024年02月08日
    浏览(53)
  • Nginx(7)Nginx实现服务器端集群搭建

    前面课程已经将Nginx的大部分内容进行了讲解,我们都知道了Nginx在高并发场景和处理静态资源是非常高性能的,但是在实际项目中除了静态资源还有就是后台业务代码模块,一般后台业务都会被部署在Tomcat,weblogic或者是websphere等web服务器上。那么如何使用Nginx接收用户的请

    2024年02月09日
    浏览(55)
  • Linux服务器集群-大数据基础环境搭建指南

    本文将构建三台Linux服务器(node1、node2、node3),通过相关配置,搭建出一个Linux服务器集群环境适用于大数据的开发学习。 本文使用的VMware版本为:VMware16; 本文环境搭建使用到的Linux发行版本为:CentOS7; 本文的电脑操作环境为:windows11。 首先,需要根据之前发文中的流程

    2024年02月07日
    浏览(60)
  • 基于slurm框架的GPU服务器集群搭建方法

    1. 环境基础 2. 环境配置 2.1 hostname配置 2.2 关闭SELinux (master, slave) 2.3 关闭Firewall (master, slave) 2.4 配置ip与hostname映射关系 (master, slave1) 3. 创建munge和slurm用户 (master, slave) 4. 安装munge 4.1 下载munge及依赖包 (master, slave) 4.2 生成munge.key并发送到各计算节点 (master) 4.3 修改

    2024年02月05日
    浏览(55)
  • 概述、搭建Redis服务器、部署LNP+Redis、创建Redis集群、连接集群、集群工作原理

    Top 案例1:搭建redis服务器 案例2:常用命令限 案例3:部署LNP+Redis 案例4:创建redis集群 1.1 具体要求如下 在主机redis64运行redis服务 修改服务运行参数 ip 地址192.168.88.64 服务监听的端口6364 redis服务的连接密码为 tarenaplj 1.2 方案 准备1台新虚拟机,要求如表-1所示。   1.3 步骤 实

    2024年02月12日
    浏览(84)
  • SRS流媒体服务器——Forward集群搭建和源码分析

    Forward集群原理 RTMP流转发(Forward)部署实例 Forward集群源码分析 Forward 表示向前、前头的、发送等意思。 在SRS中可以理解为把Master节点获得直播流⼴播(转发)给所有的Slave节点,master节点由多少路直播流,那么在每个slave节点也会多少路直播流。 注:在SRS中还有另外⼀种集

    2023年04月11日
    浏览(100)
  • 记录一次云服务器使用docker搭建kafka的过程

    创建网络 一定要将zookeeper注册中心与kafka建在一个network中,不然在springboot 集成 kakfa的demo测试代码中进行消息发送时会超时,报错: E x c e p t i o n t h r o w n w h e n s e n d i n g a m e s s a g e w i t h k e y = ‘ n u l l ‘ Exception thrown when sending a message with key=‘null‘ E x ce pt i o n t h ro w

    2024年02月04日
    浏览(42)
  • Cenos7 搭建Minio最新版集群部署服务器(一)

                                                      ------      道 | 法 | 术 | 器 | 势     ------                             多台服务器间免密登录|免密拷贝 Cenos7 搭建Minio集群部署服务器(一) Cenos7 搭建Minio集群Nginx统一访问入口|反向动态代理(二)  Nginx正向代理与反向

    2024年02月12日
    浏览(39)
  • 在阿里云和腾讯云的轻量应用服务器上搭建Hadoop集群

    本文在两台2核2g的云服务器上搭建了Hadoop集群,两台云服务器分别是阿里云(hjm)和腾讯云(gyt),集群部署规划如下: hjm gyt HDFS NameNodeSecondaryNameNodeDataNode DataNode YARN ResourceManagerNodeManager NodeManager 经实验,目前可以正常实现文件上传下载,但跑mapreduce程序还出现服务器资

    2024年02月08日
    浏览(47)
  • Redis持久化说明及其单台Linux服务器搭建Redis集群架构

    说明:RDB快照主要以二进制文件的形式进行存储数据,主要以文件名dump.rdb进行存储,主要设置redis.conf里面设置’save 60 1000’命令可以开启, 表示在60秒内操作1000次进行一次备份数据。在客户端执行save(同步)和bgsave(异步操作)。 redis.conf 启动redis相关命令 说明:主要把文件生

    2024年02月10日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包