A message flow that you create in IBM® App Connect Enterprise or IBM Integration Bus can complete many different actions. If any of those actions are labor-intensive, you can split them from the main flow and complete them somewhere else. You can also configure event-driven flows in App Connect on IBM Cloud as callable flows, enabling those flows (and their use of smart connectors for SaaS apps) to be called by App Connect Enterprise and IBM Integration Bus flows.
For example, some parts of a message flow might logically belong in a specific location: if your flow queries an on-premises database, performance is better if that part of the flow remains on premises. But if part of your flow queries a website multiple times, performance might be improved by running that part of the flow in the cloud. You can call the cloud-based flow from your on-premises flow, and the flow in the cloud doesn’t use any of your on-premises resources.
These callable flows also facilitate reuse because they can be called by multiple message flows. You can deploy both flows to App Connect Enterprise or Integration Bus, or you can run them in an integration server in App Connect on IBM Cloud™. You can also run one flow in App Connect on IBM Cloud, and the other flow in App Connect Enterprise or Integration Bus (for example, on premises or in a private cloud).
If you’re sharing flow processing between App Connect on IBM Cloud and either App Connect Enterprise or Integration Bus, you have to configure secure connectivity between them. Your flows can then communicate by using a Switch server and connectivity agents. The Switch server is already created in IBM App Connect on IBM Cloud. The connectivity agents contain the certificates that your flows require to communicate securely with the Switch server.
You must download an agent configuration file (agentx.json) from the cloud, and use it to configure the connectivity agent. Your flows use this agent, and the Switch server, to communicate securely between between App Connect on IBM Cloud and App Connect Enterprise or Integration Bus.
Note: If your callable flows are both deployed to App Connect Enterprise or Integration Bus, or both running in App Connect on IBM Cloud, they can communicate with each other as soon as you deploy them.
The following instructions describe how to create a secure connection between flows in App Connect on IBM Cloud and flows in App Connect Enterprise or Integration Bus. You can split your flows into multiple callable flows, but for simplicity, this tutorial assumes that you’re creating just two flows: a calling flow and a callable flow.
First, find or create everything you need
- These instructions assume that you have IBM App Connect Enterprise or IBM Integration Bus installed on premises, and have configured an integration server on premises. For example, see Creating an integration server in the App Connect Enterprise documentation.
Configure connectivity between your flows on premises and in App Connect on IBM Cloud
- In App Connect on IBM Cloud, open the hamburger menu , expand Manage, then click Callable flows.
If you’ve not configured callable flows before, the list will be empty, and the status of connectivity is “Connectivity paused”.
- Click Connect callable flows.
A dialog box opens to set up your agent.
- Click Download the configuration.
- For App Connect Enterprise, save the agent configuration file (
agentx.json) to the work directory of the integration server in App Connect Enterprise:
(If you don’t see this directory, you’ll need to create the work directory for your integration server by running the
mqsicreateworkdircommand in App Connect Enterprise. For more information, see Configuring an integration server in the App Connect Enterprise Knowledge Center.)
- For Integration Bus, save the agent configuration file (
agentx.json) to the same computer where Integration Bus is running. Start an IBM Integration Bus command environment, then run the following
mqsichangepropertiescommand for the integration server that contains your callable flow.
mqsichangeproperties integrationNodeName -e integrationServerName -o ComIbmIIBSwitchManager -n agentXConfigFile -p filepath\agentx.json
mqsichangeproperties integrationNodeName -e integrationServerName -o ComIbmIIBSwitchMan
- In App Connect on IBM Cloud, click Test your agent to ensure that your flows that are split between the cloud and on premises can communicate with each other. If the test is successful, close the dialog box.
- Click Restart.
The status should change to “Started”.
You’ve configured secure communication between your split flows on premises and in the cloud.
When you start flows that are configured as callable flows, or contain nodes that invoke callable flows, details of those flows are shown on the Callable flows page. For example:
For some examples of sharing flow processing between App Connect on IBM Cloud and App Connect Enterprise, see the following tutorials:
- Share data and processing from App Connect on IBM Cloud to ACE Learn how to create a callable flow in IBM App Connect Enterprise (ACE) that updates on-premises data and augments data for SaaS applications when called from a simple event-driven flow in IBM App Connect on IBM Cloud.
- Share data and processing from ACE to App Connect on IBM Cloud Learn how to create a flow in IBM App Connect Enterprise (ACE) that updates on-premises enterprise data and calls an event-driven flow in IBM App Connect on IBM Cloud to pass enterprise data to SaaS applications and to get data from SaaS applications for processing on-premises.
If you can’t find what you want, or have comments about this tutorial, please either add comments to the bottom of this page or send us your comments by email.