Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Issues setting up a multiicluster gateway

I am trying to transform my environment setup from a single cluster to a multi-cluster setup. We have a set of support applications used by us that deploy an application for each of our customers. Our idea is to have a host cluster that contains our support applications and then the applications that the customers use will be on a second cluster (and a third and so on when they get overcrowded). 


We have followed this guide https://cloud.google.com/kubernetes-engine/docs/how-to/deploying-multi-cluster-gateways#external-gat... and deployed the `external-gateway` and the `wheremai` test application. And that works fine, we can access the `wheremai` application from both clusters with no problem. Then we deployed one of our support applications in the exact same way as the dummy `wheremai` API with a `Service` and `ServiceExport` and then we added an `HTTPRoute` that points to our application. That `HTTPRoute` created a backend in our load balancer but the health check comes as `0 of 1` for some reason. We have checked and our application is running fine and we can make requests to it (using curl) and get a response back. In the networking endpoint we get the following error:

itetradev_0-1670507993890.png

Are we missing something here? Why does the health check not work which in turn stops the gateway from routing traffic to the application?

 

We are running the project in a Shared VPC set up so we have also followed this guide to enable it: https://cloud.google.com/kubernetes-engine/docs/how-to/msc-setup-with-shared-vpc-networks

 

EDIT:

After a long time of trying I have managed to fix this issue. To fix it I had to create an endpoint in my API that returns HTTP 200 Code for the health check. I have created an endpoint on "/health" and "/" as I wasn't sure which one it was looking for.

 

Solved Solved
1 1 417
1 ACCEPTED SOLUTION

After a long time of trying I have managed to fix this issue. To fix it I had to create an endpoint in my API that returns HTTP 200 Code for the health check. I have created an endpoint on "/health" and "/" as I wasn't sure which one it was looking for.

View solution in original post

1 REPLY 1

After a long time of trying I have managed to fix this issue. To fix it I had to create an endpoint in my API that returns HTTP 200 Code for the health check. I have created an endpoint on "/health" and "/" as I wasn't sure which one it was looking for.

Top Labels in this Space