Network Requirements for Gatling Control Plane and Private Locations

Network Configuration

This guide provides clear instructions for configuring network access for both the Control Plane and Private Locations.

Network Requirements

You must permit outbound access to the Gatling Cloud API served from https://api.gatling.io from the following components:

  • your control plane
  • your private locations, as configured by the control plane

api.gatling.io uses the following static IPv4 addresses that you can allow in your network configuration:

  • 15.236.15.177
  • 51.44.121.66
  • 52.47.87.192

Configuring a Forward Proxy

This section describes how to have all the outbound requests from Gatling Enterprise components go through a forward proxy or an API gateway.

Forward Proxy for the Control Plane

The Control Plane configuration supports the setup of a forward proxy.

Here’s how to configure it in the control-plane section of your configuration:

control-plane {
  # Authentication token
  token = "cpt_example_c7oze5djp3u14a5xqjanh..." 
  # Enterprise Cloud Network Configuration
  enterprise-cloud {
    # Forward Proxy URL
    url = "http://private-control-plane-forward-proxy/gatling"
  }
  locations = [] 
}

Forward Proxy for Private Locations

Private Locations can also be configured to use a forward proxy. You have two options:

1. Use the Same Forward Proxy as the Control Plane

You can reuse the Control Plane’s forward proxy configuration by leveraging HOCON substitutions.

control-plane {
  # Authentication token
  token = "cpt_example_c7oze5djp3u14a5xqjanh..." 
  # Control Plane Enterprise Cloud Network Configuration
  enterprise-cloud {
    # Forward Proxy URL
    url = "http://private-control-plane-forward-proxy/gatling"
  }
  # Private Locations
  locations = [
    {
      # Private Location ID
      id = "prl_example"
      # Private Location using Control Plane Enterprise Cloud Network Configuration
      enterprise-cloud = ${control-plane.enterprise-cloud}
    }
  ]
}

2. Use a Dedicated Forward Proxy for Private Locations

If you prefer separate proxies, define a substitution for the private locations and reference it in their configuration.

location-enterprise-cloud = {
  url = "https://location-forward-proxy/gatling"
}

control-plane {
  # Authentication token
  token = "cpt_example_c7oze5djp3u14a5xqjanh..." 
  # Control Plane Enterprise Cloud Network Configuration
  enterprise-cloud {
    # Forward Proxy URL
    url = "http://private-control-plane-forward-proxy/gatling"
  }
  # Private Locations
  locations = [
    {
      # Private Location ID
      id = "prl_example_a"
      # Private Location Enterprise Cloud Network Configuration
      enterprise-cloud = ${location-enterprise-cloud}
    },
    {
      # Private Location ID
      id = "prl_example_b"
      # Private Location Enterprise Cloud Network Configuration
      enterprise-cloud = ${location-enterprise-cloud}
    }
  ]
}

Key Notes

  • Host Header Rewriting: Ensure all configured forward proxies rewrite the host header to api.gatling.io. This is a mandatory requirement for proper communication.
  • Configuration Simplification: Take advantage of HOCON substitutions to reuse and simplify configuration settings, minimizing redundancy and reducing maintenance effort.
  • Proxy Separation: Decide whether to use a single proxy for both the Control Plane and Private Locations or separate proxies for each, based on your infrastructure needs.

Edit this page on GitHub