參考: 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
最終結果如下: