When configuring a Google Cloud Load Balancer, I'm presented with the option to add multiple Network Endpoint Groups to my Backend Services.
A lot of the literature around Cloud Load Balancing focuses on the geographic distribution of request across identical services representing one boundary deployed across different locations.
Google Cloud documentation mentions that serverless Network Endpoint Groups are "A Cloud Run service or a group of services sharing the same URL pattern." I'm not 100% sure what is meant by "the same URL pattern", but if that means something like "are the same application" or "have the same routes", would this rule also apply to the Backend Services or can Backend Services be comprised of Network Endpoint Groups with different "URL patterns"?
In my applications case, we use multiple regions for compliance with data residency requirements where each region represents a separate boundary with different data. This means our application logic switches DNS (api-ca
, api-us
) based the user consciously selecting which region to store their data in.
With that established, my specific questions are:
- Given that they are not interchangeable, does it still make sense to configure my Network Endpoint Groups for all my regions under a single Backend Service?
- Keep in mind that I'm also working under the constraint that Google Cloud appears to have a tight quota on Backend Services.
Please note:
- The reason why I need to use cloud load balancing is because at least one of the regions we deploy a Google Cloud Run service to does not support custom domain mappings.