Enabling HiveMQ Enterprise Extension for Kafka in HiveMQ Cloud Enterprise Clusters

Enabling HiveMQ Enterprise Extension for Kafka in HiveMQ Cloud Enterprise Clusters

Overview

This article addresses the process of enabling the HiveMQ Enterprise Extension for Kafka in HiveMQ Cloud Enterprise clusters. The HiveMQ Enterprise Extension for Kafka implements the native Kafka protocol inside your HiveMQ MQTT broker, enabling seamless integration of MQTT messages into Kafka messaging flows. (1)

Issue Description

Users with HiveMQ Cloud Enterprise clusters may need to enable the HiveMQ Enterprise Extension for Kafka for bi-directional MQTT data movement between IoT devices and Kafka clusters. (2) This requires verification of license coverage and deployment to the specific cluster.

Prerequisites

  • A valid license for the HiveMQ Enterprise Extension for Kafka (1)

  • HiveMQ Cloud Enterprise Plan cluster (4)

  • Running Kafka Cluster (versions 0.10.2 and higher)

Key Features

The HiveMQ Enterprise Extension for Kafka provides:

  • Forward MQTT messages from IoT devices connected to your HiveMQ MQTT broker to topics in one or more Kafka clusters

  • Poll information from a Kafka topic and publish this information as MQTT messages to one or more MQTT topics

  • Use placeholders to dynamically generate MQTT messages at runtime with values extracted from a Kafka record

  • Multiple MQTT topic filters with full support of wildcards to route MQTT messages to the desired Kafka topics

Resolution Steps

Step 1: Verify License Coverage

Contact HiveMQ Support to confirm that the HiveMQ Enterprise Extension for Kafka is included in your current license.

Step 2: Request Extension Deployment

Submit a support ticket to HiveMQ Support requesting deployment of the Kafka extension to your specific HiveMQ Cloud cluster (provide the cluster URL).

Step 3: Prepare Configuration

Before deployment, prepare your {{config.xml}} configuration file. (1) The configuration file must be located at {{HIVEMQ_HOME/extensions/hivemq-kafka-extension/conf/config.xml}}.

Example minimal configuration:

<?xml version="1.0" encoding="UTF-8" ?> <kafka-configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="config.xsd"> <kafka-clusters> <kafka-cluster> <id>cluster01</id> <bootstrap-servers>127.0.0.1:9092</bootstrap-servers> </kafka-cluster> </kafka-clusters> <mqtt-to-kafka-mappings> <mqtt-to-kafka-mapping> <id>mapping01</id> <cluster-id>cluster01</cluster-id> <mqtt-topic-filters> <mqtt-topic-filter>mytopic/#</mqtt-topic-filter> </mqtt-topic-filters> <kafka-topic>my-kafka-topic</kafka-topic> </mqtt-to-kafka-mapping> </mqtt-to-kafka-mappings> </kafka-configuration>

 

Step 4: Verify Deployment

After HiveMQ Support deploys the extension:

  1. Check the HiveMQ Control Center for the newly-created Kafka tab

  2. Review HiveMQ logs to verify proper installation and configuration

  3. Verify the extension is listed in the Active License Features section of the Control Center (5)(https://docs.hivemq.com/hivemq/4.28/control-center/information.html)

Configuration Requirements

The HiveMQ Enterprise Extension for Kafka configuration is divided into four sections:

  • Kafka Clusters: General information and connection settings for one or more Kafka clusters

  • MQTT-to-Kafka Mappings: Routing information for one or more MQTT topic filters to a Kafka topic

  • Kafka-to-MQTT Mappings: Routing information for one or more records in a Kafka topic to one or more MQTT topics

  • Schema Registry: Schema used to deserialize values in the Kafka topic

Important Notes

Prevention and Best Practices

To streamline future extension enablement requests:

  1. Verify license coverage for required extensions before deployment planning

  2. Prepare configuration files in advance, following the official documentation

  3. Test configurations in staging environments before production deployment

  4. Document cluster-specific requirements (Kafka cluster details, topic mappings, authentication settings)

  5. Review the extension documentation for version-specific features and requirements

Related Resources

Support Contact

For assistance with enabling extensions in HiveMQ Cloud Enterprise clusters, contact HiveMQ Support through your support portal.