Skip to main content

ServerTransportTCP

ServersTransportTCP allows you to configure the transport between Traefik and your TCP servers.

Register the ServersTransportTCP kind in the Kubernetes cluster before creating ServersTransportTCP objects.

Configuration Example

apiVersion: traefik.io/v1alpha1
kind: IngressRouteTCP
metadata:
name: test-tcp
namespace: apps
spec:
entryPoints:
- tcp
routes:
- match: HostSNI(`example.com`)
services:
- name: my-service
port: 3306
# Format: namespace-name@providername
serversTransport: apps-mytransport@kubernetescrd
tls:
passthrough: true
# Add a TLS certificate from a Kubernetes Secret
secretName: supersecret

Configuration Options

FieldDescriptionDefaultRequired
dialTimeoutThe amount of time to wait until a connection to a server can be established. If zero, no timeout exists.30sNo
dialKeepAliveThe interval between keep-alive probes for an active network connection.
If this option is set to zero, keep-alive probes are sent with a default value (currently 15 seconds),
if supported by the protocol and operating system. Network protocols or operating systems that do not support keep-alives ignore this field.
If negative, keep-alive probes are turned off.
No
terminationDelayDefines the delay to wait before fully terminating the connection, after one connected peer has closed its writing capability.No
tlsThe TLS configuration.No
tls.serverNameServerName used to contact the server.
tls.insecureSkipVerifyControls whether the server's certificate chain and host name is verified.
tls.peerCertURIDefines the URI used to match against SAN URIs during the server's certificate verification.
tls.rootCAsSecretsDefines the set of root certificate authorities to use when verifying server certificates.
The CA secret must contain a base64 encoded certificate under either a tls.ca or a ca.crt key.
tls.certificatesSecretsCertificates to present to the server for mTLS.
spiffeConfigures SPIFFE options.No
spiffe.idsDefines the allowed SPIFFE IDs. This takes precedence over the SPIFFE trustDomain.No
spiffe.trustDomainDefines the allowed SPIFFE trust domain.""No