I just want to check to see if this is a bug or intended. My tcp router is forwarding all traffic from port 80 to my tcp port, even though I've specified that it should only apply to my grpc entrypoint, which is port 50051. I'm using Traefik V2.0.0. I have the following entrypoints defined as args in my deployment.yaml:
- --entrypoints.http.address=:80
- --entrypoints.https.address=:443
- --entrypoints.grpc.address=:50051
I have a TCP service with an IngressRouteTCP as follows:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
name: account-service
namespace: dev
spec:
entrypoints:
- grpc
routes:
- kind: Rule
match: HostSNI(`*`)
services:
- name: grpc-service
port: 50051
Based on my understanding of 2.0, this IngressRouteTCP should only apply to requests to mydomain.com:50051. However, it's also forwarding requests to mydomain.com:80 to the grpc-service, effectively routing all http traffic to my one grpc service.
My static configuration is pretty basic:
# traefik.toml
[tls.stores]
[tls.stores.default]
[tls.stores.default.defaultCertificate]
certFile = "/ssl/tls.crt"
keyFile = "/ssl/tls.key"
The args and ports on my traefik pod are as follows:
args:
- --providers.file.directory=/config
- --providers.file.watch=true
- --api.dashboard=true
- --ping=true
- --log=true
- --log.level=DEBUG
- --serverstransport.insecureskipverify=true
- --providers.kubernetescrd
- --providers.kubernetescrd.namespaces=ingress,dev,etc
- --providers.kubernetescrd.disablepasshostheaders=true
- --entrypoints.http.address=:80
- --entrypoints.https.address=:443
- --entrypoints.grpc.address=:50051
ports:
- name: http
containerPort: 80
- name: https
containerPort: 443
- name: grpc
containerPort: 50051
- name: dashboard-http
containerPort: 8080
And the service.yaml ports section is:
ports:
- name: http
nodePort: 30072
port: 80
protocol: TCP
targetPort: http
- name: grpc
nodePort: 31164
port: 50051
protocol: TCP
targetPort: grpc
- name: https
nodePort: 30710
port: 443
protocol: TCP
targetPort: 443
Any help would be appreciated!