第 2 章 使用 ML2/OVN
Red Hat OpenStack Platform (RHOSP)网络由 Networking 服务(neutron)管理。网络服务的核心是 Modular Layer 2 (ML2)插件,RHOSP ML2 插件的默认机制驱动程序是 Open Virtual Networking (OVN)机制驱动程序。
早期 RHOSP 版本默认使用 Open vSwitch (OVS)机制驱动程序。从 RHOSP 16.0 开始,红帽选择 ML2/OVN 作为所有新部署的默认机制驱动程序,因为它为大多数客户提供了 ML2/OVS 机制驱动程序的即时优势。这些优势会与每个发行版本一起实现,而红帽及社区将继续增强并改进 ML2/OVN 功能集。
如果您的现有 Red Hat OpenStack Platform (RHOSP)部署使用 ML2/OVS 机制驱动程序,您必须评估将 OVS 驱动程序替换为 ML2/OVN 机制驱动程序的好处和可扩展性。红帽不支持在 RHOSP 16.1 中直接迁移到 ML2/OVN。在迁移到 ML2/OVN 机制驱动程序前,您必须升级到最新的 RHOSP 16.2 版本。
2.1. RHOSP OVN 架构中的组件列表
RHOSP OVN 架构将 OVS Modular Layer 2 (ML2)机制驱动程序替换为 OVN ML2 机制驱动程序来支持网络 API。OVN 为 Red Hat OpenStack 平台提供网络服务。
如图 2.1 所示,OVN 架构由以下组件和服务组成:
- ML2 插件带有 OVN 机制驱动程序
- ML2 插件将 OpenStack 特定的网络配置转换为平台中立的 OVN 逻辑网络配置。它通常在 Controller 节点上运行。
- OVN 北向(NB)数据库(
ovn-nb
) -
此数据库存储 OVN ML2 插件的逻辑 OVN 网络配置。它通常在 Controller 节点上运行,并侦听 TCP 端口
6641
。 - OVN 北向服务(
ovn-northd
) - 此服务将逻辑网络配置从 OVN NB 数据库转换为逻辑数据路径流,并在 OVN 南向数据库中填充它们。它通常在 Controller 节点上运行。
- OVN 南向(SB)数据库(
ovn-sb
) -
这个数据库存储转换的逻辑数据路径流。它通常在 Controller 节点上运行,并侦听 TCP 端口
6642
。 - OVN 控制器(
ovn-controller
) -
此控制器连接到 OVN SB 数据库,并充当 Open vSwitch 控制器来控制和监控网络流量。它在所有定义
OS::Tripleo::Services::OVNController
的 Compute 和网关节点上运行。 - OVN 元数据代理(
ovn-metadata-agent
) -
此代理创建
haproxy
实例,用于管理用于代理元数据 API 请求的 OVS 接口、网络命名空间和 HAProxy 进程。代理在所有定义OS::TripleO::Services::OVNMetadataAgent
的 Compute 和网关节点上运行。 - OVS 数据库服务器(OVSDB)
-
托管 OVN 北向和南向数据库。还与
ovs-vswitchd
交互,以托管 OVS 数据库conf.db
。
NB 数据库的 schema 文件位于 /usr/share/ovn/ovn-nb.ovsschema
中,SB 数据库架构文件位于 /usr/share/ovn/ovn-sb.ovsschema
中。
图 2.1. RHOSP 环境中的 OVN 架构