When you split message flow processing between different integration servers, you must
configure a data router and a connectivity agent. The integration servers can be running on
different integration nodes.
About this task
When you split processing between different integration servers, your flows communicate securely
by using a Switch server and connectivity agents. The Switch server is a special integration server
that routes data. The connectivity agents contain the certificates that your flows require to
communicate securely with the Switch server. A connectivity agent must be running in each
integration server where you deployed message flows.
If your callable flows and the flows that call them are all deployed on premises, you must create
and configure the Switch server on premises. You must run a command that creates some configuration
files. You use one of the configuration files to create the Switch server, and the other file to
configure connectivity agents for each integration server where you have deployed callable flows or
flows that call them. The steps for this procedure are given in this topic.
This on-premises scenario is supported on Windows and Linux® only.
If you are splitting processing between IBM App Connect Enterprise and IBM App Connect Enterprise as a
Service, the Switch server is created and managed for you in the
cloud. You must download an agent configuration file from the cloud, and use it to configure the
on-premises connectivity agent for each integration server. For more information about configuring
connectivity agents for use with App Connect Enterprise as a Service, see Preparing the environment to split processing between IBM App Connect Enterprise and IBM App Connect Enterprise as a Service.
Procedure
To prepare the environment to split processing between integration servers on premises,
complete the following steps.
-
Start an App Connect Enterprise command environment.
-
Create the required configuration files, by running the iibcreateswitchcfg command.
You need to run the command in a directory for which you have permission to write.
Alternatively, you can specify an output directory. For example, the following command creates the
configuration files and saves them in the
temp directory.
![Windows platform Windows platform](ngwin.gif)
On
Windows:
iibcreateswitchcfg /output c:\temp
![Linux platform Linux platform](nglinux.gif)
On
Linux:
iibcreateswitchcfg -output /temp
If this command is successful, you see the following
responses:
BIP9382I: Generated the self-signed certificate file 'c:\temp\adminClient.p12'.
BIP9383I: Generated the switch server configuration file 'c:\temp\switchserver.json'.
BIP9384I: Generated the connectivity agents configuration file 'c:\temp\switchclient.json'.
This
command creates two JSON configuration files and a certificate, which is reserved for future use.
The
switchserver.json file is used to create the Switch server. The
switchclient.json file is used to configure the agent for each integration
server where your flows are deployed.
- To create the Switch server, run the iibswitch
command to use the switchserver.json configuration file, as shown in the
following examples.
![Windows platform Windows platform](ngwin.gif)
On
Windows, run the following
command.
iibswitch create switchserver /config c:\temp\switchserver.json
![Linux platform Linux platform](nglinux.gif)
On
Linux, run the following
command:
iibswitch create switchserver -c /temp/switchserver.json
When the Switch server is created, you see a Successful command
completion response. The Switch server is created in a special integration node called
ACESWITCH_NODE_V12.
- Optional:
To test that the Switch server is created and running, run the following command.
mqsilist ACESWITCH_NODE_V12
If the Switch server is running, you see the following
response.
BIP1286I: Integration server 'ACESWITCH_SERVER' on integration node 'ACESWITCH_NODE_V12' is running.
BIP8071I: Successful command completion.
- To configure connectivity agents, copy the switchclient.json
configuration file to the switch directory of each integration server where you
deployed calling or callable flows.
- For an independent integration server, the switch directory is at
work directory/config/switch.
- For an integration server under an integration node, the switch directory
is at
$MQSI_WORKPATH/config/Node_name/Server_name/switch.
For each affected integration server, the agent connects to the Switch server automatically, and
you see a confirmation message. The following message is shown for an independent integration
server in the
App Connect Enterprise
console.
The connection agent for remote callable flows has established a connection to the Switch server with URL 'wss://localhost:9011'.
The integration server component 'switchclient' has been started.
In the
Windows Application log, you see the following messages
for an integration server (
N101ISAA) under an integration node
(
NODEIPL01).
( NODEIPL01.N101ISAA ) The connection agent for remote callable flows has established a connection to the Switch server with URL ''wss://localhost:9011''.
A connection agent for remote callable flows has been configured on this integration server. The connection agent has successfully connected to the Switch server.
No response required.
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––-
( NODEIPL01.N101ISAA ) The integration server component ''switchclient'' has been started.
The specified component has been started and is available for use.
No response required.
Results
A message flow that is deployed to one configured integration server can now communicate
securely with a message flow on another configured integration server. The calling flow uses a
combination of the application name and the endpoint name of the CallableInput node to identify which callable flow to call. For
more information about developing these message flows, see Developing synchronously callable message flows.