Skip to main content

kafka普通模式配置示例

一、PublishKafka

将 FlowFile 的内容作为消息发送到 kafka

1. 组件配置

  • 默认仅需要配置 Kafka Brokers 和 topic即可,集群模式下,Kafka Brokers 设置为以逗号分割的多个 IP 加端口
  • 其他属性需要时再进行配置

二、ConsumeKafka

通过 KafkaConsumer API轮询Apache Kafka的数据。当从 Kafka 接收到消息时,此处理器会生成一个 FlowFile,其中 FlowFile 的内容是 Kafka 消息的值

1. 组件配置

  • 默认需要配置 Kafka Brokers 、 topic 和 group ID即可;集群模式下,Kafka Brokers 设置为以逗号分割的多个 IP 加端口,group IP 不能和其他消费客户端重复
  • 其他属性需要时再进行配置

三、流程模板

参见:模板文件

四、Docker 搭建 kafka环境

docker-compose示例

version: '3.2'

networks:
integrated-dev-net:
driver: bridge

services:
# kafka
zookeeper:
container_name: zookeeper-bizd
image: zookeeper:3.6
networks:
- integrated-dev-net
volumes:
- /data/integrated/zookeeper:/data
- /data/integrated/zookeeper/logs:/logs
ports:
- 2181:2181

kafka:
container_name: kafka-bizd
image: wurstmeister/kafka:2.12-2.5.0
networks:
- integrated-dev-net
ports:
- 9092:9092
environment:
KAFKA_BROKER_ID: 0
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.18.89.103:9092 #修改为服务器IP
KAFKA_CREATE_TOPICS: "bizd:2:0" #kafka启动后初始化一个有2个partition(分区)0个副本名叫bizd的topic
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
volumes:
- /data/integrated/kafka/log:/kafka
- /etc/localtime:/etc/localtime
depends_on:
- zookeeper