community.network.avi_pool 模块 – 用于设置 Pool Avi RESTful 对象的模块

注意

此模块是 community.network 集合(版本 5.1.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.network。您需要其他要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 playbook 中使用它,请指定:community.network.avi_pool

注意

community.network 集合已弃用,将从 Ansible 12 中删除。有关更多信息,请参阅讨论主题

已弃用

删除于:

版本 6.0.0

原因:

此集合及其中的所有内容均未维护且已弃用。

替代方案:

未知。

概要

别名:network.avi.avi_pool

要求

在执行此模块的主机上需要以下要求。

  • avisdk

参数

参数

注释

a_pool

字符串

构成 a-b 池配置中池的容器云应用程序的名称,如果与 vs app 不同。

该字段在 18.1.2 中已弃用。

ab_pool

字符串

A/b 池配置。

该字段在 18.1.2 中已弃用。

ab_priority

字符串

此池在 a-b 池对中的优先级。

内部使用。

该字段在 18.1.2 中已弃用。

analytics_policy

字符串

确定池的分析设置。

该字段在 18.1.5、18.2.1 中引入。

analytics_profile_ref

字符串

指定与分析相关的设置。

它是对 analyticsprofile 类型对象的引用。

该字段在 18.1.4、18.2.1 中引入。

api_context

字典

Avi API 上下文,包括当前会话 ID 和 CSRF 令牌。

这允许用户执行单次登录并重用会话。

api_version

字符串

用于 Avi API 和对象的 Avi API 版本。

默认值: "16.4.4"

apic_epg_name

字符串

将 cisco apic epg 成员与池服务器同步。

application_persistence_profile_ref

字符串

持久性将确保同一用户在所需的时间段内保持在同一服务器上。

它是对 applicationpersistenceprofile 类型对象的引用。

autoscale_launch_config_ref

字符串

如果配置了,那么 avi 将触发池服务器创建和删除的编排。

它仅支持 Mesos、Openshift、Kubernetes、Docker 等容器云。

它是对 autoscalelaunchconfig 类型对象的引用。

autoscale_networks

字符串

启动配置的网络 ID。

autoscale_policy_ref

字符串

对服务器自动缩放策略的引用。

它是对 serverautoscalepolicy 类型对象的引用。

avi_api_patch_op

字符串

当使用 avi_api_update_method 作为 patch 时要使用的 patch 操作。

选择

  • "add"

  • "replace"

  • "delete"

avi_api_update_method

字符串

对象更新的默认方法是 HTTP PUT。

设置为 patch 将覆盖该行为以使用 HTTP PATCH。

选择

  • "put" ← (默认值)

  • "patch"

avi_credentials

字典

Avi 凭据字典,可用于代替枚举 Avi 控制器登录详细信息。

api_version

字符串

Avi 控制器版本

默认值: "16.4.4"

controller

字符串

Avi 控制器 IP 或 SQDN

csrftoken

字符串

Avi 控制器 API csrftoken,用于使用会话 ID 重用现有会话

默认值: ""

password

字符串

Avi 控制器密码

port

字符串

Avi 控制器端口

session_id

字符串

Avi 控制器 API 会话 ID,用于使用 csrftoken 重用现有会话

默认值: ""

tenant

字符串

Avi 控制器租户

默认值: "admin"

tenant_uuid

字符串

Avi 控制器租户 UUID

默认值: ""

timeout

字符串

Avi 控制器请求超时

默认值: 300

token

字符串

Avi 控制器 API 令牌

默认值: ""

username

字符串

Avi 控制器用户名

avi_disable_session_cache_as_fact

布尔值

它禁用将 avi 会话信息缓存为事实。

选择

  • false ← (默认值)

  • true

capacity_estimation

布尔值

服务器容量的内联估计。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

capacity_estimation_ttfb_thresh

字符串

服务器的最大首字节时间。

允许的值为 1-5000。

特殊值为 0 - ‘automatic’(自动)。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 0。

cloud_config_cksum

字符串

池的云配置校验和。

由云连接器内部设置。

cloud_ref

字符串

它是对云类型对象的引用。

conn_pool_properties

字符串

连接池属性。

在 18.2.1 版本中引入的字段。

connection_ramp_duration

字符串

新连接逐渐增加到最近上线的服务器的持续时间。

对于基于最少连接的负载均衡算法很有用。

允许的值为 1-300。

特殊值为 0 - ‘immediate’(立即)。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 10。

controller

字符串

控制器的 IP 地址或主机名。默认值是环境变量 AVI_CONTROLLER

created_by

字符串

创建者名称。

default_server_port

字符串

发送到服务器的流量将使用此目标服务器端口,除非被服务器的特定端口属性覆盖。

ssl 复选框启用 Avi 到服务器的加密。

允许的值为 1-65535。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 80。

delete_server_on_dns_refresh

布尔值

指示在 DNS 主机名刷新时,是禁用(false)还是删除(true)现有 IP 地址 - 在 DNS 刷新时,池上设置的某些 IP 地址可能

不再由解析器返回。

当此旋钮设置为 true 时,这些 IP 地址将从池中删除。

如果旋钮设置为 false,则禁用它们。

在 18.2.3 版本中引入的字段。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 True。

选择

  • false

  • true

description

字符串

池的描述。

domain_name

字符串

以逗号分隔的域名列表,将用于验证服务器证书提供的通用名称或使用者备用名称。

仅当启用通用名称检查 host_check_enabled 时才执行。

east_west

布尔值

从虚拟服务继承的配置。

选择

  • false

  • true

enabled

布尔值

启用或禁用池。

禁用将终止所有打开的连接并暂停运行状况监视器。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 True。

选择

  • false

  • true

external_autoscale_groups

字符串

池服务器的外部自动缩放组的名称。

目前仅适用于 AWS 和 Azure。

在 17.1.2 版本中引入的字段。

fail_action

字符串

当池发生故障时,启用一个操作 - 关闭连接、HTTP 重定向或本地 HTTP 响应。

默认情况下,如果池发生故障,将关闭连接。

fewest_tasks_feedback_delay

字符串

用于最少任务服务器选择算法的反馈周期。

允许的值为 1-300。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 10。

graceful_disable_timeout

字符串

用于正常禁用服务器。

虚拟服务在终止到已禁用服务器的现有连接之前,等待指定的时间。

允许的值为 1-7200。

特殊值为 0 - ‘immediate’(立即),-1 - ‘infinite’(无限)。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 1。

gslb_sp_enabled

布尔值

指示该池是否为站点持久性池。

在 17.2.1 版本中引入的字段。

选择

  • false

  • true

health_monitor_refs

字符串

通过应用一个或多个运行状况监视器来验证服务器运行状况。

活动监视器从每个服务引擎生成合成流量,并根据响应将服务器标记为启动或关闭。

被动监视器仅侦听客户端到服务器的通信。

它根据成功的响应提高或降低发送到服务器的流量比率。

它是对 healthmonitor 类型对象的引用。

host_check_enabled

布尔值

启用服务器证书的通用名称检查。

如果启用且未指定显式域名,则 Avi 将使用传入的主机头进行匹配。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

inline_health_monitor

布尔值

被动监视器将监视客户端到服务器的连接和请求,并根据成功的响应调整服务器的流量负载。

这可能会改变负载均衡方法的预期行为,例如轮询。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 True。

选择

  • false

  • true

ipaddrgroup_ref

字符串

使用 IP 地址组中的服务器列表。

它是对 ipaddrgroup 类型对象的引用。

lb_algorithm

字符串

负载均衡算法将选择池可用服务器列表中的一个服务器。

枚举选项 - LB_ALGORITHM_LEAST_CONNECTIONS,LB_ALGORITHM_ROUND_ROBIN,LB_ALGORITHM_FASTEST_RESPONSE,LB_ALGORITHM_CONSISTENT_HASH,

LB_ALGORITHM_LEAST_LOAD,LB_ALGORITHM_FEWEST_SERVERS,LB_ALGORITHM_RANDOM,LB_ALGORITHM_FEWEST_TASKS,LB_ALGORITHM_NEAREST_SERVER,

LB_ALGORITHM_CORE_AFFINITY,LB_ALGORITHM_TOPOLOGY。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 LB_ALGORITHM_LEAST_CONNECTIONS。

lb_algorithm_consistent_hash_hdr

字符串

用于哈希键的 HTTP 标头名称。

lb_algorithm_core_nonaffinity

字符串

用于基于核心亲缘关系的服务器选择的非亲缘关系程度。

允许的值为 1-65535。

在 17.1.3 版本中引入的字段。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 2。

lb_algorithm_hash

字符串

用作确定客户端和服务器之间哈希的键的标准。

枚举选项 - LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS,LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT,

LB_ALGORITHM_CONSISTENT_HASH_URI,LB_ALGORITHM_CONSISTENT_HASH_CUSTOM_HEADER,LB_ALGORITHM_CONSISTENT_HASH_CUSTOM_STRING,

LB_ALGORITHM_CONSISTENT_HASH_CALLID。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS。

lookup_server_by_name

布尔值

允许按名称查找服务器。

在 17.1.11,17.2.4 版本中引入的字段。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

max_concurrent_connections_per_server

字符串

允许到池中每个服务器的最大并发连接数。

请注意,应用的值将不小于池所在的 service engine 的数量。

如果设置为 0,则不应用限制。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 0。

max_conn_rate_per_server

字符串

限制到每个服务器的连接速率。

min_health_monitors_up

字符串

将服务器标记为启动状态的最小正常运行状态的运行状况监视器数量。

在 18.2.1, 17.2.12 版本中引入的字段。

min_servers_up

字符串

将池标记为启动状态的最小正常运行状态的服务器数量。

在 18.2.1, 17.2.12 版本中引入的字段。

name

字符串 / 必需

池的名称。

networks

字符串

(内部使用)指定为包含此池服务器的网络。

服务器可以通过过滤器进一步缩小范围。

此字段由 Avi 内部使用,用户不可编辑。

nsx_securitygroup

字符串

在其中创建池服务器的 NSX 服务组列表。

在 17.1.1 版本中引入的字段。

password

字符串

Avi 控制器中 Avi 用户的密码。默认值是环境变量 AVI_PASSWORD

pki_profile_ref

字符串

Avi 将根据选定的 PKI 配置文件验证服务器提供的 SSL 证书。

它是对 pkiprofile 类型对象的引用。

placement_networks

字符串

手动选择用于提供到池服务器的可达性的网络和子网。

使用以下语法 10-1-1-0/24 指定子网。

当池服务器未直接连接,而是可从服务引擎路由时,在 VRF 配置中使用静态路由。

prst_hdr_name

字符串

用于自定义标头持久性的标头名称。

该字段在 18.1.2 中已弃用。

request_queue_depth

字符串

当池已满时,要排队的最小请求数。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 128。

request_queue_enabled

布尔值

当池已满时启用请求队列。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

rewrite_host_header_to_server_name

布尔值

将传入的主机头重写为请求所代理到的服务器的服务器名称。

启用此功能会为池中所有服务器的请求重写主机头。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

rewrite_host_header_to_sni

布尔值

如果指定了 SNI 服务器名称,则将传入的主机头重写为 SNI 服务器名称。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

server_auto_scale

布尔值

服务器自动缩放。

不再使用。

该字段在 18.1.2 中已弃用。

选择

  • false

  • true

server_count

字符串

在 18.2.1 版本中已弃用。

server_name

字符串

如果启用了 SNI,则将在服务器连接的 TLS SNI 扩展中使用的完全限定 DNS 主机名。

如果未指定值,则 Avi 将改为使用传入的主机头。

server_reselect

字符串

用于 HTTP 请求的服务器重新选择配置。

server_timeout

字符串

服务器超时值指定在 Avi 和服务器之间需要建立服务器连接并完成请求-响应交换的时间。

之间。

值 0 会导致使用 60 分钟的默认超时。

允许的值为 0-3600000。

在 18.1.5,18.2.1 版本中引入的字段。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 0。

servers

字符串

池将负载均衡的流量定向到此目标服务器列表。

可以通过 IP 地址、名称、网络或通过 IP 地址组配置服务器。

service_metadata

字符串

与此池提供的服务相关的元数据。

在 OpenShift/Kubernetes 环境中,存储应用程序元数据信息。

任何用户输入到此字段的内容都将被 Avi Vantage 覆盖。

在 17.2.14,18.1.5,18.2.1 版本中引入的字段。

sni_enabled

布尔值

为服务器连接启用 TLS SNI。

如果禁用,Avi 将不会发送 SNI 扩展作为握手的一部分。

在 API 或模块中未指定时的默认值由 Avi 控制器解释为 True。

选择

  • false

  • true

ssl_key_and_certificate_ref

字符串

服务引擎将向服务器提供客户端 SSL 证书。

它是对 sslkeyandcertificate 类型对象的引用。

ssl_profile_ref

字符串

启用后,Avi 会重新加密到后端服务器的流量。

特定的 SSL 配置文件定义将支持哪些密码和 SSL 版本。

它是对 sslprofile 类型对象的引用。

state

字符串

应应用于实体的状态。

选择

  • "absent"(不存在)

  • "present" ←(默认)

tenant

字符串

用于所有 Avi API 调用和对象上下文的租户名称。

默认值: "admin"

tenant_ref

字符串

它是对 tenant 类型对象的引用。

tenant_uuid

字符串

用于所有 Avi API 调用和对象上下文的租户 UUID。

默认值: ""

url

字符串

对象的 Avi 控制器 URL。

use_service_port

布尔值

在将连接发送到服务器时不转换客户端的目标端口。

池或服务器指定的服务端口仍将用于运行状况监视。

API 或模块中未指定时的默认值由 Avi 控制器解释为 False。

选择

  • false

  • true

username

字符串

用于访问 Avi 控制器的用户名。默认值是环境变量 AVI_USERNAME

uuid

字符串

池的 UUID。

vrf_ref

字符串

池绑定到的虚拟路由上下文。

这用于提供池所附加的网络集的隔离。

池继承虚拟服务的虚拟路由上下文,此字段仅在内部使用,由 pb-transform 设置。

它是对 vrfcontext 类型对象的引用。

备注

注意

示例

- name: Create a Pool with two servers and HTTP monitor
  community.network.avi_pool:
    controller: 10.10.1.20
    username: avi_user
    password: avi_password
    name: testpool1
    description: testpool1
    state: present
    health_monitor_refs:
        - '/api/healthmonitor?name=System-HTTP'
    servers:
        - ip:
            addr: 10.10.2.20
            type: V4
        - ip:
            addr: 10.10.2.21
            type: V4

- name: Patch pool with a single server using patch op and avi_credentials
  community.network.avi_pool:
    avi_api_update_method: patch
    avi_api_patch_op: delete
    avi_credentials: "{{avi_credentials}}"
    name: test-pool
    servers:
      - ip:
        addr: 10.90.64.13
        type: 'V4'
  register: pool
  when:
    - state | default("present") == "present"

返回值

常见的返回值在此处记录 这里,以下是此模块独有的字段

描述

obj

字典

池(api/pool)对象

已返回: success,changed

状态

  • 此模块将在 6.0.0 版本中删除。[已弃用]

  • 有关更多信息,请参阅 已弃用

作者

  • Gaurav Rastogi (@grastogi23)