Hello,
I'm using traefik with the last 1.7 version and I have multiple backend type like file and docker.
Now, I'm trying to add a kubernetes backend and I have successfully connecting my traefik to my kubernetes cluster.
I've been configured an ingress inside my kubernetes cluster and I can see on traefik dashboard the kubernetes frontend and backend but, when I make a call to one of frontend URL, I can see that traefik try to communicate with the pod and it's internal cluster IP.
My kubernetes service :
kind: Service
apiVersion: v1
metadata:
name: api-service
spec:
selector:
app: myapp
tier: api
ports:
- port: 3000
type: NodePort
And my ingress :
kind: Ingress
apiVersion: extensions/v1beta1
metadata:
name: traefik-ingress
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: "api.myapp.com"
http:
paths:
- backend:
serviceName: api-service
servicePort: 3000
My question is : there is a solution to have this scheme working correctly without the use of ingress controller inside the cluster ? Or it is inevitable ?
It is possible that ingress return the node IP and the correct port ?
I hope I was clear enough
Thank you