Kafka 学习笔记(一)—— Kafka 安装

前言

​ 本系列为我学习 kafka 过程中的一些整理与记录,本篇主要记录 kafka 集群的安装。

环境及机器:

节点:三台虚拟机

配置:内存 16G、硬盘 100G

系统:Centos 7.7

一、 Zookeeper 安装

​ Kafka 集群的运行依赖于 Zookeeper 因此在安装 Kafka 之前需要先按照 Zookeeper

1.1 JDK 安装

​ JDK 的安装可以直接参照 Hadoop 完全分布式安装 此篇博客中有详细的步骤。

1.2 Zookeeper 安装

  1. Zookeeper 下载:

    Zookeeper 下载可以直接从 清华源 下载,可以直接使用 wget 命令下载至 linux 系统内也可以下载到本地然后通过 FTP 工具上传至服务器,本文选择 FTP 的方式

在这里插入图片描述

  1. tar 包解压

    执行命令:

    # -C 后为解压的目标路径
    tar -zxvf zookeeper-3.4.10.tar.gz -C you.dir
    
  2. 配置 Zookeeper

    1. 在 zookeeper 目录下创建 zkData 文件夹:

      mkdir zkData
      
    2. 创建 myid 文件

      touch myid
      
    3. 编辑 myid 文件配置唯一的服务器 id

      vim myid
      

      在这里插入图片描述

      此处配置一个全集群唯一的整数标记服务器即可,需要注意的是集群上的所有机器都需要配置的 myid 都应是不同的。

    4. 配置 zoo.cfg 文件

      # 复制模板
      cp zoo_sample.cfg zoo.cfg
      # 配置 cfg 文件
      vim zoo.cfg
      

      在这里插入图片描述

      ​ 红框内为需要配置的内容,dataDir 配置为 zkData 的全路径,下方添加集群内容。

      ​ 参数说明:

      ​ server.A=B:C:D

      • A 为一个数字,一般和 myid 文件中配置的相同,标识了第几号服务器
      • B 为机器的 IP 地址
      • C 是这个服务器与集群中的Leader服务器交换信息的端口
      • D 是如果集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口
    5. 集群同步配置

      使用 scp 命令进行集群配置同步

      scp -r your.zookeeper.dir targetIp:targer.dir
      

      需要注意的是同步完之后需要相应的修改 myid

  3. Zookeeper 启动

    在所有机器上执行命令:

    bin/zkServer.sh start
    

    启动后查看 Zookeeper 状态,出现下图说明当前节点启动成功

    bin/zkServer.sh status
    

    在这里插入图片描述

二、Kafka 安装

​ 完成了 Zookeeper 的安装接下来就可以开始安装 Kafka 了。

  1. Kafka 下载

    同样安装之前需要先下载 Kafka 的安装包,依然使用 清华源 具体过程同 Zookeeper 不在赘述了

  2. 解压 Kafka

    执行命令:

    tar -zxvf kafka_2.11-0.11.0.2.tgz -C your.dir
    
  3. 配置 Kafka

    进入 Kafka 下的 config 目录修改配置文件:

    vim server.properties
    
    #broker的全局唯一编号,不能重复
    broker.id=0
    #删除topic功能使能
    delete.topic.enable=true
    #处理网络请求的线程数量
    num.network.threads=3
    #用来处理磁盘IO的线程数量
    num.io.threads=8
    #发送套接字的缓冲区大小
    socket.send.buffer.bytes=102400
    #接收套接字的缓冲区大小
    socket.receive.buffer.bytes=102400
    #请求套接字的缓冲区大小
    socket.request.max.bytes=104857600
    #kafka运行日志存放的路径	
    #此处默认为 log,命名为 log 但实际是 kafka 的 数据和 log 都存放在这个目录下
    #推荐创建一个 data 目录并将此处的 log 修改为 data 让数据和 kafka log 分开
    log.dirs=/opt/module/kafka/data
    #topic在当前broker上的分区个数
    num.partitions=1
    #用来恢复和清理data下数据的线程数量
    num.recovery.threads.per.data.dir=1
    #segment文件保留的最长时间,超时将被删除
    log.retention.hours=168
    #配置连接Zookeeper集群地址
    zookeeper.connect=hadoop001:2181,hadoop002:2181,hadoop003:2181
    

    需要注意的 broker.idlog.dirs 这俩个属性,具体可参考注释。

  4. Kafka 启动

    同 Zookeeper 一样 Kafka 没有提供集群启动的脚本,需要在每台机器上分别启动,当然可以自动写一个群起脚本,由于 Kafka 的 broker 是一个阻塞进程因此选择使用守护进程启动:

    /bin/kafka-server-start.sh -daemon /config/server.properties
    
  5. 查看启动情况

    使用 jps 命令查看 Kafka 是否正常运行,若出现 Kafka 则说明启动成功,至此 Kafka 安装完成!

择使用守护进程启动:

/bin/kafka-server-start.sh -daemon /config/server.properties
  1. 查看启动情况

    使用 jps 命令查看 Kafka 是否正常运行,若出现 Kafka 则说明启动成功,至此 Kafka 安装完成!

    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值