I am a tad new-ish to k8s and trying to set up Redmine on Amazon EKS cluster using Traefik. I lack a tad of understanding as to how the controller will pick up the ingress, especially given that the ingress is in the redmine namespace and the controller resides in it's own namespace. Below are my settings: Traefik Ingress Controller:
traefik:
providers:
kubernetesCRD:
allowCrossNamespace: false
kubernetesIngress:
enabled: false
logs:
general:
level: INFO
access:
enabled: true
ports:
web:
redirectTo: websecure
service:
annotations:
"service.beta.kubernetes.io/aws-load-balancer-type": nlb
"service.beta.kubernetes.io/aws-load-balancer-ssl-cert": "aws-arn-id"
"service.beta.kubernetes.io/aws-load-balancer-ssl-ports": "443"
spec:
externalTrafficPolicy: Local
ingressRoute:
dashboard:
enabled: false
I disabled the ingress that came with the redmine config and created my own as I wanted traffic re-directed to https:
---
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: redirect-https
spec:
redirectScheme:
scheme: https
permanent: true
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.entrypoints: web, websecure
traefik.ingress.kubernetes.io/router.middlewares: redmine-redirect-https@kubernetescrd
name: redmine-ingress
namespace: redmine
spec:
rules:
- host: redmine.mydomain.org
http:
paths:
- backend:
service:
name: mydomain-redmine
port:
number: 80
path: /
pathType: ImplementationSpecific
and my ingress and service deployment file config for Redmine:
redmine:
fullnameOverride: "mydomain-redmine"
service:
type: LoadBalancer
port: 80
annotations: {}
ingress:
enabled: false
I know there's something amiss but not sure what that is right now. Any pointers will be appreciated.