最新文章

深入探索 Kubernetes 网络模型和网络通信

深入探索 Kubernetes 网络模型和网络通信

这是 Kubernetes 网络学习的第一篇笔记。 深入探索 Kubernetes 网络模型和网络通信(本篇) 认识一下容器网络接口 CNI 源码分析:从 kubelet、容器运行时看 CNI 的使用 从 Flannel 学习 Kubernetes VXLAN 网络 Kubernetes 网络学习之 Cilium 与 eBPF Kubernetes 定义了一种简单、一致的网络模型,基于扁平网络结构的设计,无需将主机端口与网络端口进行映射便可以进行高效地通讯,也无需其他组件进行转发。该模型也使应用程序很容易从虚拟机或者主机物理机迁移到 Kubernetes 管理的 pod 中。 这篇文章主要深入探索 Kubernetes 网络模型,并了解容器、pod 间如何进行通讯。对于网络模型的实现将会在后面的文章介绍。 Kubernetes 网络模型 该模型定义了: 每个 pod 都有自己的 IP 地址,这个 IP 在集群范围内可达 Pod 中的所有容器共享 pod IP 地址(包括 MAC 地址),并且容器之前可以相互通信(使用 localhost) Pod 可以使用 pod IP 地址与集群中任一节点上的其他 pod 通信,无需 NAT Kubernetes 的组件之间可以相互通信,也可以与 pod 通信 网络隔离可以通过网络策略实现 上面的定义中提到了几个相关的组件: