We are using TCP Google Cloud Loadbalancer for one of our services.

The architecture is the following: There is a TCP load balancer on which a range of ports are allowed on frontend and its backend instances are connected and there instances services are running on same port which is open on LB.

For example: LB IP - i.e, range of ports are open. Now on backend 3 instances are running and there service are running on port 100, 101 and 103 on them.

As a user, if you want to access the service running on port 100 you have to use LB IP:100 to access the services. But from past few days the request is getting drop. However if you tried to connect directly on instance IP:100 service will work well. hence, I am not able to figure it out the exact cause. The requests are also a TCP based then why LB is dropping it.

Please suggest me with some inputs. Note: Is there any way to check the LB logs from the GCloud or Console ???

  • 1
    Are you facing this issue with merely one instance or all of them? Do you have an health check monitoring the instances? If you want you can open a private Google issue and I will take a look into your project. Register it here issuetracker.google.com/issues/new?component=187164 and post in the comment the link (Disclaimer: I work for Google Cloud Platform Support) – GalloCedrone Feb 18 '18 at 9:49
  • I'm seeing the same issue. Did you ever find a resolution? – Sean Jul 5 '18 at 22:25
  • 1
    @Sean, My issue was not due to LB, Actually LB works on different algorithms like round robin. In my case the LB was in round robin hence, LB was just passing the request instead of knowing the back end server status and In back-end only one server was running hence, Request was getting drop. I just configured one more instance under same LB and issue got resolve. Hope this will be helpful. – Chandan Kashyap Jul 7 '18 at 5:07

Posting OP's own answer for better visibility:

My issue was not due to LB.

My LB uses round robin algorithm it was just passing the request without checking back-end server status. Only one of my servers was running so half of the requests were getting dropped.

I just configured one more instance under same LB and issue got resolved.

This kind of solution is the most "crude" and it doesn't provide any failsafe. If any server goes down some requests will be dropped and the service will be downagraded.

Most simple solution to avoid that would be to create a managed instance group and use health-checks to verify if all VM's are running and then create a Load Balancer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.