VMware Aria Automation 支持基于插件的 VMware Avi Load Balancer 资源。通过使用基于插件的资源构建基础架构,可以在 Avi Load Balancer 资源和属性可用时更快地对其进行访问。此外,还可以在模板中结合使用分配帮助程序和 Avi Load Balancer 资源。

可以使用 Automation Assembler 模板置备 Avi Load Balancer 资源,并使用 Automation Assembler 设计选项卡功能以典型方式部署这些模板。部署模板后,可以检查 Avi Load Balancer Controller 以确认已成功置备资源。

Avi Load Balancer 资源

有关 Avi Load Balancer 资源以及执行和状态模块列表的详细信息,请参见 Avi Load Balancer 插件文档

Avi Load Balancer Controller 与 Swagger UI 完全集成。可以浏览 API 规范,并从 Avi Load Balancer Controller 下载这些规范以与 Swagger 工具配合使用。请参见 OpenAPI (Swagger 2.0) 规范集成

以下 Avi Load Balancer 资源在 VMware Aria Automation 中可用。

类别 资源 说明
应用程序

应用程序包含三个主要组件,标准应用程序部署需要这些组件 - 虚拟服务、VS VIP 和池。

虚拟服务 虚拟服务是定义负载均衡器特征和 TCP/UDP 端口的前端侦听器。虚拟服务是三个主要应用程序组件的主要对象,并且包含对 VS VIP 和池的引用。
VS VIP

VS VIP 是分配给虚拟服务的 IP 地址和 FQDN。在高级用例中,多个虚拟服务可以共享一个 IP 地址。

池中包含已进行负载均衡的应用程序服务器。池还包含对应用程序持久性配置文件和后端服务器运行状况监控器等对象的引用。
配置文件

您可以在 Avi Load Balancer 中配置常用的配置文件。

应用程序持久性配置文件 持久性配置文件定义了强制客户端在指定持续时间内与同一服务器保持连接的设置。为客户端使用唯一标识符,以确保客户端连接到同一个后端服务器。
应用程序配置文件 应用程序配置文件在应用程序层级别设置虚拟服务的行为。应用程序配置文件控制 X-Forwarded 标头、HTTP 安全设置、缓存/压缩和 DDoS 参数等。
Network Profile TCP/UDP(网络)配置文件定义了虚拟服务侦听器所用网络协议的特性。网络配置文件还用于将虚拟服务配置为直通或代理。
运行状况监控器 运行状况监控器用于衡量后端服务器的运行状况,方法是向应用程序发送综合请求,通过 Ping 或简单的 TCP/UDP 端口检查检查可用性,以及被动地监控客户端的服务器体验。未通过运行状况检查的服务器将被标记为关闭,并且流量不再发送到该服务器。

Avi Load Balancer 资源限制

  • 不支持按需网络。仅支持现有网络。双臂负载均衡器也仅支持现有网络。
  • 现有网络必须在 vCenter 中可用。不支持在 Avi Load Balancer 中创建的对 vCenter 不可见的虚拟网络。
  • 对于网络,使用按名称进行引用绑定。如果存在多个同名网络,Avi Load Balancer Controller 会选择第一个枚举的网络。要解决此问题,请在模板中使用 id 进行引用绑定。
  • 仅支持现有安全组。 您可以部署使用现有安全组并添加到池的虚拟机。可以将计算机显式添加到池,也可以通过指定计算机所属的安全组进行动态添加。
  • NSX-T 负载均衡器的行为方式类似,对部署中的计算机运行删除实施后操作不会更新 Avi Load Balancer 池。
  • 虚拟服务的虚拟 IP 地址采用静态方式或通过 Avi Load Balancer IPAM 进行分配,而不是通过 VMware Aria Automation IPAM 进行分配。
  • 测试 Avi Load Balancer 资源的置备具有一定的局限性。VMware Aria Automation 仅检查资源是否已置备。
  • 要保持 Avi Load Balancer 资源名称的唯一性,可以对资源名称加上 deploymentID。

Avi Load Balancer 资源使用云区域分配帮助程序

云区域分配帮助程序根据云帐户类型和限制标记为置备分配云区域。

要对任何 Avi Load Balancer 资源使用分配帮助程序,必须将 Avi Load Balancer 云区域添加到项目。请参见创建 VMware Avi Load Balancer 云帐户

以下示例模板显示了如何使用云区域分配帮助程序。对于 Avi Load Balancer 资源,云帐户类型为 avilb

formatVersion: 1
inputs: {}
resources:
  Idem_AVILB_APPLICATIONS_POOL_1:
    type: Idem.AVILB.APPLICATIONS.POOL
    properties:
      name: dev-pool
      account: ${resource.Allocations_CloudZone_1.selectedCloudAccount.name}
      tier1_lr: DONT-DELETE-AVI-Admin-E2E
      vrf_ref: T1-DONT-DELETE-AVI-Admin-E2E
      lb_algorithm: LB_ALGORITHM_ROUND_ROBIN
      health_monitor_refs:
        - System-Ping
      nsx_securitygroup:
        - avinsxgroup
  Allocations_CloudZone_1:
    type: Allocations.CloudZone
    properties:
      accountType: avilb
      constraints:
        - tag: dev