您可以创建负载平衡器,以在指定实例之间分配入站请求。负载平衡器可确保工作负载以可预测的方式在实例之间实现共享,并且更有效地使用系统资源。

VMware Integrated OpenStack 7.0 支持 OpenStack Octavia 组件。

前提条件

  • 在网络上创建公共子网和路由器。对于 NSX Data Center for vSphere 部署,路由器类型必须为 exclusive
    注: 可以在租户子网上创建负载平衡器,但是必须为它分配一个浮动 IP 地址。
  • 至少配置一个客户端和两个服务器实例。
  • 确认您具有以下角色之一,以便可以操作 Horizon 或 OpenStack CLI。
    角色 说明
    load-balancer_observer 有权访问负载平衡器只读 API 的用户。
    load-balancer_global_observer 有权访问负载平衡器只读 API(包括其他用户拥有的资源)的用户。
    load-balancer_member 有权访问负载平衡器读写 API 的用户。
    load-balancer_quota_admin 仅限配额 API 的管理员。
    load-balancer_admin 所有负载平衡器 API(包括其他用户拥有的资源)的管理员。
    admin 所有 API 的管理员。

过程

  1. 登录 VMware Integrated OpenStack 仪表板。
  2. 从标题栏中的下拉菜单选择您的项目。
  3. 选择项目 > 网络 > 负载平衡器中,然后单击创建负载平衡器
  4. 负载平衡器详细信息页面上,输入所需的配置,然后单击下一步
    选项 说明

    名称

    输入负载平衡器的名称。

    描述

    (可选)输入负载平衡器的描述。

    IP 地址

    (可选)输入负载平衡器的 IP 地址。

    子网

    选择负载平衡器的子网。只能将该子网的成员添加到 LBaaS 池中。

  5. 侦听器详细信息页面上,输入所需的配置,然后单击下一步
    选项 说明

    名称

    输入侦听器的名称。

    描述

    输入侦听器的描述。

    协议

    选择侦听器要使用的协议。支持以下协议:

    • HTTP
    • TCP
    • 终止 HTTPS
    • HTTPS

    如果选择“终止 HTTPS”作为协议,还必须提供 TLS 容器的 ID。

    端口

    输入侦听器要使用的端口。

  6. 指定 LBaaS 池的名称、描述和负载平衡方法,然后单击下一步
    支持的负载平衡方法如下所述:
    方法 说明
    LEAST_CONNECTIONS

    新客户端请求将发送到连接数最少的服务器。

    ROUND_ROBIN

    根据每个服务器分配到的权重,依次使用各服务器。

    SOURCE_IP

    所有源自相同源 IP 地址的连接由同一个池成员处理。

  7. 选择要添加到负载平衡器池的服务器和客户端实例,然后单击下一步
  8. 指定运行状况监控参数,然后单击下一步
    参数 说明
    监控类型

    指定 HTTPPINGTCP

    时间间隔

    输入将探查发送给成员之间的时间(以秒为单位)。

    重试次数

    输入将成员状态更改为 INACTIVE 之前允许的失败连接次数。

    超时

    输入监控器在超时之前等待建立连接的时间(以秒为单位)。

    超时值必须小于时间间隔值。

    如果选择 HTTP,还必须配置 HTTP 方法、预期的状态代码和 URL。
  9. 如果已为侦听器详细信息选择 TERMINATED_HTTPS 协议,请为侦听器指定一个或多个证书,然后单击下一步
  10. 单击创建负载平衡器
  11. 如果在租户子网上创建了负载平衡器,请将一个浮动 IP 地址与负载平衡器相关联。
    1. 单击负载平衡器右侧的向下箭头,然后选择关联浮动 IP
    2. 选择浮动 IP 地址或池,然后单击关联
  12. (可选) 发送测试请求以验证 LBaaS 配置。
    1. root 用户身份登录到 Integrated OpenStack Manager
      ssh root@mgmt-server-ip
    2. 创建测试 index.html 文件。
    3. 在同一个目录中启动 Web 服务器。
      sudo python -m SimpleHTTPServer 80
    4. 登录到客户端实例。
    5. 运行 wget 命令,查看请求是否正在池中的服务器之间正确进行负载平衡。
       wget -O - http://mgmt-server-ip

后续步骤

您可以打开负载平衡器,然后单击创建侦听器向其添加侦听器。