20191218更新
目前复习到kafka集群,然后回来看了看之前写的这篇文章。
真的是写的乱七八糟,
向之前所有搜到这篇文章的童鞋致歉!!!
又重新整理了一篇《kafka集群(伪分布式)的搭建及集成springboot》
比这篇有条理,也算是随着年龄增长,自己也在进步吧。O(∩_∩)O~
以下是原回答
准备工作:
kafka压缩包 安装步骤:
1、使用命令unzip kafka_2.10-0.8.2.1.zip
解压kafka压缩包。
2、使用命令mv kafka_2.10-0.8.2.1 kafka_2.10
为安装包改名。将目录名kafka_2.10-0.8.2.1更改为kafka_2.10。
3、进入安装包的config目录下,有一个server.properties配置文件。
4、修改server.properties配置文件。主要修改三个选项。
1、broker.id=0(这个是配置brokeid的,我在三台服务器上配置kafka,则这三台服务器的broker.id分别为0、1、2)
2、log.dirs=/kafka-logs(这个配置是决定数据存放目录。注意:不是运行日志目录)
3、zookeeper.cnotallow=spark001:2181,spark002:2181,spark003:2181(这个是连接zookeeper的ip地址和端口号,这里我们使用自己配置的zookeeper集群,不使用内置zookeeper集群,便于后期的维护)
5、把配置好的安装包通过命令scp -r kafka/ node03:
pwd发送到其他节点,并且在其他节点改一下broker.id。
6、通过上面的配置修改。kafka集群已经搭建成功了,下面测试一下我们搭建的kafka集群。首先在搭配了zookeeper的节点上通过命令zkServer.sh start
启动zookeeper集群。(zookeeper集群的搭建请参考《HDFS高可用性的完全分布式搭建过程》)
7、进入安装包的bin目录下,找到kafka-server-start.sh文件,通过命令./kafka-server-start.sh ../config/server.properties >>kafka.log 2>&1 &
启动kafka集群。
8、通过命令./kafka-topics.sh --create --zookeeper node02:2181,node03:2181,node04:2181 --topic "luo" --partitions 3 --replication-factor 1
创建topic。
9、生产数据,输入命令:./kafka-console-producer.sh --broker-list node01:9092,node02:9092 --topic "luo"
。会进入生产界面等待。
10、消费数据,在另一个节点输入命令:kafka-console-consumer.sh --zookeeper node02:2181 --topic "luo"
,出现如下界面。
11、在生产者界面输入数据,
可以在消费者界面看到生产者生产的数据。
错误记录:-bash: ./kafka-server-start.sh: Permission denied
在执行启动启动kafka集群的时候,报错没有权限操作该文件,直接通过 chmod 777 zookeeper-server-start.sh
命令给无权限的文件更改权限。