基于ZooKeeper的Kafka分布式集群搭建与集群启动停止Shell脚本

下载Kafka压缩包

下方是Kafka官网下载地址,本文使用Kafka 3.0.0在虚拟机环境中搭建分布式集群。
Apache Kafka Downloads link
虽然在Kafka 2.8.0之后可以使用KRaft模式搭建高可用的集群以提高数据处理效率,但是目前还有许多企业依然使用ZooKeeper搭建Kafka集群,所以本文也采用ZooKeeper组件来搭建Kafka分布式集群。
Kafka-3.0.0

基于ZooKeeper的Kafka高可用集群

本文使用三台CentOS7虚拟机分别搭建三个broker节点的Kafka集群。以broker ID为0的节点为例,下方是该节点配置Kafka的具体步骤,另外两个broker节点的配置步骤与其一致。

  1. 解压kafka_2.12-3.0.0.tgz压缩包
tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/module/
  1. 重命名文件夹名称(可选),注意后面的配置文件也需要根据该名称进行修改。
cd /opt/module
mv kafka_2.12-3.0.0 kafka
  1. 修改/opt/module/kafka/config/server.properties配置文件中最基础的参数配置:第一个是broker节点ID,第二个是topic数据存储路径。
vim server.propertiesbroker.id=0
log.dirs=/opt/module/kafka/datas
  1. 修改环境变量。
sudo vim /etc/profile.d/my_env.sh#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin
  1. 使用source命令刷新环境变量。
source /etc/profile

启动Kafka集群

  1. 启动ZooKeeper。在先前的博客中已介绍过ZooKeeper组件集群的搭建配置方式,并自定义了ZooKeepr集群启动脚本。所以本文直接使用该集群启动脚本zk.sh启动ZooKeeper。其中hadoop102 103 104为三个broker节点的域名。
[hadoop@hadoop102 bin]$ cat zk
#!/bin/bashcase $1 in
"start"){for host in hadoop102 hadoop103 hadoop104doecho ------------ zookeeper $host 启动 ---------------ssh $host "/opt/module/zookeeper-3.5.9/bin/zkServer.sh start"done
}
;;
"stop"){for host in hadoop102 hadoop103 hadoop104doecho ------------ zookeeper $host 停止 --------------- ssh $host "/opt/module/zookeeper-3.5.9/bin/zkServer.sh stop"done
}
;;
"status"){for host in hadoop102 hadoop103 hadoop104doecho ------------ zookeeper $host 状态 --------------- ssh $host "/opt/module/zookeeper-3.5.9/bin/zkServer.sh status"done}
;;
*) echo Not exist the instruction
;;
esac
[hadoop@hadoop102 bin]$ ./zk start
  1. 启动Kafka集群。本文也针对Kafka集群定义了集群启动与停止Shell脚本,所以直接使用该脚本kf.sh启动Kafka集群即可。注意:必须先启动ZooKeeper再启动Kafka集群;在停止集群运行的时候,需要先停止Kafka集群,再停止ZooKeeper服务。
[hadoop@hadoop102 bin]$ cat kf
#!/bin/bashcase $1 in
"start")for i in hadoop102 hadoop103 hadoop104doecho "-- start $i kafka --"ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"done
;;
"stop")for i in hadoop102 hadoop103 hadoop104doecho "-- stop $i kafka --"ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh"done
;;
esac
[hadoop@hadoop102 bin]$ ./kf start

Kafka集群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/299241.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uni-app如何实现高性能

这篇文章主要讲解uni-app如何实现高性能的问题? 什么是uni-app? 简单说一下什么是uni-app,uni-app是继承自vue.js,对vue做了轻度定制,并且实现了完整的组件化开发,并且支持多端发布的一种架构&#xff0c…

申请SSL证书

有很多方法可以确保您的网站安全。添加SSL证书可针对恶意攻击提供额外且关键的保护层。 即使网站不接受交易,您仍然需要保护用户的登录详细信息、地址和其他个人信息。 没有SSL证书的网站使用HTTP(一种基于文本的协议),这意味着…

红队攻防之PowerShell基础免杀(二)

Get busy living or get busy dying 什么是图片免杀? 答:一般情况下,某些 AV 对图像未执行检测处理。这种情况下,它们可以仅使用有效负载数据来生成新图像,或将有效负载嵌入到现有图像的最低有效字节中,使…

泰坦尼克号幸存者数据分析

泰坦尼克号幸存者数据分析 1、泰坦尼克号数据集2、数据集加载与概览3、泰坦尼克号幸存者数据分析4、哪些人可能成为幸存者? 1、泰坦尼克号数据集 泰坦尼克号的沉没是世界上最严重的海难事故之一,造成了大量的人员伤亡。这是一艘号称当时世界上最大的邮轮…

linux基础8:文件系统

linux基础8:文件系统 1.物理存储->逻辑存储:1.从磁盘到分区:1.基本物理结构2.物理存储结构3.逻辑结构4.操作系统的Io需求:5.分区操作and分组操作: 2.文件系统结构:1.基本结构:2.分组区块&…

【cpp】快速排序优化

标题:【cpp】快速排序 水墨不写bug 正文开始: 快速排序的局限性: 虽然快速排序是一种高效的排序算法,但也存在一些局限性: 最坏情况下的时间复杂度:如果选择的基准元素不合适,或者数组中存在大…

插入代码---四

文章目录 在空白节插入代码构造恶意代码计算函数相对地址修改入口地址返回原地址 扩大节新增节 对与一个程序我们需要在里面添加自己的功能,让程序增加一些我们的函数,那么我们就需要了解PE文件结构,然后对其进行修改,这里我们将基…

位运算-191. 位1的个数- 136. 只出现一次的数字

位1的个数 已解答 简单 相关标签 相关企业 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中 设置位 的个数(也被称为汉明重量)。 示例 1: 输入:n 11 输…

SpringBoot+ECharts+Html 地图案例详解

1. 技术点 SpringBoot、MyBatis、thymeleaf、MySQL、ECharts 等 此案例使用的地图是在ECharts社区中查找的:makeapie echarts社区图表可视化案例 2. 准备条件 在mysql中创建数据库echartsdb,数据库中创建表t_location_count表,表中设置两个…

能耗监测管理系统与技术方案

能耗监测管理系统是目前能源管理中重要的技术手段,它通过集成现代监测技术和信息技术,实现对能源消耗的实时监控、数据分析和决策支持,帮助企业或机构实现能源的高效管理和节能降耗。本篇文章将从能耗监测管理系统的组成、关键技术、应用领域…

ubuntu-server部署hive-part1-安装jdk

参照 https://blog.csdn.net/qq_41946216/article/details/134345137 操作系统版本:ubuntu-server-22.04.3 虚拟机:virtualbox7.0 安装jdk 上传解压 以root用户,将jdk上传至/opt目录下 tar zxvf jdk-8u271-linux-x64.tar.gz 配置环境变量…

嵌入式Qt QGridLayout网格布局管理器

一.QGridLayout网格布局管理器 //以行为单位 设置比例系数 void QGridLayout::setRowStretch ( int row, int stretch ) //以列为单位 设置比例系数 void QGridLayout::setColumnStretch ( int column, int stretch ) 实验: Widget.h: #ifndef _WIDGE…

Redis安装说明

Redis安装说明 大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包。因此课程中我们会基于Linux系统来安装Redis. 此处选择的Linux版本为CentOS 7. Redis的官方网站地址:https://redis.io/ 1.单机安装Redis 1.1.…

2024.4.3-[作业记录]-day08-CSS 盒子模型(溢出显示、伪元素)

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 作业 2024.4.3-学习笔记css溢出显示单行文本溢出显示省略号多行文本溢出显示省…

【css】使用display:inline-block后,元素间存在4px的间隔

问题:在本地项目中使用【display: inline-block】,元素间存在4px间隔。打包后发布到外网又不存在这个问题了。 归根结底这是一个西文排版的问题,英文有空格作为词分界,而中文则没有。 此时的元素具有文本属性,只要标签…

电商技术揭秘七:搜索引擎中的SEO关键词策略与内容优化技术

文章目录 引言一、关键词策略1.1 关键词研究与选择1. 确定目标受众2. 使用关键词研究工具3. 分析搜索量和竞争程度4. 考虑长尾关键词5. 关键词的商业意图6. 创建关键词列表7. 持续监控和调整 1.2 关键词布局与密度1. 关键词自然分布2. 标题标签的使用3. 首次段落的重要性4. 关键…

Linux第4课 Linux的基本操作

文章目录 Linux第4课 Linux的基本操作一、图形界面介绍二、终端界面介绍 Linux第4课 Linux的基本操作 一、图形界面介绍 本节以Ubuntu系统的GUI为例进行说明,Linux其他版本可自行网搜。 图形系统进入后,左侧黄框内为菜单栏,右侧为桌面&…

C++进阶--C++11(2)

C11第一篇 C11是C编程语言的一个版本,于2011年发布。C11引入了许多新特性,为C语言提供了更强大和更现代化的编程能力。 可变参数模板 在C11中,可变参数模板可以定义接受任意数量和类型参数的函数模板或类模板。它可以表示0到任意个数&…

C++之类和对象(上)

目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1访问限定符 4.2 类的两种定义方式 第一种: 第二种: 4.3封装 5.类的实例化 6.类对象模型 1.面向过程和面向对象初步认识 C语言是面向过程的,…

【Claude 3】This organization has been disabled.此组织已被禁用。(Claude无法对话的原因和解决办法)

Claude对话提示 This organization has been disabled.此组织已被禁用。 This organization has been disabled.此组织已被禁用。 This organization has been disabled.此组织已被禁用。 问题截图 问题原因 出现该页面,表示您的账户已经无法使用,可能…