Configuring a connection to IBM Cloud Product Insights through a gateway

IBM® Integration Bus provides a facility that allows you to connect to the Product Insights service in IBM Cloud through a gateway.

Before you begin

Complete the steps described in Reporting startup and usage information to IBM Cloud Product Insights.

About this task

Optionally, you can route connections from IBM Integration Bus to the Product Insights service through a gateway, which enables you to use the facilities of the gateway to monitor and control the traffic that is being sent from IBM Integration Bus to Product Insights. If you choose to use the Product Insights gateway, refer to the IBM Cloud Product Insights documentation for information about how to download and configure it.

If you would prefer to connect to Product Insights through an HTTP proxy server, see Configuring a connection to IBM Cloud Product Insights through an HTTP proxy server. For information about connecting directly to the Product Insights service without routing through a proxy server or gateway, see Configuring an integration server to send startup and usage information to IBM Cloud Product Insights.

For more information about Product Insights, see IBM Cloud Product Insights overview.

Procedure

Follow these steps to enable your IBM Integration Bus integration servers to connect to the Product Insights service through your gateway:

  1. Check that the -j parameter on the mqsichangebluemixreporting command was used to configure your integration servers to route data through the gateway host, rather than the API host, as described in Configuring an integration server to send startup and usage information to IBM Cloud Product Insights.
  2. Typically, the connection to the gateway from IBM Integration Bus is via HTTPS. You must configure IBM Integration Bus to trust the public certificate of the gateway, as described in Setting up a public key infrastructure. If the certificate of the gateway is not trusted (for example, it is not signed by a public trust authority), you must import the gateway's certificate into the integration server truststore. For example, you could complete the following steps:
    1. Obtain the security certificate for the gateway.
      For information about how to obtain a certificate for the Product Insights gateway, refer to the IBM Cloud Product Insights documentation.
    2. Add the certificate to a JKS truststore to be used by your integration server.
      For example, if the certificate is in a file called gateway1-sscert.pem, you could create a JKS truststore by running the following command:
      keytool -import -file gateway1-sscert.pem -keystore server.truststore -storepass passw0rd

      This command creates a keystore file, with the name specified by the -keystore parameter. The -storepass parameter sets the password that must be used when accessing the generated keystore file. The value specified by the -storepass parameter must be the same as the value that you set in IBM Integration Bus through the -p parameter of the mqsisetdbparms command (in this example, passw0rd).

      The name of the keystore file, specified by the -keystore parameter, must match the value of the -v parameter specified in the mqsichangeproperties command in IBM Integration Bus. However, in the -keystore parameter you specify only the filename (and it is created in the current working directory), whereas the value that you specify in the mqsichangeproperties command must contain the fully-qualified path, such as C:\devel\WBI\C2C\PI_Gateway\server.truststore.

    If you are using the Product Insights gateway, refer to the IBM Cloud Product Insights documentation for information about how to replace the default self-signed certificates with your company's certificates.
  3. Use the mqsichangeproperties command to configure your integration server to use the JKS truststore, as shown in the following example:
    mqsichangeproperties myIntegrationNode1 -e myIntegrationServer1 -o ComIbmJVMManager -n truststoreFile -v C:\devel\WBI\C2C\PI_Gateway\server.truststore
    The -v parameter must contain the fully-qualified path to the Java truststore, which contains the public certificates that the integration server requires to establish trust with the gateway and any other services that it will connect to directly.
  4. Configure your integration server to use the password for this JKS truststore, as shown in the following examples:
    mqsichangeproperties myIntegrationNode1 -e myIntegrationServer1 -o ComIbmJVMManager -n truststorePass -v myIntegrationServer1::truststorePass
    mqsisetdbparms myIntegrationNode1 -n myIntegrationServer1::truststorePass -u user1 -p passw0rd
    The value specified by the -v parameter of the mqsichangeproperties command must match the value specified by the -n parameter of the mqsisetdbparms command. The -u parameter of the mqsisetdbparms command is not used in this case, and can be set to any value, such as user1.
  5. Restart the integration node for the changes to take effect, by using the mqsistart command.
    The configured integration servers will now connect to the Product Insights gateway, and the startup and usage information will be logged and routed on to the Product Insights service.

What to do next

You can use the mqsireportbluemixreporting command to view the current startup and reporting configuration for the integration server. For more information, see mqsireportbluemixreporting command.