Hey there, I'm deploying traefik as an ingress controller on a Digitalocean K8s cluster. Used the latest helm chart for that:
version: 10.20.0
appVersion: 2.7.0
I used a pre-uploaded TLS certificate on Digitalocean for the ingress loadbalancer by way of annotations:
--set service.annotations."service\.beta\.kubernetes\.io/do-loadbalancer-certificate-id"="<some-id>" \
I've been trying to make http-to-https redirection works, but so far it only works from within the traefik container.
On calling the DNS name of the ingress loadbalancer with http, it only returns an empty response. Works fine with https.
Also, the dashboard doesn't work. I understand that the ingressroute
for it references a traefikService
but no such resource is created in the k8s cluster!!!
Edit 1:
Attaching the used helm command.
helm upgrade -i -n traefik --create-namespace traefik traefik/traefik \
--set service.annotations."service\.beta\.kubernetes\.io/do-loadbalancer-protocol"="https" \
--set service.annotations."service\.beta\.kubernetes\.io/do-loadbalancer-certificate-id"="<some-id>" \
--set ingressClass.enabled=true \
--set ingressRoute.dashboard.annotations."kubernetes\.io/ingress\.class"="traefik" \
--set providers.kubernetesCRD.allowCrossNamespace=true \
--set ports.web.redirectTo=websecure
Edit 2:
I've come across a Digitalocean annotation that does this redirection on the level of the loadbalancer, but I'm curious to know why it doesn't work when using only the traefik configuration!