Skip to content
SPECIFICTION
Get listed

MetalLB

metallb.io

Free plan LinuxSelf-hosted
Visit metallb.io
Spec score 7.5 #7 of 32 in Load Balancing Software

What it is

MetalLB provides network load balancing for Kubernetes clusters that do not run on a cloud provider. It assigns service IP addresses from operator-configured pools and announces them through ARP, NDP, or BGP, depending on the chosen mode. In layer 2 mode, one cluster machine announces an address using ARP for IPv4 or NDP for IPv6. In BGP mode, cluster machines peer with nearby routers, which can distribute traffic across multiple nodes. The recommended FRR-K8s mode supports BFD, IPv6, and merging additional FRR configuration. MetalLB is open source, with no paid plans listed. Installation options include Kubernetes manifests, Kustomize, Helm, and an Operator on OperatorHub. After installation 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 lists AWS, Azure, DigitalOcean, and Google Cloud as unsupported and says it is generally incompatible with cloud providers. MetalLB describes itself as a beta project and cautions that its configuration format may change incompatibly as development continues.

Spec sheet

Purpose
MetalLB provides a network load balancer for Kubernetes clusters that do not run on a cloud provider.Read 4 Oct 2026 · metallb.io
Address allocation
It assigns and unassigns service IPs from address pools configured by the operator.Read 4 Oct 2026 · metallb.io
Announcement modes
It announces service addresses using ARP, NDP, or BGP, depending on the selected mode.Read 4 Oct 2026 · metallb.io
BGP
BGP mode peers cluster machines with nearby routers and can distribute traffic across multiple nodes.Read 4 Oct 2026 · metallb.io
BGP backend
The recommended FRR-K8s mode supports BFD, IPv6, and merging additional FRR configuration.Read 4 Oct 2026 · metallb.io
Cloud compatibility
MetalLB is generally incompatible with cloud providers; its compatibility page lists AWS, Azure, DigitalOcean, and Google Cloud as unsupported.Read 4 Oct 2026 · metallb.io
Community and support
The project provides a users mailing list and Slack channel, and ongoing development and maintenance are led by project maintainers.Read 4 Oct 2026 · metallb.io
Configuration
MetalLB remains idle until configured with resources such as IPAddressPool in its deployment namespace.Read 4 Oct 2026 · metallb.io
Install options
MetalLB can be installed using Kubernetes manifests, Kustomize, or Helm; an Operator is also available on OperatorHub.Read 4 Oct 2026 · metallb.io
Layer 2
In layer 2 mode, one cluster machine announces a service IP using ARP for IPv4 or NDP for IPv6.Read 4 Oct 2026 · metallb.io
Maturity
MetalLB describes itself as a beta project and says its configuration format may change incompatibly as the project develops.Read 4 Oct 2026 · metallb.io
Requirements
The project lists Kubernetes 1.13.0 or later, a compatible cluster network, and IPv4 addresses as requirements.Read 4 Oct 2026 · metallb.io
Runtime privileges
The speaker pod requires elevated permissions for its network functions.Read 4 Oct 2026 · metallb.io
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.Read 4 Oct 2026 · metallb.io

Plans and prices

MetalLB Free No paid plans listed; open source project for Kubernetes load balancing Read 4 Oct 2026 · metallb.io

Every MetalLB plan and price →

Strong points and limits

Strong points

  • Supports ARP, NDP, and BGP announcement modes.
  • BGP mode can distribute traffic across multiple nodes.
  • Install options include manifests, Kustomize, Helm, and OperatorHub.
  • The recommended FRR-K8s mode supports BFD and IPv6.

Limits

  • It is generally incompatible with cloud providers.
  • It remains idle until configured with resources such as IPAddressPool.
  • The project says its configuration format may change incompatibly.
  • The speaker pod requires elevated network permissions.

Who it suits

MetalLB is intended for operators of Kubernetes clusters that do not run on cloud providers and need service IP allocation and announcement. It suits teams able to configure cluster networking and address pools.

Verdict

MetalLB provides address allocation and announcement for non-cloud Kubernetes clusters, with layer 2 and BGP modes. Its requirements, cloud incompatibilities, and beta status are important deployment considerations.

Where Specifiction places it

Alternatives to MetalLBAll alternatives →