Kafka入门到实战-第四弹

Kafka入门到实战

Kafka集群搭建

官网地址

声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准

bash 复制代码
https://kafka.apache.org/

Kafka概述

Apache Kafka 是一个开源的分布式事件流平台,提供高性能数据管道、流分析、 数据集成和任务关键型应用程序。

使用Kraft搭建Kafka集群

声明: 由于演示才手动部署集群, 生产中一般通过自动化部署, 比如Ansible, 或者Operator

  • 虚拟机配置

  • 安装jdk1.8及以上

  • 关闭防火墙(测试使用)

  • 下载,解压Kafka

  • 进入到Kafka家目录后的截图

  • 参考Kraft进行集群配置

  • 修改kraft目录下的配置,说明: 1. log.dirs生产中要改到其它目录比如/var/kafka-log/kraft-combined-logs , 不然重启后会删除数据 2. 9092是kafka服务示例端口, 9093是Kraft使用的端口

    • controller (规划中的56.62, 56.63, id分别为1和2)

      bash 复制代码
      process.roles=controller
      broker.id=1
      controller.quorum.voters=1@192.168.56.62:9093,2@192.168.56.63:9093,3@192.168.56.64:9093
      listeners=CONTROLLER://:9093
      # advertised.listeners=CONTROLLER://:9093
      log.dirs=/tmp/kraft-combined-logs 
    • broker,controller (规划中的56.64)

      bash 复制代码
      process.roles=broker,controller
      broker.id=3
      controller.quorum.voters=1@192.168.56.62:9093,2@192.168.56.63:9093,3@192.168.56.64:9093
      listeners=PLAINTEXT://:9092,CONTROLLER://:9093
      advertised.listeners=PLAINTEXT://192.168.56.64:9092
      log.dirs=/tmp/kraft-combined-logs
    • broker (规划中的56.65)

      bash 复制代码
      process.roles=broker
      broker.id=4
      controller.quorum.voters=1@192.168.56.62:9093,2@192.168.56.63:9093,3@192.168.56.64:9093
      listeners=PLAINTEXT://:9092
      advertised.listeners=PLAINTEXT://192.168.56.65:9092
      log.dirs=/tmp/kraft-combined-logs
  • 生成一个id号, 后边不同服务器要用同一个, 结果是eaBR6XiIQVaZwWATjBCqpw

    bash 复制代码
    KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"
    echo $KAFKA_CLUSTER_ID
  • 格式化

    bash 复制代码
    bin/kafka-storage.sh format -t eaBR6XiIQVaZwWATjBCqpw -c config/kraft/server.properties
  • 启动

    bash 复制代码
    bin/kafka-server-start.sh config/kraft/server.properties
  • 验证服务示例是不是两个(在64,或65上)执行

    bash 复制代码
    bin/kafka-broker-api-versions.sh --bootstrap-server localhost:9092
  • 结果展示

更新计划

欲知后事如何, 请听下回分解

相关推荐
kobe_t1 小时前
分布式定时任务系列14:XXL-job的注册模型
分布式
Knight_AL2 小时前
线程池满了怎么办?用 RabbitMQ 做任务补偿不丢失
分布式·rabbitmq·ruby
難釋懷4 小时前
分布式锁-redission锁的MutiLock原理
分布式
小北方城市网5 小时前
RabbitMQ 生产级实战:可靠性投递、高并发优化与问题排查
开发语言·分布式·python·缓存·性能优化·rabbitmq·ruby
乾元5 小时前
拒绝服务的进化:AI 调度下的分布式协同攻击策略
人工智能·分布式
编程彩机6 小时前
互联网大厂Java面试:从分布式事务到微服务优化的技术场景解读
java·spring boot·redis·微服务·面试·kafka·分布式事务
听麟6 小时前
HarmonyOS 6.0+ PC端多设备文件拖拽协同开发实战:手眼同行增强与分布式软总线深度应用
分布式·华为·harmonyos
indexsunny7 小时前
互联网大厂Java面试实战:从Spring Boot到Kafka的技术与业务场景解析
java·spring boot·redis·面试·kafka·技术栈·microservices
前端世界7 小时前
鸿蒙分布式网络性能优化实战:从通信建连到多设备协同
网络·分布式·harmonyos
雪碧聊技术7 小时前
什么是Zookeeper?
分布式·zookeeper