Merge pull request #43964 from aojea/kubernetes_cluster_network
kubernetes cluster networking types based on IP address assignmentpull/44213/head
commit
77367b79e5
|
@ -32,6 +32,34 @@ different approach.
|
|||
|
||||
To learn about the Kubernetes networking model, see [here](/docs/concepts/services-networking/).
|
||||
|
||||
## Kubernetes IP address ranges
|
||||
|
||||
Kubernetes clusters require to allocate non-overlapping IP addresses for Pods, Services and Nodes,
|
||||
from a range of available addresses configured in the following components:
|
||||
|
||||
- The network plugin is configured to assign IP addresses to Pods.
|
||||
- The kube-apiserver is configured to assign IP addresses to Services.
|
||||
- The kubelet or the cloud-controller-manager is configured to assign IP addresses to Nodes.
|
||||
|
||||
{{< figure src="/docs/images/kubernetes-cluster-network.svg" alt="A figure illustrating the different network ranges in a kubernetes cluster" class="diagram-medium" >}}
|
||||
|
||||
## Cluster networking types {#cluster-network-ipfamilies}
|
||||
|
||||
Kubernetes clusters, attending to the IP families configured, can be categorized into:
|
||||
|
||||
- IPv4 only: The network plugin, kube-apiserver and kubelet/cloud-controller-manager are configured to assign only IPv4 addresses.
|
||||
- IPv6 only: The network plugin, kube-apiserver and kubelet/cloud-controller-manager are configured to assign only IPv6 addresses.
|
||||
- IPv4/IPv6 or IPv6/IPv4 [dual-stack](/docs/concepts/services-networking/dual-stack/):
|
||||
- The network plugin is configured to assign IPv4 and IPv6 addresses.
|
||||
- The kube-apiserver is configured to assign IPv4 and IPv6 addresses.
|
||||
- The kubelet or cloud-controller-manager is configured to assign IPv4 and IPv6 address.
|
||||
- All components must agree on the configured primary IP family.
|
||||
|
||||
Kubernetes clusters only consider the IP families present on the Pods, Services and Nodes objects,
|
||||
independently of the existing IPs of the represented objects. Per example, a server or a pod can have multiple
|
||||
IP addresses on its interfaces, but only the IP addresses in `node.status.addresses` or `pod.status.ips` are
|
||||
considered for implementing the Kubernetes network model and defining the type of the cluster.
|
||||
|
||||
## How to implement the Kubernetes network model
|
||||
|
||||
The network model is implemented by the container runtime on each node. The most common container
|
||||
|
|
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 147 KiB |
Loading…
Reference in New Issue