MetalLB
- Canonical Kubernetes
Channel | Revision | Published | Runs on |
---|---|---|---|
latest/stable | 23 | 16 Dec 2024 | |
latest/candidate | 23 | 13 Dec 2024 | |
latest/beta | 21 | 15 Aug 2024 | |
latest/edge | 22 | 16 Aug 2024 | |
1.31/stable | 23 | 16 Dec 2024 | |
1.31/candidate | 23 | 13 Dec 2024 | |
1.31/beta | 21 | 15 Aug 2024 | |
1.31/edge | 22 | 16 Aug 2024 | |
1.30/stable | 17 | 11 Jul 2024 | |
1.30/beta | 17 | 21 Jun 2024 | |
1.30/edge | 18 | 22 Jun 2024 | |
1.29/stable | 16 | 17 Apr 2024 | |
1.29/candidate | 16 | 15 Apr 2024 | |
1.29/beta | 15 | 17 Apr 2024 | |
1.29/edge | 15 | 06 Mar 2024 | |
1.28/stable | 12 | 26 Sep 2023 | |
1.28/candidate | 12 | 22 Sep 2023 | |
1.28/beta | 4 | 07 Aug 2023 | |
1.28/edge | 9 | 10 Aug 2023 |
juju deploy metallb
Deploy universal operators easily with Juju, the Universal Operator Lifecycle Manager.
Platform:
How to Migrate from Split
With the charms available through 1.27/stable
channels, one would typically create a model named metallb-system
and deploy the 2 charms (metallb-controller
and metallb-speaker
) into that model, since juju maps a model name into a kubernetes namespace. While operating in this namespace isn’t a hard requirement for metallb, it is the suggested namespace.
Starting in 1.28/stable
, this two charm deployment has been unified into a single charm which applies the upstream manifests into the system and manages those manifests, rather than directly managing the sidecar containers. The following is the process to use this new charm.
Basic Steps
First create a new model (call it whatever is preferred) so long as it is not named metallb-system
and deploy the charm into that model.
juju add-model juju-metallb
juju deploy metallb --channel 1.28/stable --trust --config namespace=metallb-system-2
Next, wait until the metallb charm is active/idle
juju status -m juju-metallb --watch=1s
Once stable, the new MetalLB installation will take over managing existing LoadBalancer services, and the model containing the old charms may be deleted.
juju switch metallb-system
juju remove-application metallb-speaker
juju remove-application metallb-controller
Once the model is empty, it should be safe to remove the model
juju destroy-model metallb-system --no-prompt