kafka集群安装

kafka集群安装

文档

  1. kafka单机安装

下载地址

  1. 官网:https://kafka.apache.org/
  2. 最新版本下载页面:https://kafka.apache.org/downloads

说明

  1. 版本选择:3.0.0,kafka_2.12-3.0.0.tgz
  2. 下载地址:https://archive.apache.org/dist/kafka/3.0.0/kafka_2.12-3.0.0.tgz
  3. 先安装单机版,参考kafka单机安装 ,然后调整配置文件,即可转为集群安装

安装前准备

  1. 安装环境:linux,centos7
  2. 安装java环境,参考:linux安装java -centos安装java -linux配置java环境变量
  3. 安装zookeeper集群,参考:zookeeper集群安装

集群安装

  1. 在三台服务器上安装3个kafka服务,组成集群,先在一台服务器上安装好,然后复制到另外两台服务器上,修改配置即可

  2. 安装单机版,参考kafka单机安装

  3. 配置服务器编号

    在单机版安装中,已经在配置文件config/server.properties中,设置了broker.id属性的值

    properties 复制代码
    broker.id=0

    broker.id是唯一标识,集群内不能重复,在3台服务器上,分别将broker.id的值设置为012

  4. 如果单机版启动过,可以删除数据

    1. 删除kafka根目录的datas文件夹
    2. 删除zookeeper集群的kafka节点
  5. 注意事项

    1. 将服务器编号broker.id设置为不同的值

关闭防火墙

​ 如果存在防火墙,应保证服务之间正常通信,可以先关闭防火墙

  1. 查看防火墙状态

    shell 复制代码
    systemctl status firewalld
  2. 关闭防火墙

    shell 复制代码
    systemctl stop firewalld

启动kafka服务端

  1. 先启动zookeeper集群,在每个服务器中,分别启动zookeeper

    shell 复制代码
    cd /opt/module/zookeeper-3.5.7/bin
    ./zkServer.sh start

    安装zookeeper集群,参考:zookeeper集群安装

  2. 启动kafka

    shell 复制代码
    cd /opt/module/kafka/bin
    ./kafka-server-start.sh -daemon ../config/server.properties

    启动kafka需要指定配置文件

  3. 停止kafka

    shell 复制代码
    cd /opt/module/kafka/bin
    ./kafka-server-stop.sh

    注意:先停止kafka,再停止zookeeper

zookeeper集群启动停止脚本

  1. 使用集群启动脚本,可一键启动集群中的所有服务

  2. 注意事项

    • 脚本中连接其它服务器未使用密码,所有应提前设置ssh免密登录
    • ssh远程登录可能会出现找不到JAVA_HOME的问题,可以将java的配置信息配置到/etc/bashrc
  3. 具体脚本内容

    脚本名称:kafka.sh

    shell 复制代码
    #!/bin/bash
    
    case $1 in
    "start"){
    	for i in root@192.168.145.132 root@192.168.145.133 root@192.168.145.134
    	do
    		# 提前设置免密登录
    		echo ------ 启动 $i kafka ------
    		ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
    	done
    }
    ;;
    "stop"){
    	for i in root@192.168.145.132 root@192.168.145.133 root@192.168.145.134
    	do
    		# 提前设置免密登录
    		echo ------ 停止 $i kafka ------
    		ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"
    	done
    }
    ;;
    esac
  4. 启动kafka集群各个节点

    shell 复制代码
    ./kafka.sh start
  5. 关闭kafka集群各个节点

    复制代码
    ./kafka.sh stop

参考资料

  • 尚硅谷
相关推荐
数据与后端架构提升之路4 小时前
Seata 全景拆解:AT、TCC、Saga 该怎么选?告别“一把梭”的架构误区
分布式·架构
蓝眸少年CY9 小时前
什么是Hadoop
大数据·hadoop·分布式
不做码农好多年,该何去何从。9 小时前
zookeeper是什么可以做什么?
分布式·zookeeper·云原生
talle202113 小时前
Spark分布式计算框架介绍
大数据·分布式·spark·rdd
【赫兹威客】浩哥14 小时前
【赫兹威客】Hadoop完全分布式克隆文件部署教程
大数据·hadoop·分布式
编程彩机14 小时前
互联网大厂Java面试:从Spring Boot到分布式缓存的技术场景解析
java·redis·分布式·缓存·大厂面试·技术解析·sprint boot
蓝眸少年CY16 小时前
(第十三篇)spring cloud之Sleuth分布式链路跟踪
分布式·spring·spring cloud
德彪稳坐倒骑驴17 小时前
Spark面试准备
大数据·分布式·spark
小北方城市网17 小时前
Spring Cloud Gateway 生产级实践:高可用架构、灰度发布与故障排查
spring boot·redis·分布式·缓存·架构·wpf
奥特曼_ it17 小时前
【Spark+Hadoop】基于spark+hadoop游戏评论数据分析可视化大屏(完整系统源码+数据库+开发笔记+详细部署教程+虚拟机分布式启动教程)✅
hadoop·分布式·spark