9.5. 创建 OVN 负载均衡器
您可以使用 OpenStack 客户端来创建管理 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中的网络流量的负载均衡器。RHOSO 负载均衡服务支持使用 Open Virtual Network 机制驱动程序(ML2/OVN)的 neutron Modular Layer 2 插件。
本发行版本中提供了 OVN 的负载平衡供应商 作为技术预览,因此不受红帽完全支持。它只应用于测试,不应部署在生产环境中。有关技术预览功能的更多信息,请参阅覆盖范围详细信息。
先决条件
- 
						管理员已为您创建一个项目,并为您提供了一个 clouds.yaml文件来访问云。
- python-openstackclient软件包驻留在您的工作站上。- dnf list installed python-openstackclient - $ dnf list installed python-openstackclient- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 必须部署 ML2/OVN 提供程序驱动程序。 重要- OVN 供应商只支持第 4 层 TCP 和 UDP 网络流量和 - SOURCE_IP_PORT负载均衡器算法。OVN 供应商不支持健康监控。
- 可以从互联网访问的共享外部(public)子网。
流程
- 确认为您的云设置了系统 - OS_CLOUD变量:- echo $OS_CLOUD - $ echo $OS_CLOUD my_cloud- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 如果需要,重置变量: - export OS_CLOUD=my_other_cloud - $ export OS_CLOUD=my_other_cloud- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 作为替代方案,您可以在每次运行 - openstack命令时添加- --os-cloud <cloud_name> 选项指定云名称。
- 使用-- - provider ovn参数,在专用子网(- private_subnet)上创建负载平衡器(- lb1)。注意- 括号内的值是此流程中示例命令中使用的示例值。将这些示例值替换为适合您的站点的值。 - Example - openstack loadbalancer create --name lb1 --provider ovn \ --vip-subnet-id private_subnet --wait - $ openstack loadbalancer create --name lb1 --provider ovn \ --vip-subnet-id private_subnet --wait- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建一个监听器( - listener1),它将使用配置自定义应用程序的指定端口(- 80)上的协议 (- tcp)。注意- OVN 供应商只支持第 4 层 TCP 和 UDP 网络流量。 - Example - openstack loadbalancer listener create --name listener1 \ --protocol tcp --protocol-port 80 lb1 - $ openstack loadbalancer listener create --name listener1 \ --protocol tcp --protocol-port 80 lb1- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建监听器默认池( - pool1)。注意- OVN 唯一支持的负载平衡算法是 - SOURCE_IP_PORT。- Example - 本例中的命令会创建一个 HTTP 池,它使用一个专用子网,其中包含在特定 TCP 端口上托管自定义应用程序的后端服务器: - openstack loadbalancer pool create --name pool1 --lb-algorithm \ SOURCE_IP_PORT --listener listener1 --protocol tcp - $ openstack loadbalancer pool create --name pool1 --lb-algorithm \ SOURCE_IP_PORT --listener listener1 --protocol tcp- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 重要- OVN 不支持用于负载平衡的运行状况监控器功能。 
- 将专用子网( - private_subnet)上的后端服务器(- 192.0.2.10和- 192.0.2.11)添加到池。- Example - 在本例中,后端服务器 - 192.0.2.10和- 192.0.2.11分别命名为- member1和- member2:- openstack loadbalancer member create --name member1 --subnet-id \ private_subnet --address 192.0.2.10 --protocol-port 80 pool1 openstack loadbalancer member create --name member2 --subnet-id \ private_subnet --address 192.0.2.11 --protocol-port 80 pool1 - $ openstack loadbalancer member create --name member1 --subnet-id \ private_subnet --address 192.0.2.10 --protocol-port 80 pool1 $ openstack loadbalancer member create --name member2 --subnet-id \ private_subnet --address 192.0.2.11 --protocol-port 80 pool1- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
验证
- 查看并验证负载平衡器( - lb1)设置。- Example - openstack loadbalancer show lb1 - $ openstack loadbalancer show lb1- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 运行 - openstack loadbalancer listener show命令以查看侦听器详情。- Example - openstack loadbalancer listener show listener1 - $ openstack loadbalancer listener show listener1- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 运行 - openstack loadbalancer pool show命令以查看池(- pool1)和负载平衡器成员。- Example - openstack loadbalancer pool show pool1 - $ openstack loadbalancer pool show pool1- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow