- Home
- Load Balancing Software
- MetalLB
MetalLB
What it is
MetalLB provides a network load balancer for Kubernetes clusters that do not run on a cloud provider. It assigns service IP addresses from operator-configured pools and announces them using ARP, NDP, or BGP, depending on the selected mode. In layer 2 mode, one cluster machine announces a service IP using ARP for IPv4 or NDP for IPv6. BGP mode peers cluster machines with nearby routers and can distribute traffic across multiple nodes. The recommended FRR-K8s mode supports BFD, IPv6, and merging additional FRR configuration. MetalLB is free and open source, with no paid plans listed. Installation options include Kubernetes manifests, Kustomize, Helm, or an Operator from OperatorHub. It remains idle until configured with resources such as an IPAddressPool in its deployment namespace. Requirements include Kubernetes 1.13.0 or later, a compatible cluster network, and IPv4 addresses. The project describes itself as beta, and its configuration format may change incompatibly. Its compatibility page lists AWS, Azure, DigitalOcean, and Google Cloud as unsupported.
For and against
For
- Free and open source.
- Supports ARP, NDP, and BGP announcements.
- BGP can distribute traffic across multiple nodes.
- Installable through manifests, Kustomize, Helm, or OperatorHub.
Against
- Project is in beta; configuration may change incompatibly.
- Requires Kubernetes 1.13.0 or later and IPv4 addresses.
- Generally incompatible with cloud providers.
- Speaker pod requires elevated permissions.
The verdict
MetalLB offers multiple announcement modes for Kubernetes service addresses and has no paid plan listed. Its beta status, setup requirements, and stated cloud incompatibilities are important constraints to consider.
Who it suits
MetalLB suits operators who need load balancing for Kubernetes clusters outside cloud-provider environments. It may fit teams able to configure IP address pools and meet its cluster requirements.
Plans and prices
MetalLB
No paid plans listed; open source project for Kubernetes load balancing
Read 4 Oct 2026 · metallb.io
On the record
- Address allocation
- It assigns and unassigns service IPs from address pools configured by the operator.metallb.io · read 4 Oct 2026
- Announcement modes
- It announces service addresses using ARP, NDP, or BGP, depending on the selected mode.metallb.io · read 4 Oct 2026
- BGP
- BGP mode peers cluster machines with nearby routers and can distribute traffic across multiple nodes.metallb.io · read 4 Oct 2026
- BGP backend
- The recommended FRR-K8s mode supports BFD, IPv6, and merging additional FRR configuration.metallb.io · read 4 Oct 2026
- Cloud compatibility
- MetalLB is generally incompatible with cloud providers; its compatibility page lists AWS, Azure, DigitalOcean, and Google Cloud as unsupported.metallb.io · read 4 Oct 2026
- Community and support
- The project provides a users mailing list and Slack channel, and ongoing development and maintenance are led by project maintainers.metallb.io · read 4 Oct 2026
- Configuration
- MetalLB remains idle until configured with resources such as IPAddressPool in its deployment namespace.metallb.io · read 4 Oct 2026
- Install options
- MetalLB can be installed using Kubernetes manifests, Kustomize, or Helm; an Operator is also available on OperatorHub.metallb.io · read 4 Oct 2026
- Layer 2
- In layer 2 mode, one cluster machine announces a service IP using ARP for IPv4 or NDP for IPv6.metallb.io · read 4 Oct 2026
- Maturity
- MetalLB describes itself as a beta project and says its configuration format may change incompatibly as the project develops.metallb.io · read 4 Oct 2026
- Purpose
- MetalLB provides a network load balancer for Kubernetes clusters that do not run on a cloud provider.metallb.io · read 4 Oct 2026
- Requirements
- The project lists Kubernetes 1.13.0 or later, a compatible cluster network, and IPv4 addresses as requirements.metallb.io · read 4 Oct 2026
- Runtime privileges
- The speaker pod requires elevated permissions for its network functions.metallb.io · read 4 Oct 2026
- Security changes
- Release notes report read-only root filesystems and disabled privilege escalation for containers that lacked those settings, and a fix for CVE-2025-22874.metallb.io · read 4 Oct 2026