Configure IBM MQ Advanced for z/OS VUE for use with
blockchain
Set up and run the IBM MQ Bridge to blockchain to securely
connect an IBM MQ on z/OS queue manager and IBM Blockchain. Use the bridge to asynchronously connect
to, look up, and update the state of a resource in your blockchain, by using a messaging application
that connects to the IBM MQ Advanced for z/OS VUE queue
manager.
Before starting
IBM MQ Bridge to blockchain is available as a part of a Connector Pack
on IBM MQ Advanced for z/OS VUE
Version 9.1.0. We can connect to IBM MQ Advanced for z/OS VUE queue managers that are running on the same
command level, or above.
IBM MQ Bridge to blockchain is supported for use with your blockchain
network that is based on Hyperledger Composer built on Hyperledger Fabric.
The IBM MQ Bridge to blockchain must be installed in a UNIX System Services environment, and requires the IBM
Java runtime environment
Version 8.
Blockchain is a shared, distributed, digital ledger that consists of a chain of blocks
that represent agreed upon transactions between peers in a network. Each block in the chain is
linked to the previous block, and so on, back to the first transaction.
IBM Blockchain is built on Hyperledger Fabric and Hyperledger Composer. We can develop with it locally with Docker, or in a container cluster in IBM Cloud. We can also activate and use the IBM Blockchain network in production, to build and govern a business
network with high levels of security, privacy, and performance. For more information, see the IBM Blockchain
Platform.
Hyperledger Fabric and Hyperledger Composer are an open source, enterprise blockchain framework
that is developed collaboratively by members of the Hyperledger Project, including IBM as the initial code contributor. Hyperledger Project, or Hyperledger, is a Linux Foundation open source, global, collaborative
initiative to advance cross-industry blockchain technologies. For more information, see IBM Blockchain, Hyperledger Projects, Hyperledger Fabric, and Hyperledger Composer.
If we are
already using IBM MQ Advanced for z/OS VUE and IBM Blockchain, we can use the IBM MQ Bridge to blockchain to drive your Hyperledger Composer business model through the Hyperledger Composer REST interface, allowing you to update or query state
in your blockchain, and receive replies back from your blockchain network. In this way, we can
integrate your on-premises IBM software with, either
a cloud blockchain service, or locally-managed on-premise solution.
A brief overview of the
bridge operating process can be seen in Figure 1. A
user application puts a JSON formatted message on the input/request queue on the z/OS queue manager. Using the Hyperledger Composer REST server, the bridge connects to the queue
manager, gets the message from the input/request queue, checks that the JSON is correctly formatted,
then issues the REST request to the blockchain. The data that is returned by the blockchain is
parsed by the bridge and placed on the reply queue, as defined in the original IBM MQ request message. The user application can connect to the
queue manager, get the response message from the reply queue, and use the information.
Figure 1. IBM MQ Bridge to blockchain
We must configure the IBM MQ Bridge to blockchain to connect to a
Hyperledger Composer REST server rather than to the underlying
Hyperledger Fabric layer directly. When the bridge is
running, a messaging application requests the bridge to drive the Hyperledger Composer REST API, based on the user defined business network
model, which in turn drives the underlying chaincode routines that can query or update the state of
the resource, and return the results as a response using the Hyperledger Composer REST server, to the messaging
application.
Procedure
Create the queues for the bridge, by customizing and submitting the sample JCL in
thlqual.SCSQPROC(CSQ4BCBQ).
Sample bridge queue definitions are provided for the default named queues that are used for:
Message input to the bridge: SYSTEM.BLOCKCHAIN.INPUT.QUEUE, and
APPL1.BLOCKCHAIN.INPUT.QUEUE
Replies from blockchain: APPL1.BLOCKCHAIN.REPLY.QUEUE
Different applications can use the same input queue, but we can specify multiple reply queues,
one for each of the applications. You do not have to use defined reply queues. To use
dynamic queues for replies, we must consider their security configuration.
Results
You created the queues that the bridge requires for processing messages from IBM MQ and your blockchain network.
What to do next
Use the information for the queue manager and the credentials from your blockchain
network to create a configuration file for the IBM MQ Bridge to blockchain.
Running the IBM MQ Bridge to blockchain
Run the IBM MQ Bridge to blockchain to connect to IBM Blockchain and IBM MQ. When connected, the bridge is ready to process request messages, send them to your Hyperledger Composer blockchain network, and receive and process the replies.