Skip to main content
Version: latest

Kafka Connector

This is a connector for taking data from a Fluvio topic and sending to a Kafka topic.

See docs here.

Configuration​

Optdefaulttypedescription
url-StringThe url for the kafka connector
topic-StringThe kafka topic
partition0IntegerThe kafka partition
create-topicfalseBooleanCreate or not a topic before start
options-MappingThe kafka client options
security-MappingOptional. The kafka security config

Security configuration​

Optiondefaulttypedescription
security_protocolsslStringThe kafka security protocol
ssl_key-MappingThe SSL key file to use
ssl_cert-MappingThe SSL cert file to use
ssl_ca-MappingThe SSL ca file to use

Parameters ssl_key, ssl_cert and ssl_ca can be defined via file - path to the file, or pem - content as string value.

Example without security:

apiVersion: 0.1.0
meta:
version: x.y.z
name: my-kafka-connector
type: kafka-sink
topic: kafka-topic

kafka:
url: "localhost:9092"
topic: fluvio-topic

Example with security enabled:

apiVersion: 0.1.0
meta:
version: x.y.z
name: my-kafka-connector
type: kafka-sink
topic: kafka-topic

secrets:
- name: KAFKA_BROKER_URL
- name: SSL_CERT_PEM
kafka:
url: ${{ secrets.KAFKA_BROKER_URL }}
topic: fluvio-topic

security:
ssl_key:
file: /path/to/file
ssl_cert:
pem: "${{ secrets.SSL_CERT_PEM }}"
ssl_ca:
file: /path/to/file
security_protocol: ssl
info

All connector versions are marked with x.y.z. To find the latest version, run:

  • fluvio hub connector list

Usage​

To try out Kafka Sink connector locally, you can use Fluvio CDK tool:

cdk deploy -p kafka-sink start --config crates/kafka-sink/sample-config.yaml

Testing with security​

Instructions of how to deploy local kafka cluster with SSL using docker. After all steps done, in the secrets folder there will be fluvio.key.pem, fluvio.pem and fake-ca-1.crt files that can be used in the connector config as ssl_key, ssl_cert and ssl_ca correspondingly.

Transformations​

Fluvio Kafka Connectors support Transformations.