f5networks.f5_modules.bigip_gtm_wide_ip 模块 – 管理 F5 BIG-IP GTM 广域 IP

注意

此模块是 f5networks.f5_modules 集合(版本 1.32.1)的一部分。

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

要安装它,请使用:ansible-galaxy collection install f5networks.f5_modules

要在 playbook 中使用它,请指定:f5networks.f5_modules.bigip_gtm_wide_ip

f5networks.f5_modules 1.0.0 中的新增功能

概要

  • 管理 F5 BIG-IP GTM(现在为 BIG-IP DNS)广域 IP。

参数

参数

注释

别名

列表 / 元素=字符串

指定您正在负载平衡的网站内容的可选域名。

您可以使用与实际广域 IP 名称相同的通配符作为别名。

irules

列表 / 元素=字符串

要应用的规则列表。

如果要删除所有现有 iRule,请指定一个空值;""。请参阅文档以获取示例。

last_resort_pool

字符串

指定系统要用作广域 IP 的最后手段池的 GTM 池。

此参数的有效池是此模块中指定的 type 的池。

name

别名:wide_ip

字符串 / 必需

广域 IP 名称。此名称必须格式化为完全限定域名 (FQDN)。您也可以使用别名 wide_ip,但这已弃用,将在未来的 Ansible 版本中删除。

partition

字符串

设备分区,用于管理资源。

默认值: "Common"

persist_cidr_ipv4

整数

指定用于对 IPv4 LDNS 地址进行分组的掩码。此功能允许在此掩码内匹配的 LDNS 地址共享一个持久性记录。

persist_cidr_ipv6

整数

指定用于对 IPv6 LDNS 地址进行分组的掩码。此功能允许在此掩码内匹配的 LDNS 地址共享一个持久性记录。

persistence

布尔值

true 时,确保当本地 DNS 代表客户端进行重复请求时,系统会将客户端重新连接到与之前请求相同的资源。

false 时,确保重复请求不会将客户端重新连接到同一资源。

选项

  • false

  • true

persistence_ttl

整数

指定维护本地 DNS 和特定虚拟服务器之间连接的时间。

pool_lb_method

别名:lb_method

字符串

指定用于在此广域 IP 中选择池的负载平衡方法。仅当为广域 IP 配置了多个池时,此设置才相关。

选项

  • "round-robin"

  • "ratio"

  • "topology"

  • "global-availability"

pools

列表 / 元素=字典

您要与广域 IP 关联的池。

如果在创建新的广域 IP 时未提供 ratio,则默认值为 1。

name

字符串 / 必需

要包含的池的名称。

order

整数

池相对于附加到此广域 IP 的其他池的顺序。

当使用全局可用性负载平衡方法时,池顺序很重要。

当未提供 order 时,模块会将其赋值为 0

ratio

整数

池的比例。

系统将此数字与比率负载平衡方法一起使用。

当未提供 ratio 时,模块会将其赋值为 0

provider

字典

在 f5networks.f5_modules 1.0.0 中添加

包含连接详细信息的字典对象。

auth_provider

字符串

配置身份验证提供程序以从远程设备获取身份验证令牌。

此选项在处理 BIG-IQ 设备时真正使用。

no_f5_teem

布尔值

如果为 yes,则不会将 TEEM 遥测数据发送到 F5。

您可以通过设置环境变量 F5_TELEMETRY_OFF 来省略此选项。

以前使用的变量 F5_TEEM 已弃用,因为其名称令人困惑。

选项

  • false ← (默认)

  • true

password

别名: pass, pwd

字符串 / 必需

用于连接 BIG-IP 或 BIG-IQ 的用户帐户的密码。

您可以通过设置环境变量 F5_PASSWORD 来省略此选项。

server

字符串 / 必需

BIG-IP 主机或 BIG-IQ 主机。

您可以通过设置环境变量 F5_SERVER 来省略此选项。

server_port

整数

BIG-IP 服务器端口。

您可以通过设置环境变量 F5_SERVER_PORT 来省略此选项。

默认值: 443

timeout

整数

指定与网络设备通信(无论是连接还是发送命令)的超时时间(以秒为单位)。如果操作在超时之前未完成,模块将报错。

transport

字符串

配置连接到远程设备时使用的传输连接。

选项

  • "rest" ← (默认)

user

字符串 / 必需

连接到 BIG-IP 或 BIG-IQ 的用户名。此用户必须在设备上具有管理权限。

您可以通过设置环境变量 F5_USER 来省略此选项。

validate_certs

布尔值

如果为 no,则不验证 SSL 证书。仅在个人控制的使用自签名证书的站点上使用此选项。

您可以通过设置环境变量 F5_VALIDATE_CERTS 来省略此选项。

选项

  • false

  • true ← (默认)

state

字符串

当为 presentenabled 时,确保 Wide IP 存在并且已启用。

当为 absent 时,确保 Wide IP 已被删除。

当为 disabled 时,确保 Wide IP 存在并且已禁用。

选项

  • "present" ← (默认)

  • "absent"

  • "disabled"

  • "enabled"

type

字符串 / 必需

指定 Wide IP 的类型。GTM Wide IP 除了名称之外,还需要按查询类型进行键控,因为池成员需要根据它们旨在提供的响应 RDATA 使用不同的属性。

选项

  • "a"

  • "aaaa"

  • "cname"

  • "mx"

  • "naptr"

  • "srv"

注释

注意

  • 有关使用 Ansible 管理 F5 Networks 设备的更多信息,请参阅 https://ansible.org.cn/integrations/networks/f5

  • 需要 BIG-IP 软件版本 >= 12。

  • F5 模块仅操作 F5 产品的运行配置。要确保 BIG-IP 的特定配置持久保存到磁盘,请务必包含至少一个使用 f5networks.f5_modules.bigip_config 模块保存运行配置的任务。有关正确使用该模块以保存运行配置,请参阅该模块的文档。

示例

- name: Set lb method
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Add iRules to the Wide IP
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    irules:
      - irule1
      - irule2
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Remove one iRule from the Virtual Server
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    irules:
      - irule1
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Remove all iRules from the Virtual Server
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    irules: ""
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Assign a pool with ratio to the Wide IP
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    pools:
      - name: pool1
        ratio: 100
        order: 2
      - name: pool1
        ratio: 100
        order: 1
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

- name: Assign a pool with persistence to the Wide IP
  bigip_gtm_wide_ip:
    pool_lb_method: round-robin
    name: my-wide-ip.example.com
    type: a
    pools:
      - name: pool1
        persistence: true
        persist_cidr_ipv4: 24
        persist_cidr_ipv6: 120
        persistence_ttl: 3500
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

返回值

通用返回值记录在此处,以下是此模块特有的字段

Key

描述

别名

列表 / 元素=字符串

在 Wide IP 上设置的别名。

返回: changed

示例: ["alias1.foo.com", "*.wildcard.domain"]

irules

列表 / 元素=字符串

在 Wide IP 上设置的 iRule。

返回: changed

示例: ["/Common/irule1", "/Common/irule2"]

lb_method

字符串

Wide IP 使用的新负载均衡方法。

返回: changed

示例: "topology"

persist_cidr_ipv4

整数

指定用于分组 IPv4 LDNS 地址的掩码。

返回: changed

示例: 32

persist_cidr_ipv6

整数

指定用于分组 IPv6 LDNS 地址的掩码。

返回: changed

示例: 128

persistence

布尔值

是否会保留池连接。

返回: changed

示例: false

persistence_ttl

整数

指定本地 DNS 和特定虚拟服务器之间的持久性 TTL。

返回: changed

示例: 3600

state

字符串

Wide IP 的新状态。

返回: changed

示例: "disabled"

作者

  • Tim Rupp (@caphrim007)

  • Wojciech Wypior (@wojtek0806)