kafka单机安装

kafka单机安装

下载地址

  1. 官网:https://kafka.apache.org/
  2. 最新版本下载页面:https://kafka.apache.org/downloads

说明

  1. 版本选择:3.0.0,kafka_2.12-3.0.0.tgz
  2. 下载地址:https://archive.apache.org/dist/kafka/3.0.0/kafka_2.12-3.0.0.tgz

安装前准备

  1. 安装环境:linux,centos7
  2. 安装java环境,参考:linux安装java -centos安装java -linux配置java环境变量
  3. 安装zookeeper集群,参考:zookeeper集群安装

单机安装

  1. 复制下载的安装包到Linux服务器,安装包名:kafka_2.12-3.0.0.tgz

  2. 进入到安装包所在路径,将安装包解压到指定目录

    shell 复制代码
    tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/module/
  3. 重命名,将kafka_2.12-3.0.0重命名为kafka

    shell 复制代码
    cd /opt/module
    mv kafka_2.12-3.0.0/ kafka
  4. 修改配置文件config/server.properties

    1. broker.id是唯一标识,如果是集群安装,集群内不能重复

      properties 复制代码
      broker.id=0
    2. log.dirs是kafka存储数据路径,默认路径为:/tmp/kafka-logs,调整到kafka根目录下

      properties 复制代码
      log.dirs=/opt/module/kafka/datas
    3. zookeeper.connect是zookeeper连接地址,调整为集群模式

      properties 复制代码
      zookeeper.connect=192.168.145.132:2181,192.168.145.133:2181,192.168.145.134:2181/kafka

      连接地址后面拼接/kafka节点,用来存储kafka相关的信息,避免zookeeper信息混乱

      安装zookeeper集群,参考:zookeeper集群安装

    4. listeners默认不需要配置,有缺省配置,必要时应手动指定,下面的描述信息

      properties 复制代码
      # The address the socket server listens on. It will get the value returned from 
      # java.net.InetAddress.getCanonicalHostName() if not configured.
      #   FORMAT:
      #     listeners = listener_name://host_name:port
      #   EXAMPLE:
      #     listeners = PLAINTEXT://your.host.name:9092
      #listeners=PLAINTEXT://:9092

      java.net.InetAddress.getCanonicalHostName()获取的信息可能不是我们想要的,需要手动配置

      properties 复制代码
      listeners=PLAINTEXT://192.168.145.132:9092
    5. advertised.listeners默认不需要配置,有缺省配置,必要时应手动指定,下面的描述信息

      properties 复制代码
      # Hostname and port the broker will advertise to producers and consumers. If not set, 
      # it uses the value for "listeners" if configured.  Otherwise, it will use the value
      # returned from java.net.InetAddress.getCanonicalHostName().
      #advertised.listeners=PLAINTEXT://your.host.name:9092
  5. 配置环境变量/etc/profile.d/my_env.sh

    properties 复制代码
    KAFKA_HOME=/opt/module/kafka
    PATH=$PATH:$KAFKA_HOME/bin
    export KAFKA_HOME PATH

    使配置生效

    shell 复制代码
    source /etc/profile

启动kafka服务端

  1. 先启动zookeeper集群,在每个服务器中,分别启动zookeeper

    shell 复制代码
    cd /opt/module/zookeeper-3.5.7/bin
    ./zkServer.sh start

    安装zookeeper集群,参考:zookeeper集群安装

  2. 启动kafka

    shell 复制代码
    cd /opt/module/kafka/bin
    ./kafka-server-start.sh -daemon ../config/server.properties

    启动kafka需要指定配置文件

  3. 停止kafka

    shell 复制代码
    cd /opt/module/kafka/bin
    ./kafka-server-stop.sh

    注意:先停止kafka,再停止zookeeper

相关推荐
每天一道题1 小时前
分布式锁真的安全吗?从 Redis 锁、Lease 到 Fencing Token
redis·分布式·安全
小O的算法实验室5 小时前
IEEE TAES,多无人机通信故障下的分布式任务分配与压制干扰
分布式
Deng桑21 小时前
分布式锁与幂等
分布式
Flynn Liang1 天前
物联网时序数据乱序问题全链路治理:从设备到存储的五层实战(附 Flink/Kafka/IoTDB 配置级代码)
flink·kafka·iot·iotdb·emqx·乱序·时序数据
wifi___1 天前
Redis分布式锁
数据库·redis·分布式
方方洛1 天前
ray教程-15-RayServe与LLM服务
人工智能·分布式·机器学习
m0_639906941 天前
MySQL 实现分布式锁:悲观锁、乐观锁、唯一索引锁
数据库·分布式·mysql
T量子永生1 天前
Android SISO 分布式编译集群配置方案
android·分布式·云计算·源代码管理
starzy19902 天前
Kafka响应发送:字节是怎么真正写回客户端的
大数据·kafka
KaiwuDB2 天前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式