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

相关推荐
苍煜10 小时前
分布式事务生产实战选型对比
分布式
JAVA面经实录91713 小时前
企业级java+LangChain4j-RAG系统 限流熔断降级
java·开发语言·分布式·langchain
冷小鱼14 小时前
消息队列(MQ)技术全景科普:从选型到AI+未来
人工智能·kafka·rabbitmq·rocketmq·mq·pulsar
YaBingSec18 小时前
玄机网络安全靶场:Hadoop YARN ResourceManager 未授权 RCE WP
大数据·数据库·hadoop·redis·笔记·分布式·web安全
空中海18 小时前
第六篇:可靠性篇 — Sentinel 熔断限流与 Seata 分布式事务
分布式·sentinel
rustfs19 小时前
MinIO 国产平替,RustFS 发布 Beta 版本啦
分布式·docker·云原生·rust·开源
Mr_sst20 小时前
文件上传并发控制:为什么选Redisson可过期信号量?(避坑指南)
网络·数据库·redis·分布式·安全架构
深念Y20 小时前
当加密遇见分布式:Web3、去中心化与元宇宙的底层逻辑
分布式·web3·去中心化·区块链·元宇宙·加密·价值
运维老司机20 小时前
Kafka 单节点部署(Docker Compose + 数据持久化)
分布式·docker·kafka
byoass21 小时前
企业云盘全文检索实战:Elasticsearch集成与分布式搜索
网络·分布式·安全·elasticsearch·云计算·全文检索