metallb: Migrate to kustomize + helm

This commit is contained in:
2025-07-12 18:38:50 +03:00
parent c7cb495451
commit a03ea7d208
6 changed files with 36 additions and 48 deletions

View File

@@ -1,29 +0,0 @@
# MetalLB
## Background
MetalLB exposes services to the outside world.
## Deployment
To update manifests:
```
curl -O https://raw.githubusercontent.com/metallb/metallb-operator/v0.14.2/bin/metallb-operator.yaml
kubectl apply -f metallb-operator.yaml
kubectl apply -f application.yml
```
Set up BGP secrets:
```
kubectl delete secret -n metallb-system mikrotik-router
kubectl create secret -n metallb-system generic mikrotik-router --type=kubernetes.io/basic-auth --from-literal=password=...
```
Eventually the external IP should show up here:
```
kubectl get svc -n traefik
```

15
metallb/README.md Normal file
View File

@@ -0,0 +1,15 @@
# MetalLB
## Derployment
With ArgoCD. Render it locally:
```sh
kustomize build . --enable-helm
```
Eventually the external IP should show up here:
```
kubectl get svc -n traefik
```

View File

@@ -1,23 +1,4 @@
---
apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: monitoring
namespace: metallb-system
spec:
selector: {}
podMetricsEndpoints:
- port: monitoring
---
apiVersion: metallb.io/v1beta1
kind: MetalLB
metadata:
name: metallb
namespace: metallb-system
spec:
nodeSelector:
node-role.kubernetes.io/worker: ""
---
# Slice of the private Zoo subnet using MetalLB L2 method
apiVersion: metallb.io/v1beta1
kind: IPAddressPool

View File

@@ -0,0 +1,17 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: metallb-system
# spec: https://kubectl.docs.kubernetes.io/references/kustomize/builtins/#_helmchartinflationgenerator_
helmCharts:
- includeCRDs: true
name: &name metallb
releaseName: *name
repo: https://metallb.github.io/metallb
valuesFile: values.yaml
version: 0.15.2
resources:
- ssh://git@git.k-space.ee/secretspace/kube/metallb # secrets (.env): mikrotik-router
- ./application-extras.yaml

4
metallb/values.yaml Normal file
View File

@@ -0,0 +1,4 @@
prometheus:
rbacPrometheus: false
serviceMonitor:
enabled: true