参考kafka文档中的quickstart
https://kafka.apache.org/quickstart#quickstart_startserver

1.下载并解压

wget https://dlcdn.apache.org/kafka/4.0.0/kafka_2.13-4.0.0.tgz
tar -xzf kafka_2.13-4.0.0.tgz
cd kafka_2.13-4.0.0

2.启动Kafka环境

Kafka可以使用本地脚本和下载的文件或docker镜像运行。

使用下载的文件

1) 生成集群UUID

KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"

2) 格式化日志目录

bin/kafka-storage.sh format --standalone -t $KAFKA_CLUSTER_ID -c config/server.properties

3) 启动kafka服务

bin/kafka-server-start.sh config/server.properties

一旦Kafka服务器成功启动,您将有一个基本的Kafka环境运行并准备使用。

使用docker

获取docker镜像:

$ docker pull apache/kafka:4.0.0

启动 Kafka Docker 容器:

$ docker run -p 9092:9092 apache/kafka:4.0.0
使用基于GraalVM的原生Apache Kafka Docker镜像

获取docker镜像:

$ docker pull apache/kafka-native:4.0.0

启动 Kafka Docker 容器:

$ docker run -p 9092:9092 apache/kafka-native:4.0.0

3.创建一个主题(topic)来存储事件(Events)

bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092

显示新主题的分区(partition)计数等详细信息

bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092

4.写入事件到主题(topic)中

bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092
>This is my first event
>This is my second event

您可以随时使用Ctrl-C停止生产者客户端。

5.读取事件(Events)

bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092

您可以随时使用Ctrl-C停止消费者客户端。

6.使用Kafka Connect将数据作为事件流导入/导出

确保将connect-file-4.0.0.jar添加到plugin.path中

config/connect-standalone.properties文件

 echo "plugin.path=libs/connect-file-4.0.0.jar" >> config/connect-standalone.properties

创建一些数据用于测试

echo -e "foo\nbar" > test.txt

我们可以通过检查输出文件的内容来验证数据是否已通过整个管道传递

more test.sink.txt

请注意,数据存储在Kafka主题连接测试中,因此我们还可以运行控制台消费者来查看主题中的数据(或使用自定义消费者代码来处理它):

$ bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic connect-test --from-beginning

连接器继续处理数据,因此我们可以将数据添加到文件中,并看到它在管道中移动:

echo "Another line" >> test.txt