第 1 章 关于 OVN-Kubernetes 网络插件
OpenShift Container Platform 集群在 pod 和服务网络中使用虚拟网络。
Red Hat OpenShift Networking 的一部分,OVN-Kubernetes 网络插件是 OpenShift Container Platform 的默认网络供应商。OVN-Kubernetes 基于 Open Virtual Network(OVN),它提供了一个基于 overlay 的网络实现。使用 OVN-Kubernetes 插件的集群还在每个节点上运行 Open vSwitch (OVS)。OVN 在每个节点上配置 OVS 来实现声明的网络配置。
OVN-Kubernetes 是 OpenShift Container Platform 和单节点 OpenShift 部署的默认网络解决方案。
OVN-Kubernetes (来自 OVS 项目)使用许多相同的结构,如开放流规则,来决定数据包通过网络传输的方式。如需更多信息,请参阅 Open Virtual Network 网站。
OVN-Kubernetes 是 OVS 的一系列守护进程,用于将虚拟网络配置转换为 OpenFlow
规则。OpenFlow
是一种用于与网络交换机和路由器通信的协议,为远程控制网络设备上的网络流量流提供了方法。这意味着网络管理员可以配置、管理和监视网络流量的流。
OVN-Kubernetes 提供了 OpenFlow
提供的更多高级功能。OVN 支持分布式虚拟路由、分布式逻辑交换机、访问控制、动态主机配置协议(DHCP)和 DNS。OVN 在逻辑流中实施分布式虚拟路由,这些路由等同于开放流。例如,如果您有一个向网络上的 DHCP 服务器发送 DHCP 请求的 pod,则请求中的逻辑流规则可帮助 OVN-Kubernetes 处理数据包。这意味着服务器可以响应网关、DNS 服务器、IP 地址和其他信息。
OVN-Kubernetes 在每个节点上运行一个守护进程。数据库和 OVN 控制器都有守护进程集,每个节点上运行的 OVN 控制器。OVN 控制器在节点上对 Open vSwitch 守护进程进行编程,以支持以下网络供应商功能:
- 出口 IP
- 防火墙
- 硬件卸载
- 混合网络
- 互联网协议安全(IPsec)加密
- IPv6
- 多播。
- 网络策略和网络策略日志
- 路由器
1.1. OVN-Kubernetes 目的 复制链接链接已复制到粘贴板!
OVN-Kubernetes 网络插件是一个开源、功能齐全的 Kubernetes CNI 插件,它使用 Open Virtual Network (OVN)来管理网络流量。OVN 是一个社区开发、与供应商无关的网络虚拟化解决方案。OVN-Kubernetes 网络插件使用以下技术:
- OVN 管理网络流量流。
- Kubernetes 网络策略支持和日志,包括入口和出口规则。
- 通用网络虚拟化封装(Geneve)协议,而不是虚拟可扩展局域网(VXLAN),以在节点之间创建覆盖网络。
OVN-Kubernetes 网络插件支持以下功能:
- 可以运行 Linux 和 Microsoft Windows 工作负载的混合集群。此环境称为混合网络。
- 将网络数据处理从主机中央处理单元(CPU)卸载到兼容的网卡和数据处理单元(DPU)。这称为硬件卸载(hardware offloading)。
- IPv4-primary 双栈网络,在裸机、VMware vSphere、IBM Power®、IBM Z® 和 Red Hat OpenStack Platform (RHOSP)平台上。
- RHOSP 和裸机平台上的 IPv6 单堆栈网络。
- 在裸机、VMware vSphere 或 RHOSP 平台上运行的集群的 IPv6-primary 双栈网络。
- 出口防火墙设备和出口 IP 地址。
- 以重定向模式运行的出口路由器设备。
- 集群内通信的 IPsec 加密。
红帽不支持使用 OVN-Kubernetes 网络插件的以下安装后配置:
- 配置主网络接口,包括使用 NMState Operator 为接口配置绑定。
-
在使用 Open vSwitch (OVS)或 OVN-Kubernetes
br-ex
网桥网络的网络设备上配置子接口或附加网络接口。 - 在主网络接口上创建其他虚拟局域网(VLAN)。
-
使用您在集群安装过程中为节点创建的主网络接口(如
eth
0)来创建其他二级网络。0
或 bond
红帽支持以下使用 OVN-Kubernetes 网络插件的安装后配置:
-
从基础物理接口(如
eth0.100)
创建额外的 VLAN,其中您将主网络接口配置为集群安装过程中节点的 VLAN。这是因为 Open vSwitch (OVS)网桥附加到初始 VLAN 子接口,如eth0.100
,保留基础物理接口可用于新配置。 -
使用
localnet
拓扑网络创建额外的 OVN 二级网络需要在NodeNetworkConfigurationPolicy
(NNCP)对象中定义二级网络。创建网络后,Pod 或虚拟机(VM)可以附加到网络。这些从属网络为物理网络提供专用连接,可能或不能使用 VLAN 标记。您无法从主机没有所需设置的节点的主机网络访问这些网络,如所需的网络设置。