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
    

参考资料

  • 尚硅谷
相关推荐
Data跳动1 小时前
Spark内存都消耗在哪里了?
大数据·分布式·spark
Java程序之猿2 小时前
微服务分布式(一、项目初始化)
分布式·微服务·架构
来一杯龙舌兰3 小时前
【RabbitMQ】RabbitMQ保证消息不丢失的N种策略的思想总结
分布式·rabbitmq·ruby·持久化·ack·消息确认
节点。csn5 小时前
Hadoop yarn安装
大数据·hadoop·分布式
saynaihe6 小时前
安全地使用 Docker 和 Systemctl 部署 Kafka 的综合指南
运维·安全·docker·容器·kafka
NiNg_1_2346 小时前
基于Hadoop的数据清洗
大数据·hadoop·分布式
隔着天花板看星星7 小时前
Spark-Streaming集成Kafka
大数据·分布式·中间件·spark·kafka
技术路上的苦行僧12 小时前
分布式专题(8)之MongoDB存储原理&多文档事务详解
数据库·分布式·mongodb
龙哥·三年风水12 小时前
workman服务端开发模式-应用开发-后端api推送修改二
分布式·gateway·php
小小工匠12 小时前
分布式协同 - 分布式事务_2PC & 3PC解决方案
分布式·分布式事务·2pc·3pc