Kafka集群安装与部署

news2024/11/16 8:37:49

集群规划

准备工作

安装

安装包下载:链接:https://pan.baidu.com/s/1BtSiaf1ptLKdJiA36CyxJg?pwd=6666

Kafka安装与配置

1、上传并解压安装包

tar -zxvf kafka_2.12-3.3.1.tgz -C /opt/moudle/

2、修改解压后的文件名称

mv kafka_2.12-3.3.1/ kafka

 

3、进入到/opt/module/kafka目录,修改配置文件

cd /opt/moudle/kafka/config/

vim server.properties

输入以下内容:

#broker的全局唯一编号,不能重复,只能是数字。
broker.id=0

#broker对外暴露的IP和端口 (每个节点单独配置)
advertised.listeners=PLAINTEXT://hadoop102:9092
#处理网络请求的线程数量
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/moudle/kafka/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文件的大小,默认最大1G
log.segment.bytes=1073741824
# 检查过期数据的时间,默认5分钟检查一次是否数据过期
log.retention.check.interval.ms=300000
#配置连接Zookeeper集群地址(在zk根目录下创建/kafka,方便管理)
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka

4、分发安装包

xsync kafka/

5、分别在hadoop103和hadoop104上修改配置文件

/opt/module/kafka/config/server.properties中的broker.idadvertised.listeners

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

[root@hadoop103 module]$ vim kafka/config/server.properties

修改:

# The id of the broker. This must be set to a unique integer for each broker.

broker.id=1

#broker对外暴露的IP和端口 (每个节点单独配置)

advertised.listeners=PLAINTEXT://hadoop103:9092

[root@hadoop104 module]$ vim kafka/config/server.properties

修改:

# The id of the broker. This must be set to a unique integer for each broker.

broker.id=2

#broker对外暴露的IP和端口 (每个节点单独配置)

advertised.listeners=PLAINTEXT://hadoop104:9092

6、配置环境变量

(1)在/etc/profile.d/my_env.sh文件中增加kafka环境变量配置

vim /etc/profile.d/my_env.sh

增加如下内容

#KAFKA_HOME
export KAFKA_HOME=/opt/moudle/kafka
export PATH=$PATH:$KAFKA_HOME/bin

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

source /etc/profile

(3)分发环境变量文件到其他节点,并source。

[root@hadoop102 moudle]$ sudo /home/user/bin/xsync /etc/profile.d/my_env.sh

[root@hadoop103 moudle]$ source /etc/profile

[root@hadoop104 moudle]$ source /etc/profile

7、启动集群

(1)先启动Zookeeper集群,然后启动Kafka。

在Hadoop102上执行

zk.sh start

(2)依次在hadoop102、hadoop103、hadoop104节点上启动Kafka。

进入/opt/moudle/kafka

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

注意:配置文件的路径要能够到server.properties

 (3)查看进程

xcall jps

8、关闭集群

(1)依次在hadoop102、hadoop103、hadoop104节点上停止Kafka。

/opt/moudle/kafka

bin/kafka-server-stop.sh

(2)查看进程

xcall jps

集群启停脚本

1)在/home/user/bin目录下创建文件kf.sh脚本文件
 

cd /home/user/bin

vim kf.sh

脚本如下:

#! /bin/bash

case $1 in
"start"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------启动 $i Kafka-------"
        ssh $i "/opt/moudle/kafka/bin/kafka-server-start.sh -daemon /opt/moudle/kafka/config/server.properties"
    done
};;
"stop"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------停止 $i Kafka-------"
        ssh $i "/opt/moudle/kafka/bin/kafka-server-stop.sh "
    done
};;
esac

2)添加执行权限

chmod +x kf.sh

3)启动集群命令

kf.sh start

4)停止集群命令

kf.sh stop

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

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

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

相关文章

华为数通方向HCIP-DataCom H12-821题库(单选题:461-480)

第461题 以下关于路由策略特点的描述,错误的是哪一项? A、能够修改路由属性,但是不能改变网络流量经过的路径 B、能通过控制路由器的路由表规模,来节约系统资源 C、能通过控制路由的接收、发布和引入,以提高网络的安全性 D、能通过修改路由属性,对网络数据流量可以合理规…

【计算机网络】进程通信

进程 process 客户和服务器进程 下载文件表示为客户 ,上载文件的对等方表示为服务器进程与计算机网络之间的接口 套接字 socket 应用层与传输层之间的接口是建立网络应用程序的可编程接口 API进程寻址 为了标识接收进程 需要两种信息 主机的地址目的主机中的接收进程…

【C++】多态语法概念

目录 一、概念及定义二、虚函数重写的特例三、final和override四、抽象类 一、概念及定义 概念:在继承关系下的不同类,调用同一个函数,产生不同的行为,叫作多态。 图示: 定义:必须通过基类的指针或者引…

fast.ai 深度学习笔记(七)

深度学习 2:第 2 部分第 14 课 原文:medium.com/hiromi_suenaga/deep-learning-2-part-2-lesson-14-e0d23c7a0add 译者:飞龙 协议:CC BY-NC-SA 4.0 来自 fast.ai 课程的个人笔记。随着我继续复习课程以“真正”理解它,…

C++对象继承

继承概念: 首先引入一个生活例子,普通人是一个类对象,学生是一个类对象,普通人拥有的属性学生一定会有,学生拥有的属性普通人不一定有。类比一下,把普通人抽象为A对象,学生抽象为B对象&#xf…

多视图特征学习 Multi-view Feature Learning既可以被看作是一种学习框架,也可以被看作是一种具体的学习算法!

Multi-view Feature Learning 1.多视图特征学习Multi-view Feature Learning的基本介绍总结 1.多视图特征学习Multi-view Feature Learning的基本介绍 多视图特征学习是一种利用多视图数据集来进行联合学习的机器学习方法。多视图数据指的是对同一事物从多种不同的途径或角度进…

Python : 使用python实现学生管理系统的功能,详细注释

一、学生管理系统 学生描述:姓名、年龄、成绩 学生管理系统功能:添加学生信息、删除学生信息、根据姓名修改学生信息、根据姓名查询学生信息、显示所有学生信息、退出系统 二、代码说明 1. 将每一个学生的信息放一个元组中,再把元组添加到列表…

LeetCode 144 二叉树的前序遍历

大家新年快乐,long年大吉 今天的题很简单,前序用栈就行。 电脑没拿,用我妈的pad艰难敲代码,敲字 知识点随便写点吧,这里基础点挺多,以后补充下 栈:先进后出,数据结构用stack&…

C#实现矩阵乘法

目录 一、使用的方法 1.矩阵 2.矩阵的乘法原理 二、实例 1.源码 2.生成效果 一、使用的方法 矩阵相当于一个数组,主要用来存储一系列数,例如,mn矩阵是排列在m行和n列中的一系列数,mn矩阵可与一个np矩阵相乘,结果…

C语言笔试题之实现C库函数 pow()(递归的思想)

实例要求: 1、请你实现C库函数 pow()(stdio.h & math.h) ,即计算 x 的整数 n 次幂函数(即x^n );2、函数声明:double myPow(double x, int n);参数:1、x …

城市合伙人计划:资源共享、知识交流、合作创新

城市合伙人计划是一种合作伙伴关系,旨在通过共享资源、知识和经验,共同推动城市的经济发展和社会进步。这种计划通常涉及市政府、企业、社会组织和个人等多个方面,通过合作共同解决城市面临的问题和挑战。 城市合伙人计划的具体形式和内容可…

【java】Hibernate访问数据库

一、Hibernate访问数据库案例 Hibernate 是一个在 Java 社区广泛使用的对象关系映射(ORM)工具。它简化了 Java 应用程序中数据库操作的复杂性,并提供了一个框架,用于将对象模型数据映射到传统的关系型数据库。下面是一个简单的使…

洛谷p4391 无限传输

考察字符串周期的题 题目链接 结论 要求字串 s s s的最短循环字串长就是: a n s n − p m t [ n ] ansn-pmt[n] ansn−pmt[n] 证明如下: 这是最大的前缀和后缀 现在我们做如下操作: 补全字段 a a a和字段 b b b,按子段 a a a的…

阿里(淘天)一面笔试算法原题

阿里撤资 "车来了" 近日,国内实时公交产品"车来了"关联公司武汉元光科技有限公司发生工商变更,阿里巴巴(中国)网络技术有限公司退出股东行列。 这很好理解,符合近期阿里收缩战线的行为一致性。 毕…

vue-生命周期+工程化开发(三)

生命周期 Vue 生命周期 和 生命周期的四个阶段 思考: 什么时候可以发送初始化渲染请求?(越早越好)什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期:一个Vue实例从 创建…

【新书推荐】7.4节 寄存器间接和相对寻址方式

本节内容:当指令操作数为内存操作数,且内存操作数的地址使用指针寄存器表示时,称为寄存器间接寻址方式。 ■寄存器间接寻址方式:在地址表达式中,只能使用BX、SI、DI、BP四个指针寄存器用来寻址。 7.4.1 寄存器间接寻…

手把手教你开发Python桌面应用-PyQt6图书管理系统-图书信息维护模块UI设计实现

锋哥原创的PyQt6图书管理系统视频教程: PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~_哔哩哔哩_bilibiliPyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~共计24条视频&…

动态水印怎么加 怎么去除动态水印 视频剪辑软件 会声会影安激活序列号 会声会影怎么剪辑视频

为了防止白嫖或者增加美观效果,视频制作者可能会采用动态水印的方式,让其他人难以盗取视频使用。动态水印的添加,需要应用到运动路径功能。接下来,本文会教大家动态水印怎么加,怎么去除动态水印的相关内容。感兴趣的小…

力扣 第 383 场周赛 解题报告 | KMP

力扣 第 383 场周赛 解题报告 | KMP 链接 前言 一个人能走的多远不在于他在顺境时能走的多快,而在于他在逆境时多久能找到曾经的自己。 T1 修改矩阵 思路:模拟 时间复杂度: O ( m n ) O(mn) O(mn) class Solution:def modifiedMatrix(se…

一招搞定!Windows 右键秒建 Markdown 文件

创建Markdown文件(拓展名为.md)在Windows 10操作系统中并非内置功能。以下是一篇博客教程,指导用户如何实现在Windows 10中通过右键菜单新建Markdown文件的过程。 如何在Windows 10中通过右键菜单新建Markdown文件 Markdown是一种轻量级标记…