2018-09-04 12:17:23 +00:00
|
|
|
# Deploy MetalLB into Kubespray/Kubernetes
|
2020-05-18 08:17:36 +00:00
|
|
|
|
|
|
|
MetalLB hooks into your Kubernetes cluster, and provides a network load-balancer implementation.
|
|
|
|
In short, it allows you to create Kubernetes services of type "LoadBalancer" in clusters that
|
|
|
|
don't run on a cloud provider, and thus cannot simply hook into paid products to provide load-balancers.
|
2020-08-05 08:52:40 +00:00
|
|
|
This addon aims to automate [MetalLB in layer 2 mode](https://metallb.universe.tf/concepts/layer2/)
|
|
|
|
or [MetalLB in BGP mode][https://metallb.universe.tf/concepts/bgp/].
|
|
|
|
It deploys MetalLB into Kubernetes and sets up a layer 2 or BGP load-balancer.
|
2018-09-04 12:17:23 +00:00
|
|
|
|
|
|
|
## Install
|
2019-06-11 07:20:21 +00:00
|
|
|
|
2020-07-02 14:12:54 +00:00
|
|
|
In the default, MetalLB is not deployed into your Kubernetes cluster.
|
2020-08-05 08:52:40 +00:00
|
|
|
You can override the defaults by copying the contents of roles/kubernetes-apps/metallb/defaults/main.yml
|
|
|
|
to somewhere in inventory/mycluster/group_vars such as inventory/mycluster/groups_vars/k8s-cluster/addons.yml
|
|
|
|
and updating metallb_enabled option to `true`.
|
2020-07-02 14:12:54 +00:00
|
|
|
In addition you need to update metallb_ip_range option on the addons.yml at least for suiting your network
|
|
|
|
environment, because MetalLB allocates external IP addresses from this metallb_ip_range option.
|