Merge pull request #24874 from janosi/mixedprotocollb
Document the support of mixed protocol values in the LoadBalancer type of Services
This commit is contained in:
commit
2faaed676c
|
@ -578,10 +578,6 @@ status:
|
||||||
|
|
||||||
Traffic from the external load balancer is directed at the backend Pods. The cloud provider decides how it is load balanced.
|
Traffic from the external load balancer is directed at the backend Pods. The cloud provider decides how it is load balanced.
|
||||||
|
|
||||||
For LoadBalancer type of Services, when there is more than one port defined, all
|
|
||||||
ports must have the same protocol, and the protocol must be one which is supported
|
|
||||||
by the cloud provider.
|
|
||||||
|
|
||||||
Some cloud providers allow you to specify the `loadBalancerIP`. In those cases, the load-balancer is created
|
Some cloud providers allow you to specify the `loadBalancerIP`. In those cases, the load-balancer is created
|
||||||
with the user-specified `loadBalancerIP`. If the `loadBalancerIP` field is not specified,
|
with the user-specified `loadBalancerIP`. If the `loadBalancerIP` field is not specified,
|
||||||
the loadBalancer is set up with an ephemeral IP address. If you specify a `loadBalancerIP`
|
the loadBalancer is set up with an ephemeral IP address. If you specify a `loadBalancerIP`
|
||||||
|
@ -599,6 +595,23 @@ Specify the assigned IP address as loadBalancerIP. Ensure that you have updated
|
||||||
|
|
||||||
{{< /note >}}
|
{{< /note >}}
|
||||||
|
|
||||||
|
#### Load balancers with mixed protocol types
|
||||||
|
|
||||||
|
{{< feature-state for_k8s_version="v1.20" state="alpha" >}}
|
||||||
|
|
||||||
|
By default, for LoadBalancer type of Services, when there is more than one port defined, all
|
||||||
|
ports must have the same protocol, and the protocol must be one which is supported
|
||||||
|
by the cloud provider.
|
||||||
|
|
||||||
|
If the feature gate `MixedProtocolLBService` is enabled for the kube-apiserver it is allowed to use different protocols when there is more than one port defined.
|
||||||
|
|
||||||
|
{{< note >}}
|
||||||
|
|
||||||
|
The set of protocols that can be used for LoadBalancer type of Services is still defined by the cloud provider.
|
||||||
|
|
||||||
|
{{< /note >}}
|
||||||
|
|
||||||
|
|
||||||
#### Internal load balancer
|
#### Internal load balancer
|
||||||
|
|
||||||
In a mixed environment it is sometimes necessary to route traffic from Services inside the same
|
In a mixed environment it is sometimes necessary to route traffic from Services inside the same
|
||||||
|
|
|
@ -125,6 +125,7 @@ different Kubernetes components.
|
||||||
| `LocalStorageCapacityIsolation` | `false` | Alpha | 1.7 | 1.9 |
|
| `LocalStorageCapacityIsolation` | `false` | Alpha | 1.7 | 1.9 |
|
||||||
| `LocalStorageCapacityIsolation` | `true` | Beta | 1.10 | |
|
| `LocalStorageCapacityIsolation` | `true` | Beta | 1.10 | |
|
||||||
| `LocalStorageCapacityIsolationFSQuotaMonitoring` | `false` | Alpha | 1.15 | |
|
| `LocalStorageCapacityIsolationFSQuotaMonitoring` | `false` | Alpha | 1.15 | |
|
||||||
|
| `MixedProtocolLBService` | `false` | Alpha | 1.20 | |
|
||||||
| `MountContainers` | `false` | Alpha | 1.9 | |
|
| `MountContainers` | `false` | Alpha | 1.9 | |
|
||||||
| `NodeDisruptionExclusion` | `false` | Alpha | 1.16 | 1.18 |
|
| `NodeDisruptionExclusion` | `false` | Alpha | 1.16 | 1.18 |
|
||||||
| `NodeDisruptionExclusion` | `true` | Beta | 1.19 | |
|
| `NodeDisruptionExclusion` | `true` | Beta | 1.19 | |
|
||||||
|
@ -500,6 +501,7 @@ Each feature gate is designed for enabling/disabling a specific feature:
|
||||||
- `LegacyNodeRoleBehavior`: When disabled, legacy behavior in service load balancers and node disruption will ignore the `node-role.kubernetes.io/master` label in favor of the feature-specific labels provided by `NodeDisruptionExclusion` and `ServiceNodeExclusion`.
|
- `LegacyNodeRoleBehavior`: When disabled, legacy behavior in service load balancers and node disruption will ignore the `node-role.kubernetes.io/master` label in favor of the feature-specific labels provided by `NodeDisruptionExclusion` and `ServiceNodeExclusion`.
|
||||||
- `LocalStorageCapacityIsolation`: Enable the consumption of [local ephemeral storage](/docs/concepts/configuration/manage-resources-containers/) and also the `sizeLimit` property of an [emptyDir volume](/docs/concepts/storage/volumes/#emptydir).
|
- `LocalStorageCapacityIsolation`: Enable the consumption of [local ephemeral storage](/docs/concepts/configuration/manage-resources-containers/) and also the `sizeLimit` property of an [emptyDir volume](/docs/concepts/storage/volumes/#emptydir).
|
||||||
- `LocalStorageCapacityIsolationFSQuotaMonitoring`: When `LocalStorageCapacityIsolation` is enabled for [local ephemeral storage](/docs/concepts/configuration/manage-resources-containers/) and the backing filesystem for [emptyDir volumes](/docs/concepts/storage/volumes/#emptydir) supports project quotas and they are enabled, use project quotas to monitor [emptyDir volume](/docs/concepts/storage/volumes/#emptydir) storage consumption rather than filesystem walk for better performance and accuracy.
|
- `LocalStorageCapacityIsolationFSQuotaMonitoring`: When `LocalStorageCapacityIsolation` is enabled for [local ephemeral storage](/docs/concepts/configuration/manage-resources-containers/) and the backing filesystem for [emptyDir volumes](/docs/concepts/storage/volumes/#emptydir) supports project quotas and they are enabled, use project quotas to monitor [emptyDir volume](/docs/concepts/storage/volumes/#emptydir) storage consumption rather than filesystem walk for better performance and accuracy.
|
||||||
|
- `MixedProtocolLBService`: Enable using different protocols in the same LoadBalancer type Service instance.
|
||||||
- `MountContainers`: Enable using utility containers on host as the volume mounter.
|
- `MountContainers`: Enable using utility containers on host as the volume mounter.
|
||||||
- `MountPropagation`: Enable sharing volume mounted by one container to other containers or pods.
|
- `MountPropagation`: Enable sharing volume mounted by one container to other containers or pods.
|
||||||
For more details, please see [mount propagation](/docs/concepts/storage/volumes/#mount-propagation).
|
For more details, please see [mount propagation](/docs/concepts/storage/volumes/#mount-propagation).
|
||||||
|
|
Loading…
Reference in New Issue