ServersTransportTCP
ServersTransportTCP 是 ServersTransportTCP 的 CRD 实现。
创建 ServersTransportTCP 对象前,需要将 Traefik Kubernetes CRD 应用到 Kubernetes 集群。
这会注册 ServersTransportTCP 类型及其他 Traefik 专用资源。
默认 serversTransportTCP
未指定 serversTransportTCP 时,使用 default@internal。default@internal 的 serversTransportTCP 根据安装配置(原称静态配置)创建。
ServersTransport 引用
默认情况下,所引用的 ServersTransportTCP CRD 必须定义在同一个 Kubernetes 服务命名空间中。
引用其他命名空间中的 ServersTransportTCP CRD 时,值必须采用 namespace-name@kubernetescrd 格式,并且必须启用 allowCrossNamespace 选项。
如果 ServersTransportTCP CRD 定义在其他提供者中,应使用跨提供者格式 name@provider。
启用 safeNaming 后,跨命名空间的值改为 namespace_name@kubernetescrd,使用与提供者生成的其他名称相同的 _ 分隔符。
配置示例¶
apiVersion: traefik.io/v1alpha1
kind: ServersTransportTCP
metadata:
name: mytransport
namespace: default
spec:
proxyProtocol:
version: 2
terminationDelay: 100ms
tls:
serverName: example.org
insecureSkipVerify: true配置选项¶
| 字段 | 说明 | 默认值 | 必填 |
|---|---|---|---|
dialTimeout |
等待与服务器建立连接的时长。设为零时,不设置超时。 | 30s | 否 |
dialKeepAlive |
活动网络连接的保持活动探测间隔。 设为零时,如果协议和操作系统支持,会使用默认间隔(目前为 15 秒)发送保持活动探测。 不支持保持活动的网络协议或操作系统会忽略该字段。 负值表示禁用保持活动探测。 |
15s | 否 |
proxyProtocol |
定义 Proxy Protocol 配置。空的 proxyProtocol 配置段会启用 Proxy Protocol 版本 2。 |
否 | |
proxyProtocol.version |
Traefik 在 TCP 服务上支持 PROXY Protocol 版本 1 和 2。 | 否 | |
terminationDelay |
定义连接的一端关闭写入能力后,在完全终止连接之前等待的时长。 | 100ms | 否 |
tls.serverName |
连接服务器时使用的 ServerName。 | "" | 否 |
tls.insecureSkipVerify |
控制是否验证服务器证书链和主机名。 | false | 否 |
tls.peerCertURI |
定义验证服务器证书时用于匹配 SAN URI 的 URI。 | "" | 否 |
tls.rootCAs |
定义用于验证服务器证书的 CA 证书 Secret 或 ConfigMap 列表。 每项可以通过名称引用 Secret( secret)或 ConfigMap(configMap)。被引用的资源必须在 tls.ca 或 ca.crt 键中包含证书。 |
否 | |
tls.rootCAsSecrets |
已弃用:请改用 tls.rootCAs。 定义验证服务器证书时使用的根证书颁发机构集合。CA Secret 必须在 tls.ca 或 ca.crt 键中包含以 base64 编码的证书。 |
"" | 否 |
tls.certificatesSecrets |
进行 mTLS 认证时向服务器出示的证书。 | "" | 否 |
spiffe |
配置 SPIFFE 选项。 | "" | 否 |
spiffe.ids |
定义允许的 SPIFFE ID,优先于 SPIFFE 的 trustDomain。 |
"" | 否 |
spiffe.trustDomain |
定义允许的 SPIFFE 信任域。 | "" | 否 |