Interactive script
You can run prozzie config setup mqtt
to interactively configure one mqtt kafka
connector. You will be asked for the next variables, that can’t have any
default:
- mqtt__server_uris
- MQTT brokers
- mqtt__topic
- MQTT Topics to consume
- kafka__topic
- Topic to produce MQTT consumed messages
However, there are some others “hidden” variables that configure connector. They will be output at the end of interactive setup, and you can reuse them following the Advanced configuration.
Advanced configuration
To configure MQTT you can use kcli
tool.
- mqtt.properties
name=mqtt
connector.class=com.evokly.kafka.connect.mqtt.MqttSourceConnector
tasks.max=1
key.converter=org.apache.kafka.connect.storage.StringConverter
value.converter=org.apache.kafka.connect.storage.StringConverter
#Settings
kafka.topic=mqtt
mqtt.client_id=my-id
mqtt.clean_session=true
mqtt.connection_timeout=30
mqtt.keep_alive_interval=60
mqtt.server_uris=tcp://localhost:1883
mqtt.topic=mqtttopic/1
mqtt.qos=1
message_processor_class=com.evokly.kafka.connect.mqtt.sample.StringProcessor
You need to configure a mqtt.properties file with your properties:
- mqtt.server_uris
- The MQTT brokers.
- mqtt.topic
- The MQTT topics to subcribe.
- kafka.topic
- The Kafka topic to send the messages.
When you configure the mqtt.properties
you need to create the connector:
prozzie kcli create mqtt-connector < mqtt.properties
You can check that messages are properly delivered using prozzie kafka consume <your-mqtt-topic>