Kafka在Linux上的部署步骤是什么

Kafka在Linux上的部署步骤是什么

本文指导您如何在linux系统上部署apache kafka。 我们将涵盖环境准备、Java安装、zookeeper集群配置以及Kafka的安装和测试。

一、准备工作

  • 操作系统: 选择合适的Linux发行版,例如centosubuntu
  • 服务器: 确定用于部署Kafka的服务器IP地址列表 (至少一台用于单节点部署,多台用于集群部署)。
  • 软件包: 下载Java JDK、ZooKeeper和Kafka的安装包。 确保版本兼容性。

二、安装Java JDK

根据您的Linux发行版,使用以下命令安装Java 8 JDK (建议使用8,但可根据Kafka版本调整):

  • Ubuntu/debian:

    sudo apt update sudo apt install openjdk-8-jdk
  • CentOS/RHEL:

    sudo yum install java-1.8.0-openjdk

配置环境变量:编辑/etc/profile文件,添加以下内容,将/path/to/java替换为实际Java安装路径:

export JAVA_HOME=/path/to/java export PATH=$PATH:$JAVA_HOME/bin

运行 source /etc/profile 使配置生效。 使用 java -version 验证安装。

三、部署ZooKeeper集群

  1. 解压ZooKeeper: 将ZooKeeper安装包解压到 /opt 目录 (或您选择的目录):

    tar -zxvf zookeeper-3.4.10.tar.gz -C /opt
  2. 配置环境变量: 编辑/etc/profile,添加ZooKeeper环境变量,将/path/to/zookeeper替换为实际路径:

    export ZOOKEEPER_HOME=/path/to/zookeeper export PATH=$PATH:$ZOOKEEPER_HOME/bin

    运行 source /etc/profile 使配置生效。

  3. 配置zoo.cfg: 编辑/opt/zookeeper/conf/zoo.cfg 文件,配置以下参数 (根据您的服务器数量和IP地址调整 server.* 配置):

    tickTime=2000 initLimit=10 syncLimit=5 dataDir=/data/zookeeper/data  # 创建该目录 clientPort=2181 maxClientCnxns=60 dataLogDir=/data/zookeeper/log # 创建该目录 server.1=server01:2888:3888 server.2=server02:2888:3888 server.3=server03:2888:3888
  4. 打开防火墙端口: 允许ZooKeeper使用的端口通过防火墙 (2181, 2888, 3888):

    firewall-cmd --add-port=2181/tcp --permanent firewall-cmd --add-port=2888/tcp --permanent firewall-cmd --add-port=3888/tcp --permanent firewall-cmd --reload
  5. 创建myid文件: 在每个ZooKeeper服务器的/data/zookeeper/data目录下创建myid文件,文件内容为该服务器的ID (1, 2, 3 …)。

  6. 启动ZooKeeper: 在每个ZooKeeper服务器上运行: ./bin/zkServer.sh start

四、安装和配置Kafka

  1. 解压Kafka: 将Kafka安装包解压到 /opt 目录:

    tar -zxvf kafka_2.12-3.5.2.tgz -C /opt
  2. 配置server.properties: 编辑/opt/kafka/config/server.properties 文件,配置以下参数 (调整 broker.id 和 zookeeper.connect 以匹配您的环境):

    broker.id=0 port=9092 host.name=localhost log.dirs=/opt/kafka/kafka_2.12-3.5.2/logs # 创建该目录 zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181 # 替换为ZooKeeper服务器地址
  3. 启动Kafka: 运行 ./bin/kafka-server-start.sh config/server.properties

五、创建Topic和测试

  1. 创建Topic: 使用以下命令创建一个名为 test 的Topic:

     ./bin/kafka-topics.sh --create --zookeeper zookeeper1:2181 --replication-factor 1 --partitions 1 --topic test ```  (将 `zookeeper1:2181` 替换为ZooKeeper连接字符串)
  2. 列出Topic: 使用 ./bin/kafka-topics.sh –zookeeper zookeeper1:2181 –list 查看已创建的Topic。

  3. 生产者测试: 在一个终端运行生产者:

    ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
  4. 消费者测试: 在另一个终端运行消费者:

    ./bin/kafka-console-consumer.sh --zookeeper zookeeper1:2181 --topic test --from-beginning

完成以上步骤后,您已在Linux上成功部署Kafka。 请记住将占位符替换为您的实际路径和IP地址。 对于集群部署,请重复步骤三和四,并在 server.properties 和 zoo.cfg 中正确配置所有服务器。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享