1. kafka分布式环境搭建

一. 集群规划
主机名 IP 组件
hadoop1 192.168.205.154 zookeeper, kafka
hadoop2 192.168.205.155 kafka
hadoop3 192.168.205.156 kafka
bash 复制代码
kafka版本:3.6.0
二. 集群部署
  1. 安装JDK,具体安装过程此处不赘述。

  2. 安装zookeeper,本次采用单机模式部署在hadoop1,具体安装过程此处不赘述。

  3. 下载kafka安装包,并上传到对应目录下

    bash 复制代码
    [root@hadoop1 opt]# tar xf kafka_2.12-3.6.0.tgz
    [root@hadoop1 opt]# mv kafka_2.12-3.6.0 kafka-3.6.0/
  4. 修改配置文件config/server.properties

    bash 复制代码
    # 每台机器的id必须保持不一样
    broker.id=1
    # IP为当前主机的IP地址
    advertised.listeners=PLAINTEXT://192.168.205.154:9092
    # 日志目录
    log.dirs=/opt/kafka-3.6.0/kafka-logs
    # zookeeper连接地址
    zookeeper.connect=192.168.205.154:2181
  5. 将配置好的安装包分发到两外两台主机上

    bash 复制代码
    [root@hadoop1 ~]# scp  -r /opt/kafka-3.6.0/  root@hadoop2:/opt
    [root@hadoop1 ~]# scp  -r /opt/kafka-3.6.0/  root@hadoop3:/opt
  6. 修改两外两台主机上的配置

    bash 复制代码
    # hadoop2
    broker.id=2
    advertised.listeners=PLAINTEXT://192.168.205.155:9092
    # hadoop3
    broker.id=3
    advertised.listeners=PLAINTEXT://192.168.205.156:9092
  7. 启动zookeeper和kafka

    bash 复制代码
    # 启动zookeeper
    [root@hadoop1 zookeeper-3.9.2]# ./bin/zkServer.sh  start
    # 启动kafka
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-server-start.sh -daemon config/server.properties
    [root@hadoop2 kafka-3.6.0]# ./bin/kafka-server-start.sh -daemon config/server.properties
    [root@hadoop3 kafka-3.6.0]# ./bin/kafka-server-start.sh -daemon config/server.properties
三. 集群测试
  1. 查看所有topic

    bash 复制代码
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-topics.sh  --bootstrap-server  192.168.205.154:9092   --list
  2. 创建topic

    bash 复制代码
    # 分区数为1,副本数为3
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-topics.sh  --bootstrap-server  192.168.205.154:9092   --create --topic first  --partitions 1 --replication-factor 3
    Created topic first.
  3. 查看topic详细信息

    bash 复制代码
    # 查看topic详细信息
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-topics.sh  --bootstrap-server  192.168.205.154:9092 --describe --topic first
    Topic: first    TopicId: Sj4KtQ8gRk-NCtHL7ONpBg PartitionCount: 1       ReplicationFactor: 3    Configs:
            Topic: first    Partition: 0    Leader: 1       Replicas: 1,2,3 Isr: 1,2,3
  4. 修改topic分区数

    bash 复制代码
    # 将topic的分区数修改为3
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-topics.sh  --bootstrap-server  192.168.205.154:9092 --alter --topic first --partitions 3
  5. 启动消费者

    bash 复制代码
    [root@hadoop2 kafka-3.6.0]# ./bin/kafka-console-consumer.sh  --bootstrap-server 192.168.205.154:9092 --topic first  --from-beginning
  6. 启动生产者

    bash 复制代码
    [root@hadoop1 kafka-3.6.0]# ./bin/kafka-console-producer.sh --bootstrap-server  192.168.205.154:9092  --topic first
相关推荐
啊吧怪不啊吧13 分钟前
极致性能的服务器Redis之String类型及相关指令介绍
网络·数据库·redis·分布式·mybatis
BUTCHER59 小时前
Filebeat输出Kafka配置
分布式·kafka
CryptoRzz9 小时前
如何高效接入日本股市实时数据?StockTV API 对接实战指南
java·python·kafka·区块链·状态模式·百度小程序
Jackeyzhe9 小时前
从零学习Kafka:集群架构和基本概念
kafka
Jinkxs11 小时前
基于 Java 的消息队列选型年度总结:RabbitMQ、RocketMQ、Kafka 实战对比
java·kafka·java-rocketmq·java-rabbitmq
测试人社区-浩辰14 小时前
AI与区块链结合的测试验证方法
大数据·人工智能·分布式·后端·opencv·自动化·区块链
老友@15 小时前
分布式事务完全演进链:从单体事务到 TCC 、Saga 与最终一致性
分布式·后端·系统架构·事务·数据一致性
jiayong2318 小时前
MQ基础概念面试题
java·kafka·rabbitmq·rocketmq
【赫兹威客】浩哥19 小时前
【赫兹威客】完全分布式ZooKeeper测试教程
分布式·zookeeper·云原生
一晌小贪欢19 小时前
Python 魔术方法实战:深度解析 Queue 模块的模块化设计与实现
开发语言·分布式·爬虫·python·python爬虫·爬虫分布式