Defining an Aspera gateway connection on Linux or Windows
The IBM® Aspera fasp.io Gateway provides a fast TCP/IP tunnel that can significantly increase network throughput for IBM MQ. A queue manager running on any entitled platform can connect through an Aspera gateway. The gateway itself is deployed on Red Hat® or Ubuntu Linux®, or Windows.
About this task
The Aspera gateway can be used to improve the performance of queue manager channels. It is especially effective if the network has high latency or tends to lose packets, and it is typically used to speed up the connection between queue managers in different data centers.
You define an Aspera gateway at each end of the IP network connection, then use TCP/IP to connect queue manager channels to each gateway. A queue manager does not need to be running on the same machine as the Aspera gateway that it uses, and multiple queue managers can use the same gateway. The only restrictions are as follows:
- IBM MQ Advanced for Multiplatforms
- IBM MQ Appliance
- IBM MQ Advanced for z/OS® VUE
- IBM MQ Advanced for z/OS (Long Term Support only)
- Linux for x86-64
- Linux on POWER® Systems - Little Endian
- Linux for IBM Z
- Windows - for more information about platform support on Windows, see the IBM Aspera fasp.io Gateway documentation.
Queue managers that use the Aspera gateway can be running on any supported platform. For a complete list of supported platforms, see Release and platform icons in the product documentation.
For each queue manager that is not on the same machine as the Aspera gateway that it uses, check that you have a fast network connection between the queue manager and the Aspera gateway.
You use a toml file to create a gateway definition that defines the inbound and outbound ports that the gateway uses. A sample toml file is shipped with the Aspera gateway. The outbound gateway definition defines the connection from the local queue manager to the gateway, and from the local gateway to the remote gateway. The inbound gateway definition defines the connection from the remote gateway to the local gateway, and from the local gateway to the local queue manager.
The following steps provide a basic guide to getting up and running. For more detailed information, see the IBM Aspera fasp.io Gateway documentation.
Procedure
Example
- The IP address of the local gateway machine is 9.20.193.107. The IP address of the remote gateway machine is 9.20.192.115.
- The local queue manager is running on a machine with IP address 9.20.121.5. The remote queue manager is running on a machine with IP address 9.20.121.25. Both queue managers are listening on port 1414.
- The queue manager channel on the local queue manager is changed to connect to the local Aspera gateway using conname 9.20.193.107(1500). The queue manager channel on the remote queue manager is changed to connect to the remote Aspera gateway using conname 9.20.192.115(1500).
- IBM Aspera fasp.io Gateway 1.2 enables TLS by default. In this example TLS has been
disabled by setting
tls_enabled=false
in the gateway definitions. If running with an earlier version of the gateway, delete thetls_enabled=false
lines. If you want to configure TLS with the gateway, see Securing the Gateway in the IBM Aspera fasp.io Gateway documentation.
- Define an Aspera gateway connection on the local
gateway machine:
- Install the Aspera gateway:
- On Linux, use the following
command:
rpm -ivh ibm-fasp.io-gateway-<version>.x86_64.rpm
- On Windows, open the .msi file to run the installation wizard.
- On Linux, use the following
command:
- Modify the gateway.toml file in the directory that was created by the
install:
- Linux
- From IBM Aspera fasp.io Gateway 1.2, the location is /usr/local/etc/faspio/.
- Windows
- C:\Program Files\IBM\fasp.io Gateway\config\
Edit the file to set the local gateway definitions.[[bridge]] name = "Outbound" [bridge.local] protocol = "tcp" host = "9.20.193.107" port = 1500 tls_enabled = false [bridge.forward] protocol = "fasp" host = "9.20.192.115" port = 1600 tls_enabled = false [[bridge]] name = "Inbound" [bridge.local] protocol = "fasp" host = "9.20.193.107" port = 1600 tls_enabled = false [bridge.forward] protocol = "tcp" host = "9.20.121.5" port = 1414 tls_enabled = false
- Install the Aspera gateway:
- Repeat the previous step to define an Aspera gateway connection on the remote gateway machine. Modify the gateway.toml file in
the directory that was created by the install:
- Linux
- From IBM Aspera fasp.io Gateway 1.1, the directory is /usr/local/etc/fasp.io/.
- Windows
- C:\Program Files\IBM\fasp.io Gateway\config\
Edit the file to set the remote gateway definitions:[[bridge]] name = "Outbound" [bridge.local] protocol = "tcp" host = "9.20.193.107" port = 1500 tls_enabled = false [bridge.forward] protocol = "fasp" host = "9.20.192.115" port = 1600 tls_enabled = false [[bridge]] name = "Inbound" [bridge.local] protocol = "fasp" host = "9.20.193.107" port = 1600 tls_enabled = false [bridge.forward] protocol = "tcp" host = "9.20.121.5" port = 1414 tls_enabled = false
- At each end of the connection, change the channel definition to connect to the port that the
local gateway is listening on.
- Change the queue manager channel on the local queue manager to connect to the local Aspera gateway using conname 9.20.193.107(1500).
- Change the queue manager channel on the remote queue manager to connect to the remote Aspera gateway using conname 9.20.192.115(1500).
- Start the local gateway by running the following command on the local gateway machine:
-
systemctl start fasp.io-gateway
-
net start fasp.io-gateway
-
- Start the remote gateway by running the following command on the remote gateway machine:
-
systemctl start fasp.io-gateway
-
net start fasp.io-gateway
-
- Restart the channels.
What to do next
The Aspera gateway passes on the data it receives, without interpreting it in any way. This means that you can configure TLS between the queue manager channels that are using the Aspera gateway because the gateway connection is unaware of the TLS handshaking. This also means that queue managers on any supported IBM MQ platform can use the Aspera gateway.
To use a multi-instance queue manager with the gateway, configure gateway definitions for each instance of the queue manager.