【Kafka】02 原生集群部署

 

基于大数据教程的环境:

192.168.101.11 centos7-01
192.168.101.12 centos7-02
192.168.101.13 centos7-03

搭建Kafka环境需要Zookeeper的前提:

https://www.cnblogs.com/mindzone/p/15468883.html

 

下载Kafka包

01 机器下载:
wget https://archive.apache.org/dist/kafka/2.1.1/kafka_2.11-2.1.1.tgz

 

解包到指定任意目录

tar -zxvf kafka_2.11-2.1.1.tgz -C /opt/module/

 

创建指定的kafka输出目录

# 创建日志目录(路径自定义)
mkdir -p /opt/module/kafka_2.11-2.1.1/logs

更改Kafka配置信息:

vim /opt/module/kafka_2.11-2.1.1/config/server.properties

参数项:

标黄的参数是需要更改的,其他参数基本是默认项,在源文件中就设定好了

#broker 的全局唯一编号,不能重复
broker.id=0
# 允许用户可以删除主题
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.dirslogs=/opt/module/kafka_2.11-2.1.1/logs
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
# 配置连接 Zookeeper 集群地址
zookeeper.connect

 

追加环境变量:

vim /etc/profile.d/my_env.sh

写profile里面也是可以的,这里是单独区分了文件写的

#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka_2.11-2.1.1
export PATH=$PATH:$KAFKA_HOME/bin

立即生效

source /etc/profile

 

将环境变量配置文件和kafka目录分发到其他机器上

xsync /etc/profile.d/my_env.sh
xsync /opt/module/kafka_2.11-2.1.1

# 无xsync脚本则用scp拷贝
scp /etc/profile.d/my_env.sh root@centos7-03:/etc/profile.d/
scp /etc/profile.d/my_env.sh root@centos7-04:/etc/profile.d/

scp /opt/module/kafka_2.11-2.1.1 root@centos7-03:/opt/module
scp /opt/module/kafka_2.11-2.1.1 root@centos7-04:/opt/module

 

然后更改其他机器上的kafka服务ID

#broker 的全局唯一编号,不能重复
broker.id=0

1号机默认0,2号机就改成1,3号机就改成2,总而言之服务的ID不能冲突

vim /opt/module/kafka_2.11-2.1.1/config/server.properties

 

集群启动Kafka

# 1 2 3 分别执行
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties

集群关闭Kafka

# 1 2 3 分别执行
$KAFKA_HOME/bin/kafka-server-stop.sh stop

检查Kafka是否正常运行,JPS命令

[root@centos7-04 ~]# jps
11128 Kafka
1861 HRegionServer
1526 NodeManager
1705 SecondaryNameNode
1774 QuorumPeerMain
11342 Jps

 

若只是部署单例只需要更改ZK的客户端即可,也不用管服务ID

# 配置连接 Zookeeper 集群地址,单例则写一个即可
zookeeper.connect

 

posted @ 2022-01-31 16:36  emdzz  阅读(51)  评论(0编辑  收藏  举报