Skip to main content

Troubleshooting Load Balancing

This document describes how to troubleshoot Load Balancing service-related issues.


Problems with services not working through connected load balancers

If you are unable to communicate with the private IP or public IP of the load balancer, please check the following.

If the security group of the target connected to the load balancer does not allow traffic

▶ Set up communication with the health check IP of the load balancer and the instance.
The load balancer must be able to communicate with the health check IP of the instance for health check and service connection of the target (instance).
To do this, you must add an inbound rule to the security group of the target (instance) to allow communication with the health check IP.

  • For more information, refer to Allow health check IP communication. You can check the health check IP in KakaoCloud Console > Beyond Networking Service > Load Balancing > Target Group > Target tab > Health Check IP by subnet.

▶ Set the inbound rules for the security group.
When setting the inbound rules for the security group, you must set the protocol and port number that match the service and health check type. For example, if the service port is 80 and the health check type is Ping, you must allow the following inbound rules.

ProtocolSourcePort number
TCP{Health Check IP 1}/3280
TCP{Health Check IP 2}/3280
ICMP{Health Check IP 1}/32ALL
ICMP{Health Check IP 2}/32ALL

If the target service is not running

▶️ Check whether the application is running.

When registering a target in the target group of the load balancer within the target (instance), the application using the set port must be operating normally.

If the status of the target is unhealthy

▶️ Check if the HTTP status code set for the health check matches the status code returned by the web server.

Even if the security group settings and service status are both normal and the health check is running when checking the packet within the target, the status of the target may be unhealthy.
If the health check is set to the HTTP protocol, you need to check if the HTTP status code set for the health check matches the status code returned by the web server.

  • For example, if the HTTP status code set for the health check is 200~399 and the status code returned by the web server is 500, the status of the target will be unhealthy.