26.2. 使用 Octavia 为应用程序流量扩展集群
在 Red Hat OpenStack Platform(RHOSP)上运行的 OpenShift Container Platform 集群可以使用 Octavia 负载均衡服务在多个虚拟机(VM)或浮动 IP 地址间分配流量。这个功能减少了单一机器或地址生成的瓶颈。
您必须创建自己的 Octavia 负载均衡器,将其用于应用程序网络扩展。
26.2.1. 使用 Octavia 扩展集群
如果要使用多个 API 负载均衡器,请创建一个 Octavia 负载均衡器,然后将集群配置为使用它。
先决条件
- Octavia 包括在您的 Red Hat OpenStack Platform(RHOSP)部署中。
流程
- 在命令行中创建一个使用 Amphora 驱动程序的 Octavia 负载均衡器: - openstack loadbalancer create --name API_OCP_CLUSTER --vip-subnet-id <id_of_worker_vms_subnet> - $ openstack loadbalancer create --name API_OCP_CLUSTER --vip-subnet-id <id_of_worker_vms_subnet>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 可以使用自己选择的名称而不是 - API_OCP_CLUSTER。
- 负载均衡器成为活跃后,创建监听程序: - openstack loadbalancer listener create --name API_OCP_CLUSTER_6443 --protocol HTTPS--protocol-port 6443 API_OCP_CLUSTER - $ openstack loadbalancer listener create --name API_OCP_CLUSTER_6443 --protocol HTTPS--protocol-port 6443 API_OCP_CLUSTER- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 要查看负载均衡器的状态,请输入 - openstack loadbalancer list。
- 创建一个使用轮循算法的池,并启用了会话持久性: - openstack loadbalancer pool create --name API_OCP_CLUSTER_pool_6443 --lb-algorithm ROUND_ROBIN --session-persistence type=<source_IP_address> --listener API_OCP_CLUSTER_6443 --protocol HTTPS - $ openstack loadbalancer pool create --name API_OCP_CLUSTER_pool_6443 --lb-algorithm ROUND_ROBIN --session-persistence type=<source_IP_address> --listener API_OCP_CLUSTER_6443 --protocol HTTPS- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 为确保 control plane 机器可用,创建一个健康监控器: - openstack loadbalancer healthmonitor create --delay 5 --max-retries 4 --timeout 10 --type TCP API_OCP_CLUSTER_pool_6443 - $ openstack loadbalancer healthmonitor create --delay 5 --max-retries 4 --timeout 10 --type TCP API_OCP_CLUSTER_pool_6443- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 将 control plane 机器作为负载均衡器池的成员添加: - for SERVER in $(MASTER-0-IP MASTER-1-IP MASTER-2-IP) do openstack loadbalancer member create --address $SERVER --protocol-port 6443 API_OCP_CLUSTER_pool_6443 done - $ for SERVER in $(MASTER-0-IP MASTER-1-IP MASTER-2-IP) do openstack loadbalancer member create --address $SERVER --protocol-port 6443 API_OCP_CLUSTER_pool_6443 done- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 可选: 要重复使用集群 API 浮动 IP 地址,取消设置它: - openstack floating ip unset $API_FIP - $ openstack floating ip unset $API_FIP- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 为创建的负载均衡器 VIP 添加未设置的 - API_FIP或一个新地址:- openstack floating ip set --port $(openstack loadbalancer show -c <vip_port_id> -f value API_OCP_CLUSTER) $API_FIP - $ openstack floating ip set --port $(openstack loadbalancer show -c <vip_port_id> -f value API_OCP_CLUSTER) $API_FIP- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
您的集群现在使用 Octavia 进行负载平衡。