下载软件
首先先下载kafka的包,kafka是apache基金会的一部分,官网下载
我原本下载的是最新的3.6.0,但是部署时发生了错误,所以回退到了2.6.0版本
安装包名:kafka_2.13-2.6.0.tgz,其中2.13是scala版本,因为kafka是用scala语言写的,2.6.0是kafka的版本
tar -xvzf kafka_2.13-2.6.0.tgz
把压缩包放到local目录解压
然后cd进入
cd kafka_2.13-2.6.0
可以看到压缩包内总共有这些内容:
其中etc是我新建的,不属于压缩包
bin里都是.sh文件,存放kafka的常用脚本
config里都是.properties文件,存放kafka的常用配置文件
libs里是kafka的依赖
LICENSE是kafka的许可证文件
logs里存放的是kafka执行后产生的日志文件,也不属于压缩包
NOTICE是kafka的声明文件
site-docs里是kafka相关文档的压缩包
配置环境
配置环境主要就是修改config目录里的几个配置文件
为了方便存档和复原,我这里不直接修改config中的文件,而是把配置文件复制到新建的etc目录,再修改etc中的properties
实际生产应该在不同机器上分别部署kafka,我这边在一台机器上部署三个broker,进行伪分布式部署
kafka集群需要使用zookeeper进行管理(2.8.0后已经不需要了,这里版本是2.6.0),所以除了kafka以外还需要进行zookeeper的配置。
那要复制的配置文件就是:
- zookeeper配置
- server配置*3
把相关的配置文件复制到etc目录
由于我是在同一台机器上部署三个broker,每个broker都需要自己的配置文件,所以server的配置文件总共要复制三份
cd config cp zookeeper.properties ../etc/zookeeper.properties cp server.properties ../etc/server-0.properties cp server.properties ../etc/server-1.properties cp server.properties ../etc/server-2.properties
然后修改配置文件
zookeeper.properties可以保持不变
三个server.properties是类似的
cd ../etc vim zookeeper.properties vim server-0.properties
broker.id分别设为0、1、2
#listeners=PLAINTEXT://:9092 这一行注释去掉,端口分别设为9092、9093、9094
下面log.dirs=/tmp/kafka-logs分别修改为log.dirs=/tmp/kafka-logs-0、log.dirs=/tmp/kafka-logs-1、log.dirs=/tmp/kafka-logs-2
保存退出
etc目录现在一共四个文件,都已经配置好了
启动kafka
首先启动zookeeper
cd ../bin ./zookeeper-server-start.sh ../etc/zookeeper.properties
然后在三个新窗口分别启动三个server
./kafka-server-start.sh ../etc/server-0.properties ./kafka-server-start.sh ../etc/server-1.properties ./kafka-server-start.sh ../etc/server-2.properties
在新窗口新建topic “test”
./kafka-topics.sh --zookeeper localhost:2181 --create --topic test --partitions 3 --replication-factor 2
创建一个消费者
./kafka-console-consumer.sh --bootstrap-server localhost:9092 localhost:9093 localhost:9094 --topic test
在新窗口创建一个生产者
./kafka-console-producer.sh --broker-list localhost:9092 localhost:9093 localhost:9094 --topic test
然后我们在生产者发送的消息都能被消费者接收到
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章