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

相关推荐
Bug退退退1238 小时前
RabbitMQ 高级特性之事务
java·分布式·spring·rabbitmq
CodeWithMe8 小时前
【Note】《Kafka: The Definitive Guide》第四章:Kafka 消费者全面解析:如何从 Kafka 高效读取消息
分布式·kafka
Gauss松鼠会12 小时前
GaussDB应用场景全景解析:从金融核心到物联网的分布式数据库实践
数据库·分布式·物联网·金融·database·gaussdb
csdn_aspnet12 小时前
在 MacOS 上安装和配置 Kafka
macos·kafka
@Jackasher14 小时前
Redisson是如何实现分布式锁的?
分布式
❀always❀21 小时前
深入浅出分布式限流(更新中)
分布式·wpf
Bug退退退1231 天前
RabbitMQ 幂等性
分布式·rabbitmq
{⌐■_■}1 天前
【Kafka】登录日志处理的三次阶梯式优化实践:从同步写入到Kafka多分区批处理
数据库·分布式·mysql·kafka·go
qq_529835351 天前
RabbitMQ的消息可靠传输
分布式·rabbitmq