Set Kafka Key Action
Provided by: "Apache Software Foundation"
Support Level for this Kamelet is: "Stable"
Set Kafka Key based on a specific incoming header value from the message body.
The headerName parameter allows you to specify which header value to set as Kafka Key.
Configuration Options
The following table summarizes the configuration options available for the set-kafka-key-action
Kamelet:
Dependencies
At runtime, the set-kafka-key-action
Kamelet relies upon the presence of the following dependencies:
-
camel:kamelet
-
camel:core
Camel JBang usage
Prerequisites
-
You’ve installed JBang.
-
You have executed the following command:
jbang app install camel@apache/camel
Supposing you have a file named route.yaml with this content:
- route:
from:
uri: "kamelet:timer-source"
parameters:
period: 10000
message: 'test'
steps:
- to:
uri: "kamelet:log-sink"
You can now run it directly through the following command
camel run route.yaml
Camel K Environment Usage
This section describes how you can use the set-kafka-key-action
.
Knative action
You can use the set-kafka-key-action
Kamelet as an intermediate step in a Knative binding.
apiVersion: camel.apache.org/v1
kind: KameletBinding
metadata:
name: set-kafka-key-action-binding
spec:
source:
ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: kafka-source
properties:
bootstrapServers: localhost:9092
topic: mytopic
user: kafka
password: kafka123!
steps:
- ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: set-kafka-key-action
properties:
headerName: The Field
sink:
ref:
kind: Channel
apiVersion: messaging.knative.dev/v1
name: mychannel
Prerequisite
You have Camel K installed on the cluster.
Kafka action
You can use the set-kafka-key-action
Kamelet as an intermediate step in a Kafka binding.
apiVersion: camel.apache.org/v1
kind: KameletBinding
metadata:
name: set-kafka-key-action-binding
spec:
source:
ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: kafka-source
properties:
bootstrapServers: localhost:9092
topic: mytopic
user: kafka
password: kafka123!
steps:
- ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: set-kafka-key-action
properties:
headerName: The Field
sink:
ref:
kind: KafkaTopic
apiVersion: kafka.strimzi.io/v1beta1
name: my-topic
Prerequisites
-
You’ve installed Strimzi.
-
You’ve created a topic named
my-topic
in the current namespace. -
You have Camel K installed on the cluster.