A load balancer is used to distribute as efficiently as possible thecharge that servers or virtual machines need to process. In this way, the overall performance can be increased. As a general rule, the load balancer is placed upstream of the servers in order to avoid overloading certain servers and to guarantee optimal use of the available resources. Even in the event of a server failure, the load balancer ensures that the system runs smoothly by redirecting requests in a targeted manner.
Kubernetes load balancers work on the same principle, but work slightly differently. For Kubernetes, however, a distinction must be made between two different types of load balancers:
- Internal Kubernetes load balancer
- External Kubernetes load balancer