第 2 章 OVN-Kubernetes 架构
2.1. OVN-Kubernetes 架构简介 复制链接链接已复制到粘贴板!
下图显示了 OVN-Kubernetes 架构。
图 2.1. OVK-Kubernetes 架构
主要组件是:
- Cloud Management System (CMS) - OVN 的特定平台客户端,为 OVN 集成提供 CMS 特定的插件。该插件将云管理系统的逻辑网络配置概念转换为 OVN 理解的 CMS 配置数据库中。
-
OVN 北向数据库(
nbdb
)容器 - 存储由 CMS 插件传递的逻辑网络配置。 -
OVN 南向数据库(
sbdb
)容器 - 存储每个节点上的 Open vSwitch (OVS)系统的物理和逻辑网络配置状态,包括绑定它们的表。 -
OVN 北向守护进程 (
ovn-northd
) - 这是nbdb
容器和sbdb
容器之间的中介客户端。它以传统网络概念的形式将逻辑网络配置(从nbdb
容器)转换为sbdb
容器中的逻辑数据路径流。ovn-northd
守护进程的容器名称为northd
,它在ovnkube-node
pod 中运行。 -
ovn-controller - 这是与 OVS 和 hypervisor 交互的 OVN 代理,适用于
sbdb
容器所需的任何信息或更新。ovn-controller
从sbdb
容器读取逻辑流,将它们转换为OpenFlow
流,并将它们发送到节点的 OVS 守护进程。容器名称为ovn-controller
,它在ovnkube-node
pod 中运行。
OVN 北向数据库、北向数据库和南向数据库在集群中的每个节点上运行,大部分包含对该节点本地的和进程信息。
OVN 北向数据库具有通过云管理系统(CMS)传递到它的逻辑网络配置。OVN 北向数据库包含网络的当前状态,以逻辑端口、逻辑交换机、逻辑路由器等形式显示。ovn-northd
(northd
容器) 连接到 OVN 北向数据库和 OVN 南向数据库。它以传统网络概念的形式将逻辑网络配置转换为 OVN 北向数据库中的逻辑数据路径流。
OVN 南向数据库具有网络的物理和逻辑表示,并将它们连接在一起。它包含节点的机箱信息,以及其他结构,如连接到集群中其他节点所需的远程传输交换机端口。OVN 南向数据库还包含所有逻辑流。逻辑流与每个节点上运行的 ovn-controller
进程共享,ovn-controller
将它们转换为 OpenFlow
规则到程序 Open vSwitch
(OVS)。
Kubernetes control plane 节点在单独的节点上包含两个 ovnkube-control-plane
pod,它为集群中的每个节点执行中央 IP 地址管理 (IPAM) 分配。在任何给定时间,只有一个 ovnkube-control-plane
pod 是领导。