IBM has produced high quality documentation around IBM Event Streams, more specifically around MQ connectors, the focus of this post.
If you are new to IBM Event Streams, it will take some time and effort to get going. It did for me!
Perhaps one of the more daunting aspects was to read and understand the documentation, particularly finding the most useful information to get up-and-running quickly.
The post primarily covers creating an IBM Event Streams MQ source connector. This being the first connector I created.
It contains a list of URLs I found most useful during the process, alongside a suggested reading order.
Source and sink connector starting point
YouTube
If you are new to Kafka connectors like I am, I’d suggest spending a few minutes watching the YouTube video Apache Kafka 101: Kafka Connect (2023).
I’d actually watch all the Kafka videos from this presenter. They are awesome!
URLs to guide you through the process
High-level guides
Perhaps the best starting point is the IBM Event Automation connector URLs found on github.io.
The landing URLs contain a high-level process to follow when implementing Kafka Connect runtimes and associated Kafka connectors such as the IBM MQ source and sink connectors.
A source connector consumes IBM MQ messages from a queue and publishes them to a Kafka topic.
A sink connector consumes from Kafka topics and puts IBM MQ messages to a queue.
The remainder of this post focusses on the IBM MQ to Kafka source connector, but the steps can easily be followed for an IBM MQ sink connector.
Releases
Before reading too much, I suggest you have a quick scan of the following URLs.
They contain the IBM provided source and sink connectors, including the source code if you’re interested, together with compiled jar files. For whatever reason, I had a difficult time locating these.
The jar files for the source connector (as of 30-Mar-2025) are for the v2.3.0 release. Be aware that the following URLs will initiate a download of the jar file.
- jar file containing all the dependencies excluding the MQ classes:
- jar file with all the dependencies including the MQ classes:
- jar file without the dependencies:
From what I’ve heard, this is the new location to obtain the (open source) connectors.
You may still be able to obtain older source and sink connectors from Fix Central.
However, I do see a comment “Kafka Connect MQ Source old version. For new version visit https://ibm.github.io/event-automation/connectors/kc-source-ibm-mq/installation” which suggests the location may have permanently moved.
If you’re interested in working from the IBM MQ perspective refer to following URLs:
- You want to download the jar file for the IBM MQ Kafka connector. You’ll need an IBM account to access this page – I’m not sure why.
- Download the IBM MQ Kafka connector. Look for the *IBM MQ Kafka Connectors* link.
Kafka Connect runtime for an IBM MQ source connector
To create a Kafka Connect runtime for an IBM MQ source connector, start with the following URL.
This page contains URLs that take you to the appropriate sections to complete your activities. I found this a great starting point.
You can happily follow that page rather than read the rest of this post, however, the below adds a few comments to highlight what I focussed on.
You can optionally read the entire page about setting up and running connectors.
For me, I focussed on building a Kafka Connect image and deploying to OpenShift.
Kafka MQ source connector
To configure a Kafka MQ source connector, refer to the following URL.
The following lists all the properties you can configure.
To know the Kafka Connect MQ source connector image dependencies check out the below URL. I faced some challenges building the image until I discovered this page (for the 11.4 version and not the default page).
One of the most frustrating things about enabling SSL on the MQ client connection was the lack of quality documentation. I spent more than 1-day trying to configure the Kafka connector until I came across the following GitHub page.
- How to create the external configuration for the keystore when creating the Kafka Connect runtime. Refer to:
- enable connectors to read config from secrets
- externalConfiguration
- Configure the Kafka connector to configure the SSL. Refer to:
- SSL config for connecting to MQ
Last updated: 4 April 2025
Leave a Reply