Junior — Middle
Can you explain what MetalLB is and how it is used in Kubernetes for network load balancing?
sobes.tech AI
Answer from AI
MetalLB is a network load balancer for Kubernetes that provides LoadBalancer functionality in clusters where there is no built-in support for cloud load balancers (for example, on bare-metal or local clusters).
It works by allocating IP addresses from a specified pool and announcing them via BGP or ARP protocols so that external clients can access Kubernetes services of the LoadBalancer type.
Main features of MetalLB:
- BGP protocol support for integration with network infrastructure
- Layer 2 mode (ARP/NDP) for simple networks without BGP
- Management of an IP address pool for load balancing
Usage example:
- Install MetalLB in a Kubernetes cluster.
- Configure the IP address pool that MetalLB will use.
- Create a service of type LoadBalancer — MetalLB will assign it an external IP from the pool.
Thus, MetalLB allows ensuring the accessibility of Kubernetes services from outside with load balancing, which is especially important for on-premise clusters without cloud infrastructure.