google-compute-enginegoogle-cdn

Google Load-Balancing CDN


I am using the Google Load-Balancer with the CDN option enabled.

When I setup the Backend Configuration for the load-balancer, I setup a backend with instances in US-Central, US-West and US-East.

Everything is working great, except all traffic is being routed only to the US-West backend service.

Does the load-balancer option route traffic to the closest backend service?

I see that there is an advanced menu in the load balancer for creating forwarding rules, target proxies and more.

Is there something I need to do to make my load-balancer load closest to client?

If they are in Florida and the CDN does not have the file, they get routed to the US-East VM Instance?

If that is not possible, it seems like having only an US-Central server would better than having US-Central, US-East and US-West? That way East Coast misses are not going to the West Coast to get the file. Everything will pull from the central location.

enter image description here

Unless there is a way to route traffic from the load-balancer to the closest VM instance, it seems as if the only solution would be to create different load balancers with the CDN enabled and use DNS routing to point to the CDN pool that is closest.

That setup would use 3 different CDN ip address's, 3 Compute Engine ip address's and dns latency or location routing. If they are in Florida, route them to the Google Load Balancer CDN in the east coast.

I'm not sure that would be a good solution on top of the Anycast ip routing. It seems like overkill.

Thank you for listening and any help or guidance would be appreciated.

"By default, to distribute traffic to instances, Google Compute Engine picks an instance based on a hash of the source IP and port and the destination IP and port."

Similar question: Google compute engine load balancing not routing properly Except all traffic in a live environment is all going to the same VM instance.

I am using the Google CDN Frontend Anycast ip address.


I think Elving is right and there may be a mis-configuration. Here is a screen shot of the VM instances in the Google Cloud. It says the two instances aren't in use.

Here is another picture of the Instances Groups. I don't see a clear way to make the instances attached to the instance groups.

enter image description here

enter image description here


Solution

  • The load balancer will automatically route traffic to the nearest instance group with capacity. You don't need to do anything other than configure your backend service to use multiple instance groups.

    There's more information at https://cloud.google.com/compute/docs/load-balancing/http/.