Table of Contents
Prerequisite:
If you want to create a docker image of a Kafka bridge make sure to have:
- Docker deamon installed on your host
- Access to the following file:
- TIB_ftl_6.*_linux_linux_x86_64-development.deb
- TIB_ftl_6.*_linux_linux_x86_64-java.deb
- TIB_ftl_6.*_linux_linux_x86_64-runtime.deb
- TIB_ftl_6.*_linux_linux_x86_64-servers.deb
- TIB_ftl_6.*_linux_linux_x86_64-thirdparty.deb
- TIB_msg-akd-bridge_2.*_linux_x86_64-bridge.deb
- TIB_msg-akd-bridge_2.*_linux_x86_64-monitoring.deb
- TIB_msg-akd-core_*_linux_x86_64.deb
All files can be found in eDelivery inside the installation pack of the corresponding products.
Prepare the image:
Configuration
The bridge will use the following files to read the connection properties for both Kafka and FTL, so you need to configure them properly for your own environment
- connect-standalone.properties: In this file, you will set the Kafka connection properties and the message converter.
- change bootstrap. servers with the url of Kafka
- change plugin path with the right version of the bridge you are using
- tibftl-kafka-connect-sink.properties: In this file, you will set the ftl URL and the Kafka topic name for flows from kafka to ftl
- change ftl.realmservers with the url of ftl servers (pipe separated)
- change the topic with the name of the Kafka topic from which the Kafka messages will be taken
- tibftl-kafka-connect-source.properties: In this file, you will set the ftl URL and the Kafka topic name for flows from ftl to kafka
- change ftl.realmservers with the url of ftl servers (pipe separated)
- change the topic with the name of the Kafka topic to which the Kafka messages will be sent
- ftl-sink.yaml: In this file, you will set the ftl endpoint and application in which the ftl messages will be sent
- change ftlServers with the url of ftl servers (pipe separated)
- change ftlApplicationName with the ftl application name
- change ftlEndpoints with a list of endpoints associated with the previous application
- ftl-source.yaml: In this file, you will set the ftl endpoint and application from which the ftl messages will be taken
- change ftlServers with the url of ftl servers (pipe separated)
- change ftlApplicationName with the ftl application name
- change ftlEndpoints with a list of endpoints associated with the previous application
For further details please refer to Tibco and Kafka's official documentation
Build
To build the docker image:
- Unzip the attached zip file (dockerbuild.zip)
- Copy all the deb files inside the deb folder
- Modify the Dockerfile changing the env accordingly with the FTL and Kafka version you have downloaded
- from inside the folder run:
docker build -t <IMAGE_NAME:VERSION> .
Run
When you run the container you can decide whether to have the configuration files inside the container or in a mounted volume.
An important thing is that the bridge container should be able to reach both FTL and Kafka servers, so if they are running in a docker network as well be sure to run the container with "--network=<NETWORK_NAME>"
1) Config file inside the container
docker run -it --rm --name kafka_bridge <IMAGE_NAME:VERSION>
2) Config file in a volume
docker run -it --rm --name kafka_bridge2 -v "$(pwd)"/config/:/opt/tibco/config/ <IMAGE_NAME:VERSION>
Once the container is running you can test it sending\receiving messages to the Kafka topic and reading\publish on an FTL endpoint.
You can refer to this guide: https://community-stg.tibco.com/wiki/using-tibco-ftl-bridge-move-data-be...
Recommended Comments
There are no comments to display.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now