(二十五)大数据实战——kafka集群及Kafka-Eagle控制台安装与部署

前言

本节内容我们主要介绍一下搭建kafka集群以及kafka集群的一个web客户端组件Kafka-Eagle的部署安装,使用的kafka版本是kafka_2.12-3.0.0。在搭建kafka集群之前,我们要预先搭建好zookeeper集群,这里作者默认zookeeper的集群环境已经搭建完成,可参考作者往期博客内容。新版本的kafka集群分为俩种搭建方式,一种依赖zookeeper,一种使用Kraft模式,本节内容我们主要介绍zookeeper模式的kafka集群搭建部署。

正文

①kafka高可用集群部署规划

hadoop101 hadoop102 hadoop103
zookeeper zookeeper zookeeper
kafka kafka kafka
Kafka-Eagle
[kafka高可用集群部署规划]

②上传kafka安装包到hadoop101服务器/opt/software目录

③解压kafka安装包到/opt/module目录

  • 命令:tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/module

④在/opt/module/kafka_2.12-3.0.0/config目录下修改kafka配置文件server.properties

  • server.properties 配置文件位置
  • 配置brokerid

    broker.id=0

  • 配置kafka数据存储目录,这里存储到kafka安装目录/opt/module/kafka_2.12-3.0.0/data下

    log.dirs=/opt/module/kafka_2.12-3.0.0/data

  • 配置zookeeper访问路径

    zookeeper.connect=hadoop101:2181,hadoop102:2181,hadoop103:2181/kafka

⑤分发kafka安装包到hadoop102和hadoop103服务器,并修改其brokerid配置

  • 分发kafka安装包
  • 修改hadoop102的server.properties 配置文件的brokerid
  • 修改hadoop103的server.properties 配置文件的brokerid

⑥配置kafka环境变量

  • 在hadoop101服务器/etc/profile.d/my_env.sh 文件中增加 kafka环境变量配置
  • 分发环境变量配置到hadoop102和hadoop103服务器
  • 使环境变量生效

⑦将kafak安装包授权给hadoop用户,使用root用户启动kafka可以跳过此步骤

  • 命令:

    sudo chown -R hadoop:hadoop /opt/module/kafka_2.12-3.0.0/

⑦使用hadoop用户启动zookeeper集群服务和kafak集群服务

  • 启动zookeeper集群
  • 启动kafka集群

    bin/kafka-server-start.sh -daemon config/server.properties

  • 查看日志,验证kafka集群是否已经启动成功

⑧使用脚本启停kafka集群

  • mykafka.sh集群启停脚本

    #! /bin/bash
    case 1 in "start"){ for i in hadoop101 hadoop102 hadoop103 do echo " --------启动 i Kafka-------"
    ssh i "/opt/module/kafka_2.12-3.0.0/bin/kafka-server-start.sh -daemon /opt/module/kafka_2.12-3.0.0/config/server.properties" done };; "status"){ for i in hadoop101 hadoop102 hadoop103 do echo =============== i ===============
    ssh i jps done };; "stop"){ for i in hadoop101 hadoop102 hadoop103 do echo " --------停止 i Kafka-------"
    ssh $i "/opt/module/kafka_2.12-3.0.0/bin/kafka-server-stop.sh "
    done
    };;
    esac

  • 在kafka的bin目录下创建mykafka.sh启停脚本

  • 测试脚本

⑨安装kafka客户端工具Kafka-Eagle监控

  • 上传Kafka-Eagle安装包到hadoop101服务器
  • 解压Kafka-Eagle安装包到/opt/module目录
  • 进入Kafka-Eagle安装目录,修改system-config.properties配置文件
  • 修改zookeeper连接地址

    efak.zk.cluster.alias=cluster1
    cluster1.zk.list=hadoop101:2181,hadoop102:2181,hadoop103:2181/kafka

  • 修改kafka offset storage的存储目录

    cluster1.efak.offset.storage=kafka

  • 修改数据库连接配置

    efak.driver=com.mysql.cj.jdbc.Driver
    efak.url=jdbc:mysql://hadoop101:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
    efak.username=root
    efak.password=root

  • 添加Kafka-Eagle监控环境变量配置
  • 修改kafka服务器启动参数
复制代码
export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
export JMX_PORT="9999"
  • 分发kafka-server-start.sh启动脚本
  • 重启kafka
  • 启动Kafka-Eagle
  • 访问Kafka-Eagle

结语

至此,关于kafka集群及Kafka-Eagle控制台安装与部署到这里就结束了,我们下期见。。。。。。

相关推荐
正在走向自律1 小时前
AI Agent 落地这一年:从“能跑起来”到“敢放出去”
大数据·人工智能·ai agent·智能体·mcp·a2a
freejackman2 小时前
【实战二】字段级血缘追踪:拆解 AST 迷局,精准穿透函数链与子查询
大数据·数据库·sql
goujunwe3 小时前
GEO 内容的“可摘录性”打磨技巧:段落、表格、小标题怎么写,方便大模型提取独立答案块
大数据·人工智能
小田学Python3 小时前
DeepSeek Harness 完整上手指南:安装部署 + 必装插件 + 用一周就回不去的功能
大数据·大模型·agent·ai工具·deepseek
成都蜀味缘餐饮技术培训学校7 小时前
手撕烤兔技术培训实战指南,秘制腌料配方比例与调制手法
大数据·经验分享·笔记·其他·微信公众平台
roman_日积跬步-终至千里7 小时前
AI 能让一个人成为团队吗?从数据中台到 OPC,重新理解软件工程能力
大数据·人工智能·软件工程
演艺大赏9 小时前
NiFi 数据流实战:FTP→HDFS 与 CSV→Parquet,附坏数据、漏文件与双写
大数据
数字新视界10 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
wafrdggh11 小时前
2026 商城小程序平台哪个价格合理?把跨境附加成本这个坑算透
大数据·小程序
山甫aa11 小时前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web