kubernetes网络模型


Overview

本文将探讨Kubernetes中的网络模型,以及对各种网络模型进行分析。

Underlay Network Model

什么是Underlay Network

底层网络 Underlay Network 顾名思义是指网络设备基础设施,如交换机,路由器, DWDM 使用网络介质将其链接成的物理网络拓扑,负责网络之间的数据包传输。

图:Underlay network topology
Source:https://community.cisco.com/t5/data-center-switches/understanding-underlay-and-overlay-networks/td-p/4295870

underlay network 可以是二层,也可以是三层;二层 underlay network 的典型例子是以太网 Ethernet,三层是 underlay network 的典型例子是互联网 Internet

而工作与二层的技术是 vlan,工作在三层的技术是由 OSPF, BGP 等协议组成

kubernetes中的underlay network

在kubernetes中,underlay network 是将宿主机作为路由器设备而,Pod 的网络则通过学习成路由条目从而实现跨节点通讯。

图:underlay network topology in kubernetes

这种模型下典型的有 flannelhost-gw 模式与 calico BGP 模式。

flannel host-gw flannel host-gw

[2] calico bgp networking

[3] calico bgp networking

[4] sriov network

[5] danm