在Linux里搭建kafka集群

kafka集群的搭建

1、准备三台机器

192.168.100.100 node01
192.168.100.110	node02
192.168.100.120	node03

2、初始化环境

2.2.1、安装jdk、安装zookeeper
参见之前的jdk以及zk环境安装步骤

2.2.2、安装目录规划

安装包存放的目录:/export/softwares 
安装程序存放的目录:/export/servers 

三台机器执行以下命令创建统一文件目录

mkdir -p /export/servers 
mkdir -p /export/softwares 

2.2.3、安装用户
如果默认用户安装,即可跳过该步骤

安装hadoop,会创建一个hadoop用户
安装kafka,创建一个kafka用户
或者 创建bigdata用户,用来安装所有的大数据软件
本例:使用root用户来进行安装

2.2.4、验证环境
保证三台机器的zk服务都正常启动,且正常运行
查看zk的运行装填,保证有一台zk的服务状态为leader,且两台为follower即可

2.3、kafka集群安装

2.3.1、下载地址
通过以下地址进行下载安装包

http://archive.apache.org/dist/kafka/0.10.0.0/kafka_2.11-0.10.0.0.tgz

2.3.2、上传到linux服务器并解压
将下载好的安装包上传到node01服务器的/export/softwares路径下,然后进行解压
node01执行以下命令进行解压安装包

cd /export/softwares
tar -zxvf kafka_2.11-0.10.0.0.tgz -C /export/servers/

2.3.3、修改配置文件
node01执行以下命令进入到kafka的配置文件目录,修改配置文件
cd /export/servers/kafka_2.11-0.10.0.0/config
vim server.properties


broker.id=0
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/export/servers/kafka_2.11-0.10.0.0/logs
num.partitions=2
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.flush.interval.messages=10000
log.flush.interval.ms=1000
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=node01:2181,node02:2181,node03:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
delete.topic.enable=true
host.name=node01

node01执行以下命令创建数据文件存放目录

mkdir -p  /export/servers/kafka_2.11-0.10.0.0/logs

2.3.4、分发安装包
node01执行以下命令,将node01服务器的kafka安装包发送到node02和node03服务器上面去

cd /export/servers/
scp -r kafka_2.11-0.10.0.0/ node02:$PWD
scp -r kafka_2.11-0.10.0.0/ node03:$PWD

2.3.5、node02与node03服务器修改配置文件
node02与node03服务器修改kafka配置文件

node02使用以下命令修改kafka配置文件

cd /export/servers/kafka_2.11-0.10.0.0/config
vim server.properties
broker.id=1
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/export/servers/kafka_2.11-0.10.0.0/logs
num.partitions=2
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.flush.interval.messages=10000
log.flush.interval.ms=1000
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=node01:2181,node02:2181,node03:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
delete.topic.enable=true
host.name=node02

node03使用以下命令修改kafka配置文件

cd /export/servers/kafka_2.11-0.10.0.0/config
vim server.properties
broker.id=2
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/export/servers/kafka_2.11-0.10.0.0/logs
num.partitions=2
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.flush.interval.messages=10000
log.flush.interval.ms=1000
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=node01:2181,node02:2181,node03:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
delete.topic.enable=true
host.name=node03

2.4、启动集群

注意事项:在kafka启动前,一定要让zookeeper启动起来。
2.4.1、启动命令-前台启动
node01服务器执行以下命令来启动kafka集群

cd /export/servers/kafka_2.11-0.10.0.0
bin/kafka-server-start.sh config/server.properties

2.4.2、启动命令-后台启动
node01执行以下命令将kafka进程启动在后台

cd /export/servers/kafka_2.11-0.10.0.0
nohup bin/kafka-server-start.sh config/server.properties 2>&1 &

2.4.3、停止命令
node01执行以下命令便可以停止kakfa进程

cd /export/servers/kafka_2.11-0.10.0.0
bin/kafka-server-stop.sh

2.5、查看kafka启动进程

通过jps命令来查看进程是否存在

jps 

2276 QuorumPeerMain
2687 Jps#输入jps
3056 Kafka

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值