参考: https://www.w3cschool.cn/apache_kafka/apache_kafka_installation_steps.html
http://kafka.apache.org/quickstart
前面两遍说明我已经安装了Jdk和zookeeper,都是单机版本。(后面再试试集群环境)
通过命令直接启动服务器:
切换到kafka目录下:
bin/kafka-server-start.sh config/server.properties
[2019-12-14 09:42:53,725] INFO [TransactionCoordinator id=0] Starting up. (kafka.coordinator.transaction.TransactionCoordinator)
[2019-12-14 09:42:53,758] INFO [TransactionCoordinator id=0] Startup complete. (kafka.coordinator.transaction.TransactionCoordinator)
[2019-12-14 09:42:53,770] INFO [Transaction Marker Channel Manager 0]: Starting (kafka.coordinator.transaction.TransactionMarkerChannelManager)
[2019-12-14 09:42:54,175] INFO [/config/changes-event-process-thread]: Starting (kafka.common.ZkNodeChangeNotificationListener$ChangeEventProcessThread)
[2019-12-14 09:42:54,346] INFO [SocketServer brokerId=0] Started processors for 1 acceptors (kafka.network.SocketServer)
[2019-12-14 09:42:54,361] INFO Kafka version : 2.1.1 (org.apache.kafka.common.utils.AppInfoParser)
[2019-12-14 09:42:54,361] INFO Kafka commitId : 21234bee31165527 (org.apache.kafka.common.utils.AppInfoParser)
[2019-12-14 09:42:54,366] INFO [KafkaServer id=0] started (kafka.server.KafkaServer)
基本显示启动成功!
注意kafka的默认端口是 9092
kafka的停止命令:
bin/kafka-server-stop.sh config/server.properties
查看zookeeper和卡夫卡的状态:
然后测试 生产者生产消息和消费者消费消息的过程:
在此配置中,您有一个ZooKeeper和代理id实例。 以下是配置它的步骤 -
创建Kafka主题 - Kafka提供了一个名为 kafka-topics.sh 的命令行实用程序,用于在服务器上创建主题。
打开新终端并键入以下示例。
语法
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1
--partitions 1 --topic topic-name
示例
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic Hello-Kafka
主题列表
要获取Kafka服务器中的主题列表,可以使用以下命令 -
语法
bin/kafka-topics.sh --list --zookeeper localhost:2181
输出
Hello-Kafka
启动生产者以发送消息
语法
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topic-name
从上面的语法,生产者命令行客户端需要两个主要参数 -
代理列表 - 我们要发送邮件的代理列表。 在这种情况下,我们只有一个代理。 Config / server.properties文件包含代理端口ID,因为我们知道我们的代理正在侦听端口9092,因此您可以直接指定它。
主题名称 - 以下是主题名称的示例。
示例
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Hello-Kafka
过时的消费者启动方式:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 —topic Hello-Kafka --from-beginning
正确的启动方式: 对于该版本而言:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic Hello-Kafka --from-beginning
最后附上0.90版本之后启动消费者的方法: bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
最终结果如下: