其他分享
首页 > 其他分享> > Kafka集群部署

Kafka集群部署

作者:互联网

文章目录

Kafka集群部署

1 准备

  1. zookeeper 集群(1 leader,1 follower,1 observer) https://blog.csdn.net/qq_27242695/article/details/120206741
  2. 虚拟机centos7: CentOS-7-x86_64-DVD-2009.iso
  3. kafka版本:kafka_2.13-2.7.0.tgz http://kafka.apache.org/downloads
  4. jdk 1.8 https://blog.csdn.net/qq_27242695/article/details/111386165
  5. 服务器三台:flink1,flink2,flink3(服务器配置别名,id)
  6. 三台服务器配置免登录系统
  7. 三台服务器配置文件传输脚本:xsync

2 集群部署

2.1 部署规划

服务器flink1flink2flink3
zookeeperzookeeperzookeeper(observer)
kafkakafkakafka

2.2 上传

上传操作略
在这里插入图片描述

2.3 解压

# 解压到指令目录
[develop@flink1 software]$ tar -zxvf kafka_2.13-2.7.0.tgz -C /opt/module/
[develop@flink1 software]$ ls /opt/module/
apache-zookeeper-3.5.9-bin  flink-1.10.0  jdk1.8.0_301  kafka_2.13-2.7.0

2.4 集群配置

2.4.1 文件配置

  1. 在pt/module/kafka_2.13-2.7.0下创建logs文件
mdkir /opt/module/kafka_2.13-2.7.0/logs
  1. 修改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.dirs=/opt/module/kafka/logs
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#配置连接 Zookeeper 集群地址
zookeeper.connect=flink1:2181,flink2:2181,flink3:2181
  1. 配置环境变量
    root 用户操作,/etc/profile.d/目录创建my_kafka.sh编辑
[root@flink1 profile.d]# vim my_kafka.sh
export KAFKA_HOME=/opt/module/kafka_2.13-2.7.0
export PATH=$PATH:$KAFKA_HOME/bin
[root@flink1 profile.d]# source /etc/profile
  1. 分发安装包
[develop@flink1 profile.d]$ xsync /opt/module/kafka_2.13-2.7.0/
  1. 分别在 flink2 和 flink3 上修改配置文件/opt/module/kafka_2.13-2.7.0/config/server.properties
    中的 broker.id=1、broker.id=2 注:broker.id 不得重复

2.4.2 编写集群启停脚本

/home/develop/bin目录下创建kafka-cluster.sh

#!/bin/bash  
if [ $# -lt 1 ]; then  
  echo "No Args Input..."  
  exit ; 
fi  
case $1 in 
"start")  
  echo " =================== 启动 kafka 集群 ==================="   
  for i in flink1 flink2 flink3
  do
    echo " ===================  $i ==================="   
        ssh $i "/opt/module/kafka_2.13-2.7.0/bin/kafka-server-start.sh -daemon /opt/module/kafka_2.13-2.7.0/config/server.properties"
  done
;; 
"stop")  
  echo " =================== 关闭 kafka 集群 ==================="   
  for i in flink1 flink2 flink3
   do
    echo " ===================  $i ==================="   
        ssh $i "/opt/module/kafka_2.13-2.7.0/bin/kafka-server-stop.sh"
  done  
;; 
*)  
echo "Input Args Error..." 
;; 
esac

2.4.3 启动关闭

# 启动
[develop@flink1 ~]$ kafka-cluster.sh start
# 关闭
[develop@flink1 ~]$ kafka-cluster.sh stop

在这里插入图片描述

标签:opt,部署,2.7,module,kafka,集群,Kafka,2.13,flink1
来源: https://blog.csdn.net/qq_27242695/article/details/121010254