zoukankan      html  css  js  c++  java
  • Kafka 安装部署

    环境准备
    • CentOS:7.0
    • JDK:1.8
    • ZooKeeper:3.4.6
    • Kafka 集群:node-01、node-02、node-03
    安装与配置
    • SFTP 上传 Kafka 安装包并解压
    [root@node-01 ~]# tar -zxvf kafka_2.13-2.7.0.tgz -C apps/
    [root@node-01 ~]# rm -rf kafka_2.13-2.7.0.tgz 
    
    • 配置 Kafka 环境变量
    [root@node-01 ~]# vim /etc/profile
    #行尾添加
    export KAFKA_HOME=/root/apps/kafka_2.13-2.7.0
    export PATH=$PATH:$KAFKA_HOME/bin
    [root@node-01 ~]# source /etc/profile
    
    • 修改 config/server.properties 配置文件
    [root@node-01 ~]# cd /root/apps/kafka_2.13-2.7.0/config/
    [root@node-01 config]# vim server.properties 
    # broker 编号(集群中多个broker 编号设置不同)
    broker.id=1
    # kafka 对外提供服务地址和端口号
    listeners=PLAINTEXT://node-01:9092
    # kafka 存放消息(数据)日志文件路径
    log.dirs=/root/apps/kafka_2.13-2.7.0/kafka-logs
    # kafka 连接的 zookeeper 地址
    zookeeper.connect=node-01:2181,node-02:2181,node-03:2181
    
    • 复制 kafka 安装包到 node-02 和 node-03

      注:node-02 和 node-03 分别配置修改 broker.id

    [root@node-01 ~]# cd /etc
    [root@node-01 etc]# scp profile node-02:$PWD
    [root@node-01 etc]# scp profile node-03:$PWD
    
    [root@node-01 ~]# cd /root/apps/
    [root@node-01 ~]# scp -r kafka_2.13-2.7.0/ node-02:$PWD
    [root@node-01 ~]# scp -r kafka_2.13-2.7.0/ node-03:$PWD
    
    [root@node-02 ~]# cd apps/kafka_2.13-2.7.0/config/
    [root@node-02 config]# vi server.properties 
    broker.id=2
    listeners=PLAINTEXT://node-02:9092
    [root@node-02 ~]# source /etc/profile
    
    [root@node-03 ~]# cd apps/kafka_2.13-2.7.0/config/
    [root@node-03 config]# vi server.properties 
    broker.id=3
    listeners=PLAINTEXT://node-03:9092
    [root@node-03 ~]# source /etc/profile
    
    • 启动 ZooKeeper 集群

      注:要启动 Kafka 集群要先启动 ZooKeeper 集群,因为 Kakfa 需要 ZooKeeper 负责 Kafka 集群元数据的管理、控制器的选举等操作

    [root@node-01 ~]# zkCluster.sh start
    
    • 启动 Kafka 集群
    
    [root@node-01 ~]# kafka-server-start.sh /root/apps/kafka_2.13-2.7.0/config/server.properties
    [root@node-01 ~]# jps
    1431 Kafka
    1865 Jps
    1325 QuorumPeerMain
    
    [root@node-02 ~]# kafka-server-start.sh /root/apps/kafka_2.13-2.7.0/config/server.properties
    [root@node-02 ~]# jps
    1431 Kafka
    1865 Jps
    1325 QuorumPeerMain
    
    [root@node-03 ~]# kafka-server-start.sh /root/apps/kafka_2.13-2.7.0/config/server.properties 
    [root@node-03 ~]# jps
    1431 Kafka
    1865 Jps
    1325 QuorumPeerMain
    
    创建 kafka 集群批处理脚本 allKafka.sh

    Kafka 没有批处理集群脚本,需要自己编写,如下:

    [root@node-01 ~]# cd /root/apps/kafka_2.13-2.7.0/bin/
    [root@node-01 bin]# vim allKafka.sh
    
    #!/bin/bash
    for host in node-01 node-02 node-03
    do
    if [ ${1} == "start" ];then
      echo "${host}:${1}ing....."
      ssh $host "source /etc/profile;/root/apps/kafka_2.13-2.7.0/bin/kafka-server-start.sh /root/apps/kafka_2.13-2.7.0/config/server.properties 1>/dev/null 2>&1 &"
    fi
    
    if [ ${1} == "stop" ]; then
      echo "${host}:${1}ing....."
      ssh $host "source /etc/profile;/root/apps/kafka_2.13-2.7.0/bin/kafka-server-stop.sh 1>/dev/null 2>&1 &"
    fi
    done
    
    [root@node-01 bin]# chmod +x allKafka.sh
    
    至此,Kafka 集群环境配置 OK :)
    作者:Binge
    本文版权归作者和博客园共有,转载必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    MERGE引擎 分表后 快速查询所有数据
    MYSQL导入中文数据乱码的四种解决办法
    数据库中为什么不推荐使用外键约束?
    Word转PDF
    YII2 更新数据不成功
    YII2 使用curl请求,返回false
    Yii集成PHPWord
    网站安全DDOS攻击及监测
    nginx日志
    定时任务秒级执行
  • 原文地址:https://www.cnblogs.com/binbingg/p/14721243.html
Copyright © 2011-2022 走看看