在CentOS6.9搭建Kafka2.1.0集群

一、环境
操作系统:CentOS6.9
软件版本:Zookeeper3.4.13,Kafka2.1.0
集群架构:
Node1:10.200.4.117(oracle02)
Node2:10.200.4.116(oracle03)
Node3:10.100.125.156(db01)

二、搭建kafka集群

kafka的使用依赖于Zookeeper,zk运行在jvm之上,所以要先安装JDK和Zookeeper。

1、安装JDK1.8(在所有Node操作)

安装方法见:https://blog.csdn.net/andyguan01_2/article/details/86701213

2、安装Zookeeper3.4.13(在所有Node操作)

这里没有用Kafka自带的zookeeper,所以需要单独安装,安装方法见:https://blog.csdn.net/andyguan01_2/article/details/86694080

3、下载Kafka安装文件(在Node1操作)

只需下载到Node1,在Node1上安装完成后,再复制安装文件到其他Node。

我用的是最新版Kafka2.1.0。打开以下网址:

http://kafka.apache.org/downloads.html

在这里插入图片描述
点击kafka_2.12-2.1.0.tgz链接,打开以下页面:
在这里插入图片描述
复制kafka_2.12-2.1.0.tgz的下载链接:

http://mirrors.shu.edu.cn/apache/kafka/2.1.0/kafka_2.12-2.1.0.tgz

在root用户下载安装文件:

cd /install_pack/
wget http://mirrors.shu.edu.cn/apache/kafka/2.1.0/kafka_2.12-2.1.0.tgz

在这里插入图片描述
4、安装Kafka

4.1 解压安装文件(在Node1操作)

在root用户解压安装文件至Kafka安装目录:

tar -zxvf /install_pack/kafka_2.12-2.1.0.tgz -C /u01/app

更改Kafka安装目录的所有者:(我这里是将Kafka安装在hadoop用户)

chown -R hadoop:hadoop /u01/app/kafka_2.12-2.1.0

4.2 添加环境变量(在所有Node操作)

在root用户下执行:

vi /etc/profile

在最后增加以下内容:

export KAFKA_HOME=/u01/app/kafka_2.12-2.1.0
export PATH=$PATH:$KAFKA_HOME/bin

使配置文件生效:

source /etc/profile

4.3 创建日志文件目录(在所有Node操作)

在root用户创建Kafka日志文件目录,并更改目录所有者。

mkdir -p /data/kafka_log
chown hadoop:hadoop  /data/kafka_log

4.4 修改配置文件(在Node1操作)

在hadoop用户修改/u01/app/kafka_2.12-2.1.0/config/server.properties 配置文件,主要修改以下几项:

#给当前服务器指定一个id,多台服务器的这个值要设置成不一样的
broker.id=1

#日志文件所在目录
log.dirs=/data/kafka_logs/

#每个topic的分区数,可改可不改
num.partitions=1 

#zookeeper集群的地址和端口,ip地址要和zookeeper配置文件zoo.cfg里面的server.1=x.x.x.x一致,端口号和里面的clientPort一致
zookeeper.connect=10.200.4.117:2181,10.200.4.116:2181,10.100.125.156:2181
vi /u01/app/kafka_2.12-2.1.0/config/server.properties

4.5 在Node2和Node3安装Kafka

复制Node1的Kafka安装目录到Node2和Node3。在Node1的hadoop用户下执行:

scp -r /u01/app/kafka_2.12-2.1.0 root@10.200.4.116:/u01/app
scp -r /u01/app/kafka_2.12-2.1.0 root@10.100.125.156:/u01/app

修改安装文件的所有者。在Node2和Node3的root用户下分别执行:

chown -R hadoop:hadoop /u01/app/kafka_2.12-2.1.0

分别在Node2和Node3修改配置文件/u01/app/kafka_2.12-2.1.0/config/server.properties,将broker.id=1中的1,分别改为2和3。(在hadoop用户)

vi /u01/app/kafka_2.12-2.1.0/config/server.properties

至此,Kafka在所有Node安装完成。

5、启动和停止服务(在所有Node操作)

5.1 启动服务

 kafka-server-start.sh -daemon  $KAFKA_HOME/config/server.properties

启动后,使用jps命令查看jvm进程,发现多出一个Kafka:
在这里插入图片描述
5.2 创建Topic验证

在Node1创建一个Topic:

 kafka-topics.sh --create --zookeeper 10.200.4.117:2181,10.200.4.116:2181,10.100.125.156:2181 --replication-factor 3 --partitions 4 --topic test_topic

参数说明:

–replication-factor 3 #复制3份
–partitions 4 #创建4个分区
–topic #主题为test_topic

在这里插入图片描述
在Node1查看Topic明细:

kafka-topics.sh --describe --zookeeper 10.200.4.117:2181 --topic test_topic

在这里插入图片描述
在Node1创建一个生产者:

 kafka-console-producer.sh --broker-list 10.200.4.117:9092 -topic test_topic

在Node2创建一个消费者:

 kafka-console-consumer.sh --bootstrap-server  10.200.4.117:9092 --topic test_topic

然后,在Node1输入字符,观察Node2上面的输出。

Node1输入字符:
在这里插入图片描述
Node2输出字符:
在这里插入图片描述
5.3 停止服务

kafka-server-stop.sh

完毕。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值