五,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进程则表明启动成功!

相关推荐
恩爸编程5 分钟前
探索 Nginx:Web 世界的幕后英雄
运维·nginx·nginx反向代理·nginx是什么·nginx静态资源服务器·nginx服务器·nginx解决哪些问题
Michaelwubo1 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客07131 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
马甲是掉不了一点的<.<1 小时前
本地电脑使用命令行上传文件至远程服务器
linux·scp·cmd·远程文件上传
jingyu飞鸟1 小时前
centos-stream9系统安装docker
linux·docker·centos
好像是个likun2 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
超爱吃士力架2 小时前
邀请逻辑
java·linux·后端
cominglately4 小时前
centos单机部署seata
linux·运维·centos
魏 无羡4 小时前
linux CentOS系统上卸载docker
linux·kubernetes·centos
CircleMouse4 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos