2.4. pacemaker 和 DVR 的高可用性
您可以选择两个 ovn-dbs 配置集之一:base profile、ovn-dbs-container 和 pacemaker 高可用性(HA)配置集,ovn-dbs-container-puppet。
启用 pacemaker HA 配置集后,ovsdb-server 在 master-slave 模式下运行,由 pacemaker 和资源代理 Open Cluster Framework (OCF)脚本进行管理。OVN 数据库服务器在所有控制器上启动,而 pacemaker 则选择一个控制器来服务主角色。在 master 模式下运行的 ovsdb-server 实例可以写入数据库,而所有其他 slave ovsdb-server 服务可以从主卷在本地复制数据库,且无法写入到数据库。
此配置集的 YAML 文件是 tripleo-heat-templates/environments/services-docker/neutron-ovn-dvr-ha.yaml 文件。启用后,OVN 数据库服务器由 Pacemaker 管理,而 puppet-tripleo 会创建一个名为 ovn:ovndb-servers 的 pacemaker OCF 资源。
OVN 数据库服务器在每个 Controller 节点上启动,控制器将虚拟 IP 地址(OVN_DBS_VIP)在 master 模式下运行 OVN DB 服务器。OVN ML2 机制驱动程序和 ovn-controller 然后使用 OVN_DBS_VIP 值连接到数据库服务器。在故障转移时,Pacemaker 会将虚拟 IP 地址(OVN_DBS_VIP)移到另一个控制器,并将在该节点上运行的 OVN 数据库服务器提升为 master。