kafka安装部署--详细教程

2.1 安装部署

每次进入 linux 都会自动进入 base 环境,如何关闭 base

conda deactivate  手动关闭
conda config --set auto_activate_base false  关闭自动进入

2.1.1 集群规划

bigdata01

bigdata02

bigdata03

zk

zk

zk

kafka

kafka

kafka

2.1.2 集群部署

0官方下载地址:http://kafka.apache.org/downloads.html

检查三台zk是否启动:

zkServer.sh start 默认启动方式

也可以使用脚本启动 zk.sh start

zk.sh脚本:

#!/bin/bash# 获取参数
COMMAND=$1
if [ ! $COMMAND ]; thenecho "please input your option in [start | stop | status]"exit -1
fi
if [ $COMMAND != "start" -a $COMMAND != "stop" -a $COMMAND != "status" ]; thenecho "please input your option in [start | stop | status]"exit -1
fi# 所有的服务器
HOSTS=( bigdata01 bigdata02 bigdata03 )
for HOST in ${HOSTS[*]}
dossh -T $HOST << TERMINATORecho "---------- $HOST ----------"zkServer.sh $COMMAND 2> /dev/null | grep -ivh SSLexit
TERMINATOR
done

编写完后,给脚本添加权限:

chmod 777 zk.sh

 

1解压安装包

 https://archive.apache.org/dist/kafka/3.0.0/kafka_2.12-3.0.0.tgz(官网下载)

kafka中 2.12 是scala语言的版本,3.0.0是kafka版本

tar -zxvf kafka_2.12-3.0.0.tgz -C /opt/installs/

2修改解压后的文件名称

 mv kafka_2.12-3.0.0/ kafka3版本号解读:2.12 是scala版本,3.0.0是kafka版本

3)进入到/opt/installs/kafka3 目录,修改配置文件

cd config/ 
vi server.properties
修改(需要修改)部分:#broker 的全局唯一编号,不能重复,只能是数字。broker.id=0(需要修改)#处理网络请求的线程数量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 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以配置多个磁盘路径,路径与路径之间可以用","分隔log.dirs=/opt/installs/kafka3/datas(需要修改)#topic 在当前 broker 上的分区个数num.partitions=1#用来恢复和清理 data 下数据的线程数量num.recovery.threads.per.data.dir=1# 每个 topic 创建时的副本数,默认时 1 个副本offsets.topic.replication.factor=1#segment 文件保留的最长时间,超时将被删除log.retention.hours=168#每个 segment 文件的大小,默认最大 1Glog.segment.bytes=1073741824# 检查过期数据的时间,默认 5 分钟检查一次是否数据过期log.retention.check.interval.ms=300000#配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理)zookeeper.connect=bigdata01:2181,bigdata02:2181,bigdata03:2181/kafka(需要修改)/kafka的意思是:在zk中创建一个文件夹叫做kafka

4分发安装包

xsync.sh kafka3/

scp /opt/installs/kafka3 root@bigdata02:/opt/installs

5)分别在 bigdata02 和 bigdata03上修改配置文件/opt/installs/kafka/config/server.properties 中的 broker.id=1、broker.id=2

注:broker.id 不得重复,整个集群中唯一。

6配置环境变量

(1)修改bigdata01的环境变量,增加如下内容:

#KAFKA_HOME export KAFKA_HOME=/opt/installs/kafka3
export PATH=$PATH:$KAFKA_HOME/bin分发一下:
xsync.sh /etc/profile

(2)刷新一下环境变量。

 xcall.sh source /etc/profile 

7启动集群

(1)先启动 Zookeeper 集群,然后启动 Kafka。 【如果启动过就跳过】

xcall.sh zkServer.sh start

(2)依次在 bigdata01、bigdata02、bigdata03 节点上启动 Kafka。

先进入到kafka3 这个文件夹中,在三台服务器上分别运行启动命令:
bin/kafka-server-start.sh -daemon config/server.properties

关闭集群 :

bin/kafka-server-stop.sh

2.1.3 集群启停脚本

1)在/usr/local/sbin 目录下创建文件 kf.sh 脚本文件

vim kf.sh

2) 编写脚本

#! /bin/bash
case $1 in
"start"){for i in bigdata01 bigdata02 bigdata03doecho " --------启动 $i Kafka-------"ssh $i "source /etc/profile; /opt/installs/kafka3/bin/kafka-server-start.sh -daemon /opt/installs/kafka3/config/server.properties"done
};;
"stop"){for i in bigdata01 bigdata02 bigdata03doecho " --------停止 $i Kafka-------"ssh $i "source /etc/profile; /opt/installs/kafka3/bin/kafka-server-stop.sh"done
};;
esac

3)添加权限

chmod u+x kf.sh如何使用:
kf.sh start
kf.sh stop

注意:停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper 集群。因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止, Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

工具进阶:如何利用 MAT 找到问题发生的根本原因

深入浅出 Java 虚拟机 作者&#xff1a; 李国 我们知道&#xff0c;在存储用户输入的密码时&#xff0c;会使用一些 hash 算法对密码进行加工&#xff0c;比如 SHA-1。这些信息同样不允许在日志输出里出现&#xff0c;必须做脱敏处理&#xff0c;但是对于一个拥有系统权限的攻击…

当AI遇上时尚:未来的衣橱会由机器人来打理吗?

内容概要 在当今这个快速发展的时代&#xff0c;人工智能与时尚的结合正在逐渐改写我们对衣橱管理的认知。传统的衣橱管理常常面临着空间不足、穿搭单调及库存过多等挑战&#xff0c;许多人在挑选服饰时难以做出决策。然而&#xff0c;随着技术的进步&#xff0c;智能推荐和自…

[OpenGL]使用OpenGL实现硬阴影效果

一、简介 本文介绍了如何使用OpenGL实现硬阴影效果&#xff0c;并在最后给出了全部的代码。本文基于[OpenGL]渲染Shadow Map&#xff0c;实现硬阴影的流程如下&#xff1a; 首先&#xff0c;以光源为视角&#xff0c;渲染场景的深度图&#xff0c;将light space中的深度图存储…

Kafka中如何做到数据唯一,即数据去重?

数据传递语义 至少一次&#xff08;At Least Once&#xff09; ACK级别设置为-1 分区副本大于等于2 ISR里应答的最小副本数量大于等于2 可以保障数据可靠 • 最多一次&#xff08;At Most Once&#xff09; ACK级别设置为0 • 总结&#xff1a; At Least Once可以保证数据不…

惊爆:抖音小程序广告掘金计划,游戏+广告双赢新趋势!

惊爆&#xff1a;抖音小程序广告掘金计划&#xff0c;游戏广告双赢新趋势&#xff01; 在当今信息爆炸的时代&#xff0c;抖音小程序广告掘金计划犹如一股清流&#xff0c;为游戏开发者、广告商以及广大用户带来了前所未有的机遇与财富。这一计划不仅融合了游戏的趣味性和广告的…

黑豹X2 armbian 编译rkmpp ffmpeg 实现CPU视频转码

硬件 arm64 4核cpu 4G内存 rk3566 1.编译rockmpp git clone https://gitee.com/hermanchen82/mpp.git 下载之后 进到 rkmpp\build\linux\aarch64目录 armbian的不需要做任何修改 直接执行 make-Makefiles.bash make && make install 编译完成后 会安装到…

《深度学习》YOLO V4 整体架构的由来及用法 详解

目录 一、关于YOLOv4 1、什么是YOLOv4 2、相较于YOLOv3 二、YOLO v4数据增强的做法 1、 Bag of freebies 2、关于数据增强 1&#xff09;概念 2&#xff09;种类 3、v4数据增强方法 1&#xff09;马赛克数据增强 • 由来 • 关于CutMix&#xff1a; 2&#xff09;…

【VR】PICO 手部追踪 steamvr内无法识别,依旧识别手柄的解决方案

一、问题描述 && 原因分析 1.PICO4 手部追踪 steamvr内无法识别&#xff0c;依旧识别手柄的解决方案 尽管平放&#xff08;或关闭手柄连接&#xff09;之后&#xff0c;在 PICO 一体机中进入了手部追踪状态&#xff0c; 但只要进入 steamvr&#xff0c;就无法正确识别…

Go 中的泛型,日常如何使用

泛型从 go 的 1.18 开始支持 什么是泛型编程 在泛型出现之前&#xff0c;如果需要计算两数之和&#xff0c;可能会这样写&#xff1a; func Add(a, b int) int {returb a b } 这个很简单&#xff0c;但是只能两个参数都是 int 类型的时候才能调用 如果想要计算两个浮点数…

年度目标5w浏览量达成

目录 前言&#xff1a;目标展示&#xff1a;达成展示&#xff1a; 前言&#xff1a; 去年定了一个目标&#xff0c;今年实现了&#xff0c;以后继续加油&#xff0c;争取2025可以获得15w的阅览量&#xff0c;3000的粉丝数量。 目标展示&#xff1a; 达成展示&#xff1a;

【Python TensorFlow】进阶指南(续篇一)

在前两篇文章中&#xff0c;我们介绍了TensorFlow的基础知识及其在实际应用中的初步使用&#xff0c;并探讨了更高级的功能和技术细节。本篇将继续深入探讨TensorFlow的高级应用&#xff0c;包括但不限于模型压缩、模型融合、迁移学习、强化学习等领域&#xff0c;帮助读者进一…

你不得不知的几种常见的向量数据库产品

产品介绍 在使用 LLM&#xff08;大型语言模型&#xff09;知识库时&#xff0c;经常会用到以下几种向量数据库&#xff1a; Milvus&#xff1a;这是一款开源的向量数据库&#xff0c;具有高度可扩展性和高性能。它支持多种向量相似性搜索算法&#xff0c;适用于大规模数据处理…

企业IT架构转型之道:阿里巴巴中台战略思想与架构实战感想

文章目录 第一章&#xff1a;数据库水平扩展第二章&#xff1a;中台战略第三章&#xff1a;阿里分布式服务架构HSF&#xff08;high speed Framework&#xff09;、早期Dubbo第四章&#xff1a;共享服务中心建设原则第五章&#xff1a;数据拆分实现数据库能力线性扩展第六章&am…

征程 6 工具链性能分析与优化 2|模型性能优化建议

01 引言 为了应对低、中、高阶智驾场景&#xff0c;以及当前 AI 模型在工业界的应用趋势&#xff0c;地平线推出了征程 6 系列芯片。 在软硬件架构方面&#xff0c;征程 6 不仅保持了对传统 CNN 网络的高效支持能力&#xff0c;还强化了对 Transformer 类型网络的支持&#xf…

字符编码和字符集

1. 字符编码和字符集 1.1. 字符编码 编码&#xff1a;字符 –>字节解码&#xff1a;字节 –>字符字符编码Character Encoding : 就是一套自然语言的字符与二进制数之间的对应规则。 1.2. 字符集 字符集 Charset&#xff1a;是一个系统支持的所有字符的集合&#xff0…

Kafka面试题解答(二)

1.怎么尽可能保证 Kafka 的可靠性 kafka是可能会出现数据丢失问题的&#xff0c;Leader维护了一个动态的in-sync replica set&#xff08;ISR&#xff09;&#xff0c;意为和 Leader保持同步的FollowerLeader集合(leader&#xff1a;0&#xff0c;isr:0,1,2)。 如果Follower长…

Chromium127编译指南 Linux篇 - 获取Chromium源码(四)

引言 在前一节中&#xff0c;我们成功配置了 depot_tools 并验证了开发环境的基本可用性。接下来&#xff0c;我们将着手于拉取和初始设置 Chromium 的源码&#xff0c;这是进行 Chromium 开发的首要步骤。通过有效的源码管理和版本控制&#xff0c;我们能更高效、流畅地进行开…

LINUX离线安装Milvus

一.下载安装包 离线安装Docker需要你提前下载Docker的安装包&#xff0c;并将其传输到目标机器上进行安装。以下是一个基于Linux系统的离线安装Docker的简要步骤和示例&#xff1a; 从有网络的机器上下载Docker安装包。 将下载的安装包拷贝到离线的服务器上。 在离线的服务…

【HGT】文献精讲:Heterogeneous Graph Transformer

【HGT】文献精讲&#xff1a;Heterogeneous Graph Transformer 标题&#xff1a; Heterogeneous Graph Transformer &#xff08;异构图Transformer&#xff09; 作者团队&#xff1a; 加利福尼亚大学Yizhou Sun 摘要&#xff1a; 近年来&#xff0c;图神经网络&#xff08;GN…

书客、柏曼、爱德华护眼台灯护眼效果怎么样?真实测评告诉你真相

现在的孩子学习压力很大&#xff0c;在学校课程已经塞满了大半天&#xff0c;课后的作业更是不少&#xff0c;空闲时间还需要去课后补习班的数不胜数。用眼的次数非常的高&#xff0c;眼睛很容易感到疲惫&#xff0c;这时候我们的护眼台灯大有作用&#xff0c;好的护眼台灯可以…