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
相关推荐
一条泥憨鱼4 小时前
【Redis | 黑马点评】分布式锁;Lua脚本;Redisson与看门狗 |源码万字详解
redis·分布式·lua
stark张宇5 小时前
库存扣减的“锁”事:悲观锁、乐观锁、分布式锁
redis·分布式·mysql
xianyuCcCcCCCcc8 小时前
Ceph 分布式存储:集群配置与存储池管理
运维·分布式·ceph
萧瑟余晖10 小时前
Spring Cloud分布式事务与链路追踪详解
分布式·spring·spring cloud
汤姆宝库11 小时前
预训练工程深拆:Scaling_Law、数据管线与分布式并行
分布式
pjj1985411 小时前
Spark RDD 核心知识详解:算子、依赖与执行模型
大数据·分布式·spark
SL-staff11 小时前
JVS私有化部署运维避坑指南:Kafka容灾、ES冷热分离、RabbitMQ可观测性三实战检查项
elasticsearch·kafka·jvs运维·es冷热分离·rabbitmq监控·中间件巡检·sre实践
starzy199011 小时前
KafkaProducer 源码深度剖析:支撑高吞吐的数据结构设计
大数据·数据结构·kafka
浔溺12 小时前
Spark核心基石:RDD全方位深度解析(原理、算子、实战、优化)
大数据·分布式·spark
catino12 小时前
RabbitMQ详解
分布式·rabbitmq·ruby