2023-10-07 12:03:58 +00:00
|
|
|
# metallb-ip-floater
|
|
|
|
|
2023-10-20 19:57:19 +00:00
|
|
|
[![status-badge](https://woodpecker.uploadfilter24.eu/api/badges/7/status.svg)](https://woodpecker.uploadfilter24.eu/repos/7)
|
|
|
|
|
|
|
|
Checks metallb speaker pods if they announce some services. If they do, assign a given floating ip on hetzner to the k8s node that announces.
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
|
|
|
The deployment will use helm and the chart in `chart/metallb-ip-floater`.
|
|
|
|
You will need a hcloud api token and the name of your floating IP. Also your k8s nodes should be labeled in hcloud.
|
|
|
|
Expose these information to the floater as described in this example:
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
env:
|
|
|
|
- name: METALLB_IP_FLOATER_LABELSELECTOR
|
|
|
|
value: "kops.k8s.io/instance-role=Node"
|
|
|
|
- name: METALLB_IP_FLOATER_HCLOUD_TOKEN
|
|
|
|
value: "define_it"
|
|
|
|
- name: METALLB_IP_FLOATER_FLOATING_IP_NAME
|
|
|
|
value: "define_it"
|
|
|
|
```
|
|
|
|
|
|
|
|
you can also create a secret manually with these information and reference the existing secret like this in the `values.yaml`:
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
externalConfigSecret:
|
|
|
|
enabled: true
|
|
|
|
name: "my-existing-secret"
|
|
|
|
```
|
|
|
|
|
|
|
|
Now you are able to deploy:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
kubectl create namespace metallb-ip-floater
|
|
|
|
cd chart/metallb-ip-floater
|
|
|
|
helm upgrade --install -f values.yaml -n metallb-ip-floater metallb-ip-floater ./
|
|
|
|
```
|
|
|
|
|
|
|
|
> Made with ♡ by the folkes at uploadfilter24.eu :)
|