Merge branch v3.5 into master
This commit is contained in:
commit
c09d3fb03c
243 changed files with 6720 additions and 4386 deletions
|
|
@ -246,7 +246,7 @@ http:
|
|||
|
||||
Most of what happens to the connection between the clients and Traefik,
|
||||
and then between Traefik and the backend servers, is configured through the
|
||||
[entrypoints](../entrypoints) and the [routers](../routers).
|
||||
[entrypoints](../entrypoints/) and the [routers](../routers/).
|
||||
|
||||
In addition, a few parameters are dedicated to configuring globally
|
||||
what happens with the connections between Traefik and the backends.
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ With Consul Catalog, Traefik can leverage tags attached to a service to generate
|
|||
!!! info "tags"
|
||||
|
||||
- tags are case-insensitive.
|
||||
- The complete list of tags can be found [the reference page](../../reference/dynamic-configuration/consul-catalog.md)
|
||||
- The complete list of tags can be found [the reference page](../../reference/routing-configuration/other-providers/consul-catalog.md)
|
||||
|
||||
### General
|
||||
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ With Docker, Traefik can leverage labels attached to a container to generate rou
|
|||
!!! info "Labels"
|
||||
|
||||
- Labels are case-insensitive.
|
||||
- The complete list of labels can be found in [the reference page](../../reference/dynamic-configuration/docker.md).
|
||||
- The complete list of labels can be found in [the reference page](../../reference/routing-configuration/other-providers/docker.md).
|
||||
|
||||
### General
|
||||
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ With ECS, Traefik can leverage labels attached to a container to generate routin
|
|||
!!! info "labels"
|
||||
|
||||
- labels are case-insensitive.
|
||||
- The complete list of labels can be found in [the reference page](../../reference/dynamic-configuration/ecs.md).
|
||||
- The complete list of labels can be found in [the reference page](../../reference/routing-configuration/other-providers/ecs.md).
|
||||
|
||||
### General
|
||||
|
||||
|
|
|
|||
|
|
@ -392,7 +392,7 @@ Register the `IngressRoute` [kind](../../reference/dynamic-configuration/kuberne
|
|||
| [13] | `services[n].port` | Defines the port of a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/). This can be a reference to a named port. |
|
||||
| [14] | `services[n].serversTransport` | Defines the reference to a [ServersTransport](#kind-serverstransport). The ServersTransport namespace is assumed to be the [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) namespace (see [ServersTransport reference](#serverstransport-reference)). |
|
||||
| [15] | `services[n].healthCheck` | Defines the HealthCheck when service references a [Kubernetes service](https://kubernetes.io/docs/concepts/services-networking/service/) of type ExternalName. |
|
||||
| [16] | `services[n].strategy` | Defines the load-balancing strategy for the load-balancer. Supported values are `wrr` and `p2c`, please refer to the [Load Balancing documentation](../routing/services/#load-balancing-strategy) for more information. |
|
||||
| [16] | `services[n].strategy` | Defines the load-balancing strategy for the load-balancer. Supported values are `wrr` and `p2c`, please refer to the [Load Balancing documentation](../../services/#load-balancing-strategy) for more information. |
|
||||
| [17] | `services[n].nativeLB` | Controls, when creating the load-balancer, whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP. |
|
||||
| [18] | `services[n].nodePortLB` | Controls, when creating the load-balancer, whether the LB's children are directly the nodes internal IPs using the nodePort when the service type is NodePort. |
|
||||
| [19] | `tls` | Defines [TLS](../routers/index.md#tls) certificate configuration |
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ A Story of key & values
|
|||
!!! info "Keys"
|
||||
|
||||
- Keys are case-insensitive.
|
||||
- The complete list of keys can be found in [the reference page](../../reference/dynamic-configuration/kv.md).
|
||||
- The complete list of keys can be found in [the reference page](../../reference/routing-configuration/other-providers/kv.md).
|
||||
|
||||
### Routers
|
||||
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ With Nomad, Traefik can leverage tags attached to a service to generate routing
|
|||
!!! info "tags"
|
||||
|
||||
- tags are case-insensitive.
|
||||
- The complete list of tags can be found [the reference page](../../reference/dynamic-configuration/nomad.md)
|
||||
- The complete list of tags can be found [the reference page](../../reference/routing-configuration/other-providers/nomad.md)
|
||||
|
||||
### General
|
||||
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ With Docker Swarm, Traefik can leverage labels attached to a service to generate
|
|||
!!! info "Labels"
|
||||
|
||||
- Labels are case-insensitive.
|
||||
- The complete list of labels can be found in [the reference page](../../reference/dynamic-configuration/docker.md).
|
||||
- The complete list of labels can be found in [the reference page](../../reference/routing-configuration/other-providers/swarm.md).
|
||||
|
||||
### General
|
||||
|
||||
|
|
|
|||
|
|
@ -1818,79 +1818,6 @@ The `tls` determines whether to use TLS when dialing with the backend.
|
|||
If no serversTransport is specified, the `default@internal` will be used.
|
||||
The `default@internal` serversTransport is created from the [static configuration](../overview.md#tcp-servers-transports).
|
||||
|
||||
#### PROXY Protocol
|
||||
|
||||
Traefik supports [PROXY Protocol](https://www.haproxy.org/download/2.0/doc/proxy-protocol.txt) version 1 and 2 on TCP Services.
|
||||
It can be enabled by setting `proxyProtocol` on the load balancer.
|
||||
|
||||
Below are the available options for the PROXY protocol:
|
||||
|
||||
- `version` specifies the version of the protocol to be used. Either `1` or `2`.
|
||||
|
||||
!!! info "Version"
|
||||
|
||||
Specifying a version is optional. By default the version 2 will be used.
|
||||
|
||||
??? example "A Service with Proxy Protocol v1 -- Using the [File Provider](../../providers/file.md)"
|
||||
|
||||
```yaml tab="YAML"
|
||||
## Dynamic configuration
|
||||
tcp:
|
||||
services:
|
||||
my-service:
|
||||
loadBalancer:
|
||||
proxyProtocol:
|
||||
version: 1
|
||||
```
|
||||
|
||||
```toml tab="TOML"
|
||||
## Dynamic configuration
|
||||
[tcp.services]
|
||||
[tcp.services.my-service.loadBalancer]
|
||||
[tcp.services.my-service.loadBalancer.proxyProtocol]
|
||||
version = 1
|
||||
```
|
||||
|
||||
#### Termination Delay
|
||||
|
||||
!!! warning
|
||||
|
||||
Deprecated in favor of [`serversTransport.terminationDelay`](#terminationdelay).
|
||||
Please note that if any `serversTransport` configuration on the servers load balancer is found,
|
||||
it will take precedence over the servers load balancer `terminationDelay` value,
|
||||
even if the `serversTransport.terminationDelay` is undefined.
|
||||
|
||||
As a proxy between a client and a server, it can happen that either side (e.g. client side) decides to terminate its writing capability on the connection (i.e. issuance of a FIN packet).
|
||||
The proxy needs to propagate that intent to the other side, and so when that happens, it also does the same on its connection with the other side (e.g. backend side).
|
||||
|
||||
However, if for some reason (bad implementation, or malicious intent) the other side does not eventually do the same as well,
|
||||
the connection would stay half-open, which would lock resources for however long.
|
||||
|
||||
To that end, as soon as the proxy enters this termination sequence, it sets a deadline on fully terminating the connections on both sides.
|
||||
|
||||
The termination delay controls that deadline.
|
||||
It is a duration in milliseconds, defaulting to 100.
|
||||
A negative value means an infinite deadline (i.e. the connection is never fully terminated by the proxy itself).
|
||||
|
||||
??? example "A Service with a termination delay -- Using the [File Provider](../../providers/file.md)"
|
||||
|
||||
```yaml tab="YAML"
|
||||
## Dynamic configuration
|
||||
tcp:
|
||||
services:
|
||||
my-service:
|
||||
loadBalancer:
|
||||
terminationDelay: 200
|
||||
```
|
||||
|
||||
```toml tab="TOML"
|
||||
## Dynamic configuration
|
||||
[tcp.services]
|
||||
[tcp.services.my-service.loadBalancer]
|
||||
[[tcp.services.my-service.loadBalancer]]
|
||||
terminationDelay = 200
|
||||
```
|
||||
|
||||
### Weighted Round Robin
|
||||
|
||||
The Weighted Round Robin (alias `WRR`) load-balancer of services is in charge of balancing the requests between multiple services based on provided weights.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue