Kafka集群部署

Kafka集群部署

1、背景知识

Kafka是一个高吞吐量,基于Zookeeper(Zookeeper维护Kafka的broker信息)的分布式发布订阅信息系统,它可以处理消费者在网站中的素有动作(网页浏览、搜索和其他用户的行动)流数据。通常情况下,使用Kafka构建系统或应用程序之间的数据管道,用来转换或响应事实数据,使数据能够及时地进行业务计算,得出相应的结果。

2、使用软件及其版本

  • 环境

    • 虚拟机:VirtualBox 6.0.24 r139119

    • Linux:CentOS 7

    • Windows:Windows10

  • 软件

    • Kafka:kafka_2.11-2.3.0

  • 工具

    • 远程连接工具:XShell6

    • SFTP工具:FileZilla3.33.0

3、目标

  • Kafka集群部署

4、操作步骤

  1. 下载Kafka

    可以在http://kafka.apache.org/downloads下载kafka安装包

    Kafka集群部署

    注意:kafka版本的选择要和当前使用的scala版本对应(scala2.11)

  2. 安装Kafka

    1. 上传Kafka安装包到master节点,解压安装,使用命令

      tar -zxvf kafka_2.11-2.3.0.tgz -C ~/app/

    2. 修改配置文件

      进入Kafka安装目录下的config目录,修改server.properties文件,使用命令

      sudo vi server.properties

      修改配置信息

       broker.id=0
       listeners=PLAINTEXT://master:9092
       advertised.listeners=PLAINTEXT://master:9092
       log.dirs=/home/hadoop/data/kafka/kafka-logs
       zookeeper.connect=master:2181,slave01:2181,slave02:2181/kafka
      • broker.id:broker的全局唯一编号,每个kafka节点的编号值不能重复。

      • listeners:定义外部连接着通过指定主机名和端口号访问开发的kafka服务(替换host.name和port参数)

      • log.dirs:定义kafka日志存放目录

      • zookeeper.connect:配置zookeeper集群地址,其中/kafka用于指定zookeeper中存放kafka信息的znode(目录节点)

  3. 分发Kafka到slave01和slave02节点,使用命令

     scp -r kafka_2.11-2.3.0 hadoop@slave01:~/app/
     scp -r kafka_2.11-2.3.0 hadoop@slave02:~/app/
  4. 在slave01节点和slave02节点修改Kafka安装目录下`server.properties,使用命令

    sudo vi server.properties

    修改broker.id分别为broker.id=1broker.id=2

    Kafka集群部署

    Kafka集群部署

  5. 配置环境变量

    在master,slave01,slave02节点,使用sudo vi /etc/profile命令,修改环境变量

     export KAFKA_HOME=/home/hadoop/app/kafka_2.11-2.3.0
     export PATH=$KAFKA_HOME/bin:$PATH

    使用source /etc/profile命令,使配置生效。

  6. 启动Kafka集群

    启动Kafka集群前,需要确保Zookeeper集群式正常启动的。在master,slave01,slave02节点使用命令

    kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties &

    Kafka集群部署

    Kafka集群部署

    Kafka集群部署

5、总结

 

上一篇:MySQL 到 Kafka 实时数据同步实操分享


下一篇:K8S环境快速部署Kafka(K8S外部可访问),mysql数据库优化及sql调优