当前位置: 首页 > article >正文

五,Linux基础环境搭建(CentOS7)- 安装Kafka

Linux基础环境搭建(CentOS7)- 安装Kafka

大家注意以下的环境搭建版本号,如果版本不匹配有可能出现问题!


一、Kafka下载及安装

Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。

在这里插入图片描述
Kafka的下载

kafka下载链接:https://pan.baidu.com/s/1MykjKEqhqei1dgOAL2I_lg

提取码:4ohb

将下载的安装包通过Xftp传输到Linux虚拟机/opt/software/中

Kafka的安装

创建工作路径/usr/kafka,下载kafka安装包到/opt/software中,然后解压至工作路径。

mkdir /usr/kafka		#创建工作路径
cd /opt/software		#进入安装包的文件夹
tar -zxvf kafka_2.11-0.11.0.0.tgz -C /usr/kafka		#解压kafka

二、配置Kafka组件

1.server.properties

首先创建一个log文件夹存放日志文件,然后修改server.properties配置文件

mkdir /usr/kafka/kafka_2.11-0.11.0.0/logs
vim /usr/kafka/kafka_2.11-0.11.0.0/config/server.properties

修改如下:

#broker的全局唯一编号,不能重复
broker.id=0		#需要操作,每台机器id号不一样
#删除topic的功能使能
delete.topic.enable=true	#需要操作
#处理网络请求的线程数量
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运行日志存放的路径
log.dirs=/usr/kafka/kafka_2.11-0.11.0.0/logs		#需要操作
#topic在当前broker上的分区个数
num.partitions=1
#用来恢复和清理data下数量的线程数量
num.recovery.threads.per.data.dir=1
#segment文件保留的最长时间,超过将被删除
log.retention.hours=168
#配置zookeeper集群地址
zookeeper.connect=master:2181,slave1:2181,slave2:2181		#需要操作

三、配置Kafka环境变量

vim /etc/profile

在这里插入图片描述
export KAFKA_HOME=/usr/kafka/kafka_2.11-0.11.0.0/
export PATH=$PATH:$KAFKA_HOME/bin

主节点生效环境变量

source /etc/profile

四、同步其他虚拟机

scp -r /etc/profile root@slave1:/etc/profile	#将环境变量profile文件分发到slave1节点
scp -r /etc/profile root@slave2:/etc/profile	#将环境变量profile文件分发到slave2节点
scp -r /usr/kafka root@slave1:/usr/kafka		#将kafka文件分发到slave1节点
scp -r /usr/kafka root@slave2:/usr/kafka		#将kafka文件分发到slave1节点

生效两个从节点的环境变量

source /etc/profile		#slave1和slave2都要执行

修改两个从节点的server.properties文件

master的broker.id为0,slave1的broker.id为1,slave2的broker.id为2(确保三台服务器的broke.id不同)

vim /usr/kafka/kafka_2.11-0.11.0.0/config/server.properties

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

五、启动\停止Kafka(三台机器)

先启动Zookeeper(三台机器)

由于kafka工作依赖于zookeeper,因此得先启动zookeeper,再启动kafka

cd /usr/zookeeper/zookeeper-3.4.10		#先进入zookeeper的目录
bin/zkServer.sh start		#三台机器启动zookeeper
bin/zkServer.sh status		#查看启动状态

master 在这里插入图片描述 slave1 在这里插入图片描述 slave2

在这里插入图片描述 通过上面状态查询结果可见,一个节点是Leader,其余的结点是Follower(Leader不一定是主节点,系统随机分配的),即zookeeper启动成功!

启动Kafka
/usr/kafka/kafka_2.11-0.11.0.0/bin/kafka-server-start.sh -daemon /usr/kafka/kafka_2.11-0.11.0.0/config/server.properties

停止Kafka
/usr/kafka/kafka_2.11-0.11.0.0/bin/kafka-server-stop.sh /usr/kafka/kafka_2.11-0.11.0.0/config/server.properties

查看进程

master 在这里插入图片描述

slave1 在这里插入图片描述

slave2 在这里插入图片描述

如果三台机器启动后,三台机器jps查看进程,均有Kafka进程则表明启动成功!


http://www.kler.cn/news/366482.html

相关文章:

  • WORFBENCH:一个创新的评估基准,目的是全面测试大型语言模型在生成复杂工作流 方面的性能。
  • Midjourney上线图像编辑,他们终于知道什么叫开放了。
  • FFMPEG+Qt 实时显示本机USB摄像头1080p画面以及同步录制mp4视频
  • transforms的使用
  • 内置数据类型、变量名、字符串、数字及其运算、数字的处理、类型转换
  • arcgis中dem转模型导入3dmax
  • 【排序】4.插入排序(含优化)
  • TPLCM柔性屏自动化贴合应用
  • 算法打卡 Day43(动态规划)-背包问题 + 分割等和子集
  • 查看Chrome安装路
  • IDEA项目代码报红,但可以正常编译运行
  • #HarmonyOS:页面和自定义组件生命周期
  • 一站式AI自动化剪辑 内置多种功能 永久免费
  • UI自动化测试实战
  • 使用docker build自制flink镜像供k8s使用
  • 7. 配置
  • 用更多的钱买电脑而不是手机
  • 【pytest学习】pytest.main()
  • 数据库的CURD【MySql】
  • HttpContext模块 --- http上下文模块
  • 从零学习大模型(五)-----提示学习(Prompt Engineering)
  • 【C++融会贯通】多态
  • python爬虫实战案例——抓取B站视频,不同清晰度抓取,实现音视频合并,超详细!(内含完整代码)
  • 功能自动化测试工具Appium使用步骤讲解
  • 分类预测 | WOA-LightGBM基于鲸鱼算法优化轻量级梯度提升机算法数据分类预测Matlab程序
  • 安装OpenResty