Kafka3.0.0版本——集群部署(linux环境-centos7)

目录

一、三台服务器信息

  • 三台服务器
    服务器名称 服务器ip
    centos7虚拟机1 192.168.136.27
    centos7虚拟机2 192.168.136.28
    centos7虚拟机3 192.168.136.29

二、三台服务分别需要安装Zookeeper(Kafka需要Zookeeper支持

三、Kafka3.0.0官网下载

3.1、官网下载地址

3.2、下载步骤

  • 下载步骤如下所示:
    在这里插入图片描述

四、Kafka3.0.0集群部署

4.1、centos7虚拟机1 (192.168.136.27)服务器安装步骤

4.1.1、解压安装(以下所有演示操作lz都使用的root用户)

  • 上传安装包到home目录下
    在这里插入图片描述

  • 在opt目录下创建module文件夹(如果没有创建的话)

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

  • 进入home目录,解压安装包到opt/module目录下

    [root@localhost home]# tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/module/
    

    在这里插入图片描述

  • 进入opt/module目录下,修改解压后的kafka_2.12-3.0.0名称为kafka-3.0.0

    [root@localhost home]# cd /opt/module/
    [root@localhost module]# mv kafka_2.12-3.0.0/ kafka-3.0.0
    

    在这里插入图片描述

4.1.2、在Kafka根目录下创建datas文件

  • 在/opt/module/kafka-3.0.0目录下创建datas文件夹,用于日志的存储目录

    [root@localhost kafka-3.0.0]# mkdir datas
    

    在这里插入图片描述

4.1.3、在Zookeeper根目录下创建/kafka-3.0.0文件夹

  • 在/opt/module/zookeeper-3.5.7目录下创建kafka-3.0.0文件夹,方便管理kafka

    [root@localhost kafka-3.0.0]# cd /opt/module/zookeeper-3.5.7
    [root@localhost zookeeper-3.5.7]# mkdir kafka-3.0.0
    

    在这里插入图片描述

4.1.4、修改server.properties配置文件

  • 进入到/opt/module/kafka-3.0.0/config 目录,修改server.properties配置文件

    [root@localhost module]# cd kafka-3.0.0/config/
    [root@localhost config]# vim server.properties
    
  • 修改server.properties配置文件中以下4个地方内容

    #broker 的全局唯一编号,不能重复,只能是数字。
    broker.id=0
    

    在这里插入图片描述

    #放开端口
    listeners=PLAINTEXT://192.168.136.27:9092
    advertised.listeners=PLAINTEXT://192.168.136.27:9092
    

    在这里插入图片描述

    #kafka 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以
    配置多个磁盘路径,路径与路径之间可以用","分隔
    log.dirs=/opt/module/kafka-3.0.0/datas
    

    在这里插入图片描述

    #配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理)
    zookeeper.connect=192.168.136.27:2181,192.168.136.28:2181,192.168.136.29:2181/kafka-3.0.0
    

    在这里插入图片描述

4.1.5、配置kafka环境变量

  • 在/etc/profile.d/my_env.sh 文件中增加 kafka环境变量配置,增加如下内容:

    #KAFKA_HOME
    export KAFKA_HOME=/opt/module/kafka-3.0.0
    export PATH=$PATH:$KAFKA_HOME/bin
    

    在这里插入图片描述

  • 刷新环境变量

    [root@localhost zookeeper-3.5.7]# source /etc/profile
    

    在这里插入图片描述

4.1.6、在防火墙中打开要用到的端口 9092,如下所示:

  • 开启防火墙,开放9092端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.1.7、server.properties配置文件参数解读

  • 参数解读

    #broker 的全局唯一编号,不能重复,只能是数字。
    broker.id=0
    #处理网络请求的线程数量
    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 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以
    配置多个磁盘路径,路径与路径之间可以用","分隔
    log.dirs=/opt/module/kafka/datas
    #topic 在当前 broker 上的分区个数
    num.partitions=1
    #用来恢复和清理 data 下数据的线程数量
    num.recovery.threads.per.data.dir=1
    # 每个 topic 创建时的副本数,默认时 1 个副本
    offsets.topic.replication.factor=1
    #segment 文件保留的最长时间,超时将被删除
    log.retention.hours=168
    #每个 segment 文件的大小,默认最大 1G
    log.segment.bytes=1073741824
    

4.2、centos7虚拟机2 (192.168.136.28)服务器安装步骤

4.2.1、在opt目录下创建module文件夹(如果没有创建的话)

  • 在opt目录下创建module文件夹 与 centos7虚拟机1 (192.168.136.27)服务器中kafka-3.0.0解压安装包的位置相同即可。

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

4.2.2、拷贝配置好的 kafka-3.0.0 到centos7虚拟机2 (192.168.136.28)服务器

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的 kafka-3.0.0 到centos7虚拟机2 (192.168.136.28)服务器

    [root@localhost home]# scp -r /opt/module/kafka-3.0.0/ root@192.168.136.28:/opt/module/
    

    在这里插入图片描述

4.2.3、拷贝配置好的环境变量文件到centos7虚拟机2 (192.168.136.28)服务器并刷新环境变量

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的环境变量文件到centos7虚拟机2 (192.168.136.28)服务器

    [root@localhost home]# scp -r /etc/profile.d/my_env.sh root@192.168.136.28:/etc/profile.d/my_env.sh
    

    在这里插入图片描述

  • 在centos7虚拟机2 (192.168.136.28)服务器上刷新环境变量

    [root@localhost zookeeper-3.5.7]# source /etc/profile
    

    在这里插入图片描述

4.2.4、修改配置文件/opt/module/kafka-3.0.0/config/server.properties中的内

  • 在centos7虚拟机2 (192.168.136.28)服务器上修改改配置文件/opt/module/kafka-3.0.0/config/server.properties中的broker.id=1(注:broker.id 不得重复,整个集群中唯一

    broker.id=1
    

    在这里插入图片描述

  • 在centos7虚拟机2 (192.168.136.28)服务器上修改改配置文件/opt/module/kafka-3.0.0/config/server.properties中的端口指定的服务器ip。
    在这里插入图片描述

4.2.5、在Zookeeper根目录下创建/kafka-3.0.0文件夹

  • 在/opt/module/zookeeper-3.5.7目录下创建kafka-3.0.0文件夹,方便管理kafka

    [root@localhost kafka-3.0.0]# cd /opt/module/zookeeper-3.5.7
    [root@localhost zookeeper-3.5.7]# mkdir kafka-3.0.0
    

    在这里插入图片描述

4.2.6、在防火墙中打开要用到的端口 9092,如下所示:

  • 开启防火墙,开放9092端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.3、centos7虚拟机3 (192.168.136.29)服务器安装步骤

4.3.1、在opt目录下创建module文件夹(如果没有创建的话)

  • 在opt目录下创建module文件夹 与 centos7虚拟机1 (192.168.136.27)服务器中kafka-3.0.0解压安装包的位置相同即可。

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

4.3.2、拷贝配置好的 kafka-3.0.0 到centos7虚拟机3(192.168.136.29)服务器

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的 kafka-3.0.0 到centos7虚拟机3 (192.168.136.29)服务器

    [root@localhost home]# scp -r /opt/module/kafka-3.0.0/ root@192.168.136.29:/opt/module/
    

    在这里插入图片描述

4.3.3、拷贝配置好的环境变量文件到centos7虚拟机3 (192.168.136.29)服务器并刷新环境变量

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的环境变量文件到centos7虚拟机3 (192.168.136.29)服务器

    [root@localhost home]# scp -r /etc/profile.d/my_env.sh root@192.168.136.29:/etc/profile.d/my_env.sh
    

    在这里插入图片描述

  • 在centos7虚拟机3 (192.168.136.29)服务器上刷新环境变量

    [root@localhost ~]# source /etc/profile
    

    在这里插入图片描述

4.3.4、修改配置文件/opt/module/kafka-3.0.0/config/server.properties中的内容

  • 在centos7虚拟机3 (192.168.136.29)服务器上修改改配置文件/opt/module/kafka-3.0.0/config/server.properties中的broker.id=2(注:broker.id 不得重复,整个集群中唯一

    broker.id=2
    

    在这里插入图片描述

  • 在centos7虚拟机3 (192.168.136.29)服务器上修改改配置文件/opt/module/kafka-3.0.0/config/server.properties中的端口指定的服务器ip。

    在这里插入图片描述

4.2.5、在Zookeeper根目录下创建/kafka-3.0.0文件夹

  • 在/opt/module/zookeeper-3.5.7目录下创建kafka-3.0.0文件夹,方便管理kafka

    [root@localhost kafka-3.0.0]# cd /opt/module/zookeeper-3.5.7
    [root@localhost zookeeper-3.5.7]# mkdir kafka-3.0.0
    

    在这里插入图片描述

4.3.6、在防火墙中打开要用到的端口 9092,如下所示:

  • 开启防火墙,开放9092端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.4、集群操作

4.4.1、首先,分别启动三台服务器的 Zookeeper服务

  • 启动三台服务器的 Zookeeper服务

    [root@localhost home]# sh zk.sh start
    

    在这里插入图片描述

4.4.2、分别启动三台服务器的Kafka服务

  • 启动centos7虚拟机1 (192.168.136.27)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-start.sh -daemon config/server.properties
    

    在这里插入图片描述

  • 启动centos7虚拟机2(192.168.136.28)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-start.sh -daemon config/server.properties
    

    在这里插入图片描述

  • 启动centos7虚拟机3(192.168.136.29)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-start.sh -daemon config/server.properties
    

    在这里插入图片描述

4.4.3、分别停止三台服务器的Kafka服务

  • 停止centos7虚拟机1 (192.168.136.27)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-stop.sh
    

    在这里插入图片描述

  • 停止centos7虚拟机2 (192.168.136.28)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-stop.sh
    

    在这里插入图片描述

  • 停止centos7虚拟机3 (192.168.136.29)服务器 的Kafka服务

    [root@localhost kafka-3.0.0]# cd /opt/module/kafka-3.0.0/
    [root@localhost kafka-3.0.0]# bin/kafka-server-stop.sh
    

    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/li1325169021/article/details/129804602
今日推荐