JDK已经安装好
准备安装包
将安装包解压
查看安装包
创建一个数据目录
配置环境变量
编辑文件
添加内容
配置生效
启动之前要先启动zookeeper服务器,zookeeper是为kafka提高协调服务的工具。kafka已经内置了一个zookeeper服务器以及一些启动脚本
编辑配置文件zookeeper.properties
配置内容
dataDir=/usr/local/kafka_2.12-1.0.0/data/
clientPort=2181
启动zookeeper
./zookeeper-server-start.sh ../config/zookeeper.properties
启动好zookeeper以后,然后启动kafka服务器
注意:为了启动kafka服务器,要保证刚才启动的zookeeper终端不被关闭。打开一个新的终端
./kafka-server-start.sh ../config/server.properties
[KafkaServer id=0] started (kafka.server.KafkaServer)说明kafka服务器启动成功,默认的服务端口是9092
查看端口
服务器启动后,我们需要创建一个主题(topic)用于消息的发送和接受。
创建一个名称为test的topic
注意:为了要创建topic,要保证刚才启动的zookeeper和kafka的终端不被关闭。打开一个新的终端
测试:该topic只有一个分区(partition),且该partition也只有一个副本(replica)处理消息
命令:./kafka-topics.sh --create --zookeeper localhost:2181 --topic test --partitions 1 --replication-factor 1
查看该topic的状态
./kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
发送消息,即生产消息。kafka默认提供了脚本工具可以不断的接受标准输入并将他们发送到kafka的某个topic上面,用户在控制台终端下启动该命令,输入一行文本数据,然后该脚本将该行文本封装成一条kafka消息发送给指定的topic。打开新的终端,执行命令
./kafka-console-producer.sh --broker-list localhost:9092 --topic test
消费消息,消费者,kafka提供了一对应的脚本用于消费某些topic下的消息并打印到标准输出。打开新的终端。执行如下命令
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
两边可以输入查看