Set a Dedicated Load Balancer URL for Anypoint Datagraph

If you’re unable to use Port 8082 on a CloudHub shared load balancer, you must set a URL for Anypoint DataGraph to use on a dedicated load balancer (DLB).

To set the URL, add a DLB mapping rule to the Anypoint DataGraph configuration.

Example Mapping Rules for a DLB URL

Based on the way DLB mapping rules work, you must configure the Input Path (Input URI) and the Output Path (App URI) so that the final DLB URL is able to access the endpoint of the Anypoint DataGraph application, which is /graphql.

For example, consider the following mapping rules for examplelb.lb.anypointdns.net depending on the value of the Input Path and a Datagraph app name of datagraph-xz082edx-1585-901xe374-d0x0:

Index Input URI (Input Path) App name App URI (Output Path) Protocol

0

/graphql

datagraph-xz082edx-1585-901xe374-d0x0

/graphql

HTTPS

1

/datagraph/

datagraph-xz082edx-1585-901xe374-d0x0

/graphql

HTTPS

2

/datagraph/

datagraph-xz082edx-1585-901xe374-d0x0

/

HTTPS

3

/{app}/

{app}

/

HTTPS

For each index, the appropriate DLB URL is:

  • Index 0: examplelb.lb.anypointdns.net/graphql

  • Index 1: examplelb.lb.anypointdns.net/datagraph/

  • Index 2: examplelb.lb.anypointdns.net/datagraph/graphql

  • Index 3: examplelb.lb.anypointdns.net/datagraph-xz082edx-1585-901xe374-d0x0/graphql

Prerequisites

To complete this task, you:

  1. Use the Anypoint CLI to gather details about your DLB and Anypoint DataGraph.

  2. Use Anypoint Runtime Manager to create a mapping rule for the DLB.

  3. Use the Anypoint CLI to add the DLB configuration to Anypoint DataGraph.

Gather Details about the DLB and Anypoint DataGraph

Gather the name of your DLB and the app name for Anypoint DataGraph.

  1. Connect to the Anypoint CLI using your Anypoint Platform username and password.

  2. If you did not previously set the environment, do so with the following command:

    use environment <environment name>

  3. Get the name of the DLB:

    cloudhub load-balancer describe <dlb name>

    The expected output resembles:

    Name | examplelb

  4. Get the CloudHub domain for the Anypoint DataGraph app name:

    datagraph load-balancer-config describe

    The expected value resembles:

    Domain | datagraph-xz082edx-1585-901xe374-d0x0

    The DataGraph app name contains elements from your org ID and the environment ID.

  5. Note the values for steps 3 and 4.

Create a Mapping Rule for the DLB

You set up the mapping rule in Runtime Manager.

  1. From Anypoint Platform, select Runtime Manager.

  2. From the navigation menu, select Load Balancers.

  3. Click a load balancer name, and then click a certificate name.

    Ensure your load balancer has a valid, CA-signed certficate, or the browser won’t connect to Anypoint DataGraph.

  4. In the URL Mapping Rules section, click Add New Rule.

  5. Complete the fields with the following values:

    • Input Path (inputUri): The URI that the client requests: for example, /{app}/

    • Target App (appName): The domain for the Anypoint DataGraph application discovered in Step 4 of the gathering details task

    • Output Path (appURI): The URI string to pass to Anypoint DataGraph; for example / or /graphql

    • Protocol (upstreamProtocol): https

      Anypoint DataGraph supports only HTTPS.

Add the DLB Configuration to Anypoint DataGraph

After you add the mapping rule, you configure the DLB for use with Anypoint Datagraph.

  1. Check the DLB URL for Anypoint DataGraph:

    datagraph load-balancer-config describe

    By default, no value is returned for dlbUrl if you haven’t previously configured a DLB for that Anypoint DataGraph environment.

  2. Add the new DLB URL:

    datagraph load-balancer-config add <url>

    Replace <url> with a valid URL that includes the DLB name and DataGraph app name (gathered in Steps 3 and 4 of the gathering details task) and the mapping rule Input Path, for example:

    datagraph load-balancer-config add examplelb.lb.anypointdns.net/datagraph/graphql
  3. Validate that the value was updated:

    datagraph load-balancer-config describe

    The CLI returns details that include the application name for the Anypoint DataGraph load balancer and the full domain name for the DLB.

After you add this change, Anypoint DataGraph re-deploys, and you must wait for the status indicator to indicate that Anypoint DataGraph is up to date.

Remove the DLB Configuration from Anypoint DataGraph

You can remove the DLB configuration using the following command:

datagraph load-balancer-config remove

When you remove the configuration, Anypoint DataGraph redeploys.

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub