Kafka的环境搭建
Apache Kafka是一个开源消息系统,由Scala写成。是由Apache软件基金会开发的一个开源消息系统项目。
Kafka最初是由LinkedIn开发,并于2011年初开源。2012年10月从Apache Incubator毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。
**Kafka是一个分布式消息队列:生产者、消费者的功能。**它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。
Kafka对消息保存时根据Topic进行归类,发送消息者称为Producer,消息接受者称为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)成为broker。
无论是kafka集群,还是producer和consumer都依赖于zookeeper集群保存一些meta信息,来保证系统可用性
**
kafka单机版安装采用自带的zookeeper处理
1.校验一下java是否安装
java -version
java version “1.8.0_171”
Java™ SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot™ 64-Bit Server VM (build 25.171-b11, mixed mode)
2.上传kafka文件到虚拟机中kafka_2.12-2.2.0
rz 命令调出上传窗口
ll命令查看上传的kafka文件
3.解压安装kafka到/opt中
tar -zxvf kafka_2.11-1.0.0.tgz -C /opt/
重命名kafka的文件 :
mv kafka_2.11-1.0.0 /opt/kafka
4.切换到kafka的配置文件目录
pwd
cd /opt/kafka/config
5.kafka安装目录下的config文件夹为其配置文件,我们需要修改的有 server.properties和zookeeper.properties。
mkdir kafka-logs-0
server.properties: kafka的配置文件
log.dirs=/tmp/kafka-logs
修改为:
log.dirs=/opt/kafka/kafka-logs-0
host.name=你的ip地址zookeeper.properties kafka自带的zookeeper的配置
dataDir=/tmp/zookeeper
修改为: dataDir=/opt/kafka/my_zookeeper
6.启动zookeeper
/opt/kafka/bin/zookeeper-server-start.sh
/opt/kafka/config/zookeeper.properties
7.启动kafka
/opt/kafka/bin/kafka-server-start.sh
/opt/kafka/config/server.properties
8.创建主题 (让我们创建一个名为“test”的主题,它只包含一个分区,只有一个副本)
/opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181
–replication-factor 1 --partitions 1 --topic test 备注: 或者,您可以将代理配置为在发布不存在的主题时自动创建主题,而不是手动创建主题。
9.查看主题: 如果我们运行list topic命令,我们现在可以看到该主题
/opt/kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181
10.发送一些消息
Kafka附带一个命令行客户端,它将从文件或标准输入中获取输入,并将其作为消息发送到Kafka集群。默认情况下,每行将作为单独的消息发送。运行生产者,然后在控制台中键入一些消息以发送到服务器。
/opt/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092
–topic test >等待输入发送的消息
11.启动消费者
/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server
192.168.25.133:9092 --topic test --from-beginning 从第一条开始接受 /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server
192.168.25.133:9092 --topic test从现在生产者发送开始接受。