add traefik to loadbalancer

This commit is contained in:
Márcio Fernandes
2026-07-12 11:54:03 +00:00
parent da816bbf14
commit 89a7646085
12 changed files with 75 additions and 49 deletions
-9
View File
@@ -1,9 +0,0 @@
# traefik
## Setup
Using flux for reconciliation.
``` bash
kubectl kustomize ./deploy/flux | kubectl apply -f -
```
@@ -1,5 +0,0 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: traefik-icarus
resources:
- app-sync.yaml
@@ -0,0 +1,69 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: traefik
spec:
releaseName: traefik
interval: 40h
chart:
spec:
chart: traefik
version: 40.x.x
sourceRef:
kind: HelmRepository
name: traefik
namespace: kube-system
interval: 40h
values:
nodeSelector:
kubernetes.io/hostname: casa-mini-minion-01
tolerations:
- key: "infra.limbosolutions.com/dedicated"
operator: "Equal"
value: "casa-mini-minion-01"
effect: "NoSchedule"
ingressClass:
enabled: true
isDefaultClass: true
name: traefik
service:
enabled: true
type: LoadBalancer
spec:
externalTrafficPolicy: Cluster
loadBalancerIP: 192.168.14.200
ports:
web:
port: 80
exposedPort: 80
expose:
default: true
protocol: TCP
websecure:
port: 443
exposedPort: 443
expose:
default: true
protocol: TCP
providers:
kubernetesCRD:
enabled: true
allowCrossNamespace: false
namespaces: []
ingressClass: traefik-icarus
kubernetesIngress:
enabled: true
ingressClass: traefik-icarus
additionalArguments:
- "--providers.kubernetesingress.ingressclass=traefik"
- "--providers.kubernetescrd.ingressClass=traefik"
- "--providers.kubernetescrd.allowEmptyServices=false"
- "--providers.kubernetesingress.ingressendpoint.ip=192.168.14.200"
@@ -1,31 +0,0 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: traefik
spec:
releaseName: traefik
interval: 40h
chart:
spec:
chart: traefik
version: 40.x.x
sourceRef:
kind: HelmRepository
name: traefik
namespace: kube-system
interval: 40h
values:
nodeSelector:
kubernetes.io/hostname: casa-mini-minion-01
tolerations:
- key: "infra.limbosolutions.com/dedicated"
operator: "Equal"
value: "casa-mini-minion-01"
effect: "NoSchedule"
ingressClass:
enabled: true
isDefaultClass: true
name: traefik
@@ -2,12 +2,13 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: traefik
namespace: traefik
spec:
interval: 1m
sourceRef:
kind: GitRepository
name: casa
namespace: casa-limbosolutions-com
path: services/traefik/deploy/app
path: services/traefik/deploy/app/default
prune: true
@@ -2,11 +2,12 @@ apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: traefik-icarus
namespace: traefik-icarus
spec:
interval: 1m
sourceRef:
kind: GitRepository
name: casa
namespace: casa-limbosolutions-com
path: services/traefik-icarus/deploy/app
path: services/traefik/deploy/app/icarus
prune: true
@@ -1,5 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: kube-system
resources:
- app-sync.yaml
- default-sync.yaml
- icarus-sync.yaml