What does "entryPoints" stand for in IngressRoute yaml?

Hi guys, when configuring Traefik 2.0 in Kubernetes, I can't figure out what is the "entryPoints" field used for, e.g. the "foo" below:

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
  name: test.route
  namespace: default

spec:
  entryPoints:
    - foo

  routes:
  - match: HostSNI(`foo.com`)
    services:
    - name: whoamitcp
      port: 8000

Do I need to define this entrypoint somewhere and if yes, how - where?

Okay, I'm seeing that entrypoints are defined as process (command line) arguments for the "traefik" Deployment / pods.

I see two - one for HTTP (port 8000) and one for HTTPS (port 4443), although the ports on the pod are specified as TCP.

What I need is a TCP (non-TLS) ingress to my k8s service, where TLS is done by Traefik (we already have the certs configured).

Can I reuse one of the existing entrypoints (which one?), or do I need to define a new entrypoint?

I can see that there already is one AWS load balancer created and active.

Hi @jurajv, you can read more about the entrypoints here: https://docs.traefik.io/routing/entrypoints/ .

This is a Traefik concept, which maps to the ports Traefik is listening on.

In order to enable a TCP service (with or without TLS), adding an entrypoint to Traefik is a good idea so you can restrict the TCP protocol only to this port (you might not want to let TCP being reachable on the http or https ports).

The helm chart for Traefikv v2 (even though stil not finalized) at https://github.com/containous/traefik-helm-chart can be useful for you, as you can define the entrypoint's ports as Helm values: https://github.com/containous/traefik-helm-chart/blob/master/values.yaml#L25 , and Helm will take care of configuring both Traefik and the Kubernetes Service for these additional ports.

1 Like