Kafka
Fluvio Kafka Outbound Connector
This is a connector for taking data from a Fluvio topic and sending to a Kafka topic.
See docs here.
| Opt | default | type | description |
|---|---|---|---|
| url | - | String | The url for the kafka connector |
| topic | - | String | The kafka topic |
| partition | 0 | Integer | The kafka partition |
| create-topic | false | Boolean | Create or not a topic before start |
| options | - | Mapping | The kafka client options |
| security | - | Mapping | Optional. The kafka security config |
| Option | default | type | description |
|---|---|---|---|
| security_protocol | ssl | String | The kafka security protocol |
| ssl_key | - | Mapping | The SSL key file to use |
| ssl_cert | - | Mapping | The SSL cert file to use |
| ssl_ca | - | Mapping | The 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: 0.2.7
name: my-kafka-connector
type: kafka-sink
topic: kafka-topic
create-topic: true
kafka:
url: "localhost:9092"
topic: fluvio-topic
create-topic: true
Example with security enabled:
apiVersion: 0.1.0
meta:
version: 0.2.7
name: my-kafka-connector
type: kafka-sink
topic: kafka-topic
create-topic: true
secrets:
- name: KAFKA_BROKER_URL
- name: SSL_CERT_PEM
kafka:
url: ${{ secrets.KAFKA_BROKER_URL }}
topic: fluvio-topic
create-topic: true
security:
ssl_key:
file: /path/to/file
ssl_cert:
pem: "${{ secrets.SSL_CERT_PEM }}"
ssl_ca:
file: /path/to/file
security_protocol: ssl
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
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.
Fluvio Kafka Connectors support Transformations.