I deployed Traefik on EKS by Traefik/Traefix helm chart, I defined some values as below:
service:
enabled: true
type: LoadBalancer
# Additional annotations (e.g. for cloud provider specific config)
annotations:
service.beta.kubernetes.io/aws-load-balancer-internal: "0.0.0.0/0"
ingressRoute:
dashboard:
enabled: false
additionalArguments:
- --providers.file.filename=/traefik-data/traefik-config.yaml
ports:
web:
redirectTo: websecure
volumes:
- mountPath: /traefik-data
name: traefik-config
type: configMap
Then I create ingressroute for Traefik Dashboard:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: dashboard
namespace: traefik
spec:
entryPoints:
- web
routes:
- match: Host(`db.abc.io`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))
kind: Rule
services:
- name: api@internal
kind: TraefikService
Actually, I don't know how to set SSL certificate in IngressRoute. When I access https://db.abc.io, it return "404 page not found", but if I tried with http, the dashboard can be loaded. I also got the same issue when I tried to deploy example application and expose via Ingress:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: greetings
annotations:
kubernetes.io/tls-acme: "true"
traefik.ingress.kubernetes.io/router.entrypoints: websecure,web
kubernetes.io/ingress.class: traefik
spec:
tls:
- hosts:
- hello.abc.io
secretName: abc-tls
rules:
- host: hello.abc.io
http:
paths:
- path: /
backend:
serviceName: hello-service
servicePort: http
Any idea or what might causing this issue?