MQ

MQ

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Connecting RabbitMQ and IBM MQ

  • 1.  Connecting RabbitMQ and IBM MQ

    Posted Wed March 18, 2020 06:17 PM
    Hello all,

    I'm working on a project where a large number of applications will be converted to run in containers, hosted in IBM Cloud.

    RabbitMQ is offered in the IBM Cloud, and the developers are considering using it as a messaging solution.

    But these applications also need to exchange messages with pre-existing IBM MQ infrastructure that will not be migrated to the Cloud right away.

    I'm looking for solutions to interface a RabbitMQ instance in the IBM cloud with an IBM MQ server.
    Do you have any pointers for me?

    Thanks !

    ------------------------------
    Luc-Michel Demey
    DEMEY CONSULTING
    ------------------------------


  • 2.  RE: Connecting RabbitMQ and IBM MQ

    Posted Wed March 18, 2020 10:22 PM
    This link

    https://www.cloudamqp.com/blog/2015-05-18-part1-rabbitmq-for-beginners-what-is-rabbitmq.html

    says

    AMQP: Advanced Message Queuing Protocol is the protocol used by RabbitMQ for messaging.

    From IBM MQ V9 KC

    https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_9.1.0/com.ibm.mq.con.doc/tamqp_creating.htm

    This task assumes that you have installed the AMQP channel. You do this by selecting the AMQP Service component when installing IBM MQ. For more information, follow the link for your platform then find the table row for "AMQP Service":

    The above might give you a starting point, since seems that RabitMQ is using AMQP and IBM MQ has support for that.




    ------------------------------
    Edward McCarthy
    WAS on System z
    ------------------------------



  • 3.  RE: Connecting RabbitMQ and IBM MQ

    Posted Thu March 19, 2020 04:53 AM
    Maybe this article contains a pointer.

    What you'll need to build your application

    ·  Knowledge of and development skills for IBM Integration Bus

    ·  IBM Integration Bus V10 toolkit and runtime

    ·  Knowledge of RabbitMQ

    ·  RabbitMQ Java client API Java archive (JAR) file









  • 4.  RE: Connecting RabbitMQ and IBM MQ

    Posted Thu March 19, 2020 07:25 AM
    Edited by Francois Brandelik Thu March 19, 2020 07:27 AM
    Hi Luc-Michel

    You do know that IBM MQ is also available in the IBM Cloud, right? RabbitMQ will not do all of what is given by IBM MQ (Advanced) like encryption at rest... If you cannot replace the RabbitMQ with IBM MQ you will have to build a bridge using (or not) the IBM MQ AMQP channel...

    ------------------------------
    FJ Brandelik
    ------------------------------



  • 5.  RE: Connecting RabbitMQ and IBM MQ

    Posted Thu March 19, 2020 07:50 AM
    As FJ says, I hope they've seen that MQ in IBM Cloud as a managed service is an option for them. Luc-Michel, reach out if you'd like to discuss that.

    Regarding the AMQP discussion - nothing is ever that simple! Although building a bridge between MQ and RabbitMQ is definitely possible, there are a number of reasons why "AMQP" as a common protocol is unlikely to help:

    - AMQP doesn't really work as a server-to-server protocol when those two servers are from different messaging solutions.
    - RabbitMQ is built around AMQP 0.9 and MQ uses AMQP 1.0. That doesn't sound like much of a difference but they're actually miles apart as protocols.

    For those reasons, you might want to look at building a bridge which supports a suitable RabbitMQ client and a suitable IBM MQ client. For example using the respective JMS clients from each.

    David

    ------------------------------
    David Ware
    STSM, IBM MQ Chief Architect
    Hursley, UK
    ------------------------------



  • 6.  RE: Connecting RabbitMQ and IBM MQ

    Posted Thu March 19, 2020 11:37 AM
    Hi Luc-Michel, I'm not sure whether or not you've decided to go with Rabbit for certain, but if not, are you aware that MQ has a managed cloud service on IBM Cloud? (https://console.bluemix.net/catalog/services/mq). If you're considering connecting to existing MQ on premises, this might be a natural fit. There is a Lite plan if you wanted to explore before committing fully. We also have developer resources if you have developers concerned about the learning curve: http://ibm.biz/learn-mq

    ------------------------------
    Naomi Scott
    ------------------------------



  • 7.  RE: Connecting RabbitMQ and IBM MQ

    Posted Thu March 19, 2020 07:23 PM
    First of all, thank you very much for your answers. Some confirm what I already knew, others give me interesting clues that I will dig up.
    I have been working with MQSeries / WebSphere MQ / IBM MQ for almost ... 25 years. My first installation was MQ 2.1 on Aix. A few years ago, I deployed my first Queue Manager in a container during a workshop in Hursley.
    I know MQ well and I am a strong supporter of this technology.
    As you may suspect, the choice to use RabbitMQ is not mine. This choice was essentially made on non-technical criteria.
    One point that weighed in the decision is that RabbitMQ is featured in the IBM Cloud offer: https://www.ibm.com/cloud/messages-for-rabbitmq and is free.

    Among the tracks I'm going to study:
    • Creation in the cloud of a "edge" MQ service, which will act as a relay between applications and external QMs. This assumes that applications specifically address this edge QM
    • Development of a gateway based on a RabbitMQ client and an MQ client, and an application that does put in one and get in the other.
    • Creating an IIB/ACE connector that does the same thing
    Given that IBM MQ and RabbitMQ are both available in the IBM Cloud, I had hoped to find a gateway between these two services as well, but it seems that this is not the case.

    If you have any other ideas, don't hesitate.

    ------------------------------
    Luc-Michel Demey
    DEMEY CONSULTING
    ------------------------------



  • 8.  RE: Connecting RabbitMQ and IBM MQ

    Posted Fri March 20, 2020 12:30 PM

    Hi Luc-Michel,

    I'm the Offering Manager for IBM MQ on Cloud. I have had a look at the Rabbit MQ offering and as Naomi mentioned this offering doesn't state a free option. 

    I appreciate the decision to use Rabbit MQ was not yours and made on non-technical criteria but I encourage you to take a look at our fully managed SaaS offering and deploy a Lite Plan which is free of charge to get a feel of the product and it's capabilities.  You can view the product here: https://cloud.ibm.com/catalog/services/mq


    I am also more than happy to discuss our product by email or Webex.

    Thanks
    Jack Boad. MQoC Offering Manager.



    ------------------------------
    Jack Boad
    ------------------------------



  • 9.  RE: Connecting RabbitMQ and IBM MQ

    Posted Fri March 20, 2020 06:30 AM
    Hi Luc-Michel,

    I'm not sure what to recommend to connect Rabbit and MQ. I am a little confused as to why the company thinks Rabbit's free though, as that link indicates that it's not. Out of interest, which IBM Cloud plan are you referring to?

    ------------------------------
    Naomi Scott
    ------------------------------



  • 10.  RE: Connecting RabbitMQ and IBM MQ

    Posted Fri March 20, 2020 10:21 AM
    With RabbitMQ you import a dependency with Erlang/OPT.
    You could built your own bridge between both systems - then you know what that bridge is doing and how it works.
    WMB/IIB/ACE - could run your bridge - ACE is available in the IBM Cloud