f5networks.f5_modules.bigip_profile_fastl4 模块 – 管理 Fast L4 配置文件

注意

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

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

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

要在剧本中使用它,请指定:f5networks.f5_modules.bigip_profile_fastl4

f5networks.f5_modules 1.0.0 中的新增功能

概要

  • 管理 Fast L4 配置文件。 使用 FastL4 配置文件可以通过使用嵌入式数据包速度加速 (ePVA) 芯片来加速流量,从而提高受支持平台上的虚拟服务器性能和吞吐量。

参数

参数

注释

client_timeout

字符串

指定后期绑定的超时时间。

这是客户端提供选择后端服务器所需的应用程序数据的时间限制,这意味着 BIG-IP 系统等待发送方和目标信息的最长时间。

此信息通常在 FIX 登录数据包的开头到达。

0immediate 时,表示除了第一个数据包传输的时刻之外,没有其他时间。

indefinite 时,禁用限制。这允许客户端无限时间发送发送方和目标信息。

description

字符串

配置文件的描述。

explicit_flow_migration

布尔值

指定符合条件的后期绑定连接是否需要显式的 iRule 命令才能迁移到 ePVA 硬件。

false 时,后期绑定连接在建立服务器端连接后立即迁移到 ePVA。

true 时,此参数会停止自动迁移到 ePVA,并需要 iRule 通过调用 release_flow iRule 命令来显式触发 ePVA 处理。 这允许 iRule 作者控制连接何时使用 ePVA 硬件。

选项

  • false

  • true

布尔值

当系统上存在 PVA10 时,启用或禁用硬件 SYN Cookie 支持。

选项

  • false

  • true

idle_timeout

字符串

指定连接在被删除之前处于空闲状态(没有流量)的时间长度。

创建新配置文件时,如果未指定此参数,则远程设备将根据其 parent 配置文件选择适合该配置文件的默认值。

当指定一个数字时,表示 TCP 连接在被系统删除之前可以保持空闲状态的秒数。

indefinite 时,表示无论 TCP 连接保持空闲多长时间,系统都不会删除它们。

0immediate 时,表示当连接变为空闲时,系统立即删除它们。

ip_df_mode

字符串

指定传出的 TCP 数据包的 IP 标头中的“不分片 (DF)”位设置。

pmtu 时,根据 IP pmtu 设置设置传出的 IP 标头 DF 位。

preserve 时,将传出数据包的 IP 标头 DF 位设置为与传入的 IP 标头 DF 位相同。

set 时,设置传出数据包的 IP 标头 DF 位。

clear 时,清除传出数据包的 IP 标头 DF 位。

选项

  • "pmtu"

  • "preserve"

  • "set"

  • "clear"

ip_tos_to_client

字符串

对于通过系统传递到客户端的 IP 流量,指定系统是否修改 IP 数据包标头中的 IP 服务类型 (ToS) 设置。

可以是 0 到 255(含)之间的数字。当为数字时,指定系统在 IP 数据包标头中插入的 IP ToS 设置。

pass-through 时,表示 IP ToS 设置保持不变。

mimic 时,表示系统将传出数据包的 ToS 级别设置为与最近接收的传入数据包的 ToS 级别相同。

ip_tos_to_server

字符串

对于通过系统传递到后端服务器的 IP 流量,指定系统是否修改 IP 数据包标头中的 IP 服务类型 (ToS) 设置。

可以是 0 到 255(含)之间的数字。当为数字时,指定系统在 IP 数据包标头中插入的 IP ToS 设置。

pass-through 时,表示 IP ToS 设置保持不变。

mimic 时,表示系统将传出数据包的 ToS 级别设置为与最近接收的传入数据包的 ToS 级别相同。

ip_ttl_mode

字符串

指定传出 TCP 数据包的 IP 标头 TTL 模式。

当为 proxy 时,将传出 IP 标头 TTL 值分别设置为 IPv4 的 255 和 IPv6 的 64。

当为 preserve 时,将传出 IP 标头 TTL 值设置为与传入 IP 标头 TTL 值相同。

当为 decrement 时,将传出 IP 标头 TTL 值设置为比传入 TTL 值小 1。

当为 set 时,将传出 IP 标头 TTL 值设置为特定值(由 ip_ttl_v4ip_ttl_v6 指定)。

选项

  • "proxy"

  • "preserve"

  • "decrement"

  • "set"

ip_ttl_v4

整数

指定 IPv4 流量的传出数据包 IP 标头 TTL 值。

最大 TTL 值为 255。

ip_ttl_v6

整数

指定 IPv6 流量的传出数据包 IP 标头 TTL 值。

最大 TTL 值为 255。

keep_alive_interval

整数

指定保持活动探测间隔,以秒为单位。

late_binding

布尔值

启用智能选择后端服务器或池,使用 iRule 进行选择。

在运行 TMOS 12.x 分支的 BIG-IP 上启用 late_binding 需要启用软件 syn cookie。

选项

  • false

  • true

字符串

对于通过系统传递到客户端的 IP 流量,指定系统是否修改 IP 数据包标头中的链路服务质量 (QoS) 设置。

链路 QoS 值相对于其他第 2 层流量优先处理 IP 数据包。

您可以指定介于 0(最低优先级)和 7(最高优先级)之间的数字。

当为数字时,指定系统在 IP 数据包标头中插入的链路 QoS 设置。

当为 pass-through 时,指定链路 QoS 设置保持不变。

字符串

对于通过系统传递到后端服务器的 IP 流量,指定系统是否修改 IP 数据包标头中的链路服务质量 (QoS) 设置。

链路 QoS 值相对于其他第 2 层流量优先处理 IP 数据包。

您可以指定介于 0(最低优先级)和 7(最高优先级)之间的数字。

当为数字时,指定系统在 IP 数据包标头中插入的链路 QoS 设置。

当为 pass-through 时,指定链路 QoS 设置保持不变。

loose_close

布尔值

当为 true 时,指定当系统从客户端或服务器收到第一个 FIN 数据包时,系统关闭一个松散发起的连接。

选项

  • false

  • true

loose_initialization

布尔值

当为 true 时,指定当系统接收到任何 TCP 数据包时,系统初始化一个连接,而不是需要 SYN 数据包进行连接初始化。

选项

  • false

  • true

mss_override

整数

指定服务器端连接的最大段大小 (MSS) 覆盖。

有效范围为 256 到 9162 或 0 以禁用。

name

字符串 / 必需

指定配置文件的名称。

parent

字符串

指定此配置文件从中继承设置的配置文件。

创建新配置文件时,如果未指定此参数,则默认值为系统提供的 fastL4 配置文件。

partition

字符串

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

默认值: "Common"

provider

字典

在 f5networks.f5_modules 1.0.0 中添加

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

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 ← (默认)

pva_acceleration

字符串

在 f5networks.f5_modules 1.3.0 中添加

指定数据包速度 ASIC 加速策略。

选项

  • "full"

  • "dedicated"

  • "partial"

  • "none"

reassemble_fragments

布尔值

当为 true 时,指定系统重新组装 IP 片段。

选项

  • false

  • true

receive_window_size

整数

指定 BIG-IP 系统在不确认服务器的情况下可以接受的数据量。

reset_on_timeout

布尔值

当为 true 时,指定当连接超过空闲超时值时,系统除了删除连接之外,还发送重置数据包 (RST)。

选项

  • false

  • true

rtt_from_client

布尔值

当为 true 时,指定系统使用 TCP 时间戳选项来测量到客户端的往返时间。

选项

  • false

  • true

rtt_from_server

布尔值

当为 true 时,指定系统使用 TCP 时间戳选项来测量到服务器的往返时间。

选项

  • false

  • true

server_sack

布尔值

指定 BIG-IP 系统是否处理来自服务器的 cookie 响应中的选择性 ACK (Sack) 数据包。

选项

  • false

  • true

server_timestamp

布尔值

指定 BIG-IP 系统是否处理来自服务器的 cookie 响应中的时间戳请求数据包。

选项

  • false

  • true

state

字符串

当为 present 时,确保配置文件存在。

当为 absent 时,确保配置文件被删除。

选项

  • "present" ← (默认)

  • "absent"

布尔值

在 f5networks.f5_modules 1.11.0 中添加

指定是否使用 SYN Cookie。

选项

  • false

  • true

整数

指定一个值,该值将覆盖返回给客户端的 SYN-ACK 数据包中的 SYN cookie 最大段大小 (MSS) 值。

有效值为 0 和 256 到 9162 的值。

此参数仅在 TMOS 13.0.0 及更高版本上可用。

tcp_close_timeout

字符串

指定连接在删除之前可以保持空闲的时间长度。

tcp_generate_isn

布尔值

当为 true 时,指定系统根据 RFC 1948 为 SYN 数据包生成初始序列号。

选项

  • false

  • true

tcp_handshake_timeout

字符串

指定 TCP 握手可接受的持续时间(客户端同步 (SYN) 和客户端确认 (ACK) 之间的最大空闲时间)。如果 TCP 握手花费的时间超过超时时间,则系统会自动关闭连接。

当为数字时,指定系统在超时之前可以尝试建立 TCP 握手的时间长度。

当为 disabled 时,指定系统不对 TCP 握手应用超时。

当为 indefinite 时,指定尝试 TCP 握手永远不会超时。

tcp_strip_sack

布尔值

当为 true 时,指定系统阻止 TCP 选择性 ACK SackOK 选项在初始 SYN 上传递到服务器。

选项

  • false

  • true

tcp_time_wait_timeout

整数

指定连接在关闭之前处于 TIME-WAIT 状态的毫秒数。

此参数仅在 TMOS 13.0.0 及更高版本上可用。

tcp_timestamp_mode

字符串

指定系统应在 TCP 时间戳上执行的操作。

选项

  • "preserve"

  • "rewrite"

  • "strip"

tcp_wscale_mode

字符串

指定系统应在 TCP 窗口上执行的操作。

选项

  • "preserve"

  • "rewrite"

  • "strip"

timeout_recovery

字符串

指定如何处理后期绑定的客户端超时错误。

超时错误可能是由 DoS 攻击或有损连接引起的。

当为 disconnect 时,导致 BIG-IP 系统断开连接。

当为 fallback 时,根据客户端的 TCP 标头,将连接恢复到正常的 FastL4 负载平衡。这会导致 BIG-IP 系统仅根据源地址和端口选择后端服务器。

选项

  • "disconnect"

  • "fallback"

注释

注意

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

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

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

示例

- name: Create a fastL4 profile
  bigip_profile_fastl4:
    name: foo
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

返回值

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

描述

client_timeout

字符串

资源的新客户端超时值。

返回: changed

示例: "True"

description

字符串

新的描述。

返回: changed

示例: "我的 描述"

explicit_flow_migration

布尔值

新的流迁移设置。

返回: changed

示例: true

布尔值

当系统上存在 PVA10 时,启用或禁用硬件 SYN Cookie 支持。

返回: changed

示例: false

idle_timeout

字符串

新的空闲超时设置。

返回: changed

示例: "123"

ip_df_mode

字符串

新的不分片标志 (DF) 设置。

返回: changed

示例: "清除"

ip_tos_to_client

字符串

新的 IP ToS 到客户端设置。

返回: changed

示例: "100"

ip_tos_to_server

字符串

新的 IP ToS 到服务器设置。

返回: changed

示例: "100"

ip_ttl_mode

字符串

新的生存时间 (TTL) 设置。

返回: changed

示例: "代理"

ip_ttl_v4

整数

新的生存时间 (TTL) v4 设置。

返回: changed

示例: 200

ip_ttl_v6

整数

新的生存时间 (TTL) v6 设置。

返回: changed

示例: 200

keep_alive_interval

整数

新的 TCP Keep Alive 间隔设置。

返回: changed

示例: 100

late_binding

布尔值

新的延迟绑定设置。

返回: changed

示例: true

字符串

新的链路 QoS 到客户端设置。

返回: changed

示例: "直通"

字符串

新的链路 QoS 到服务器设置。

返回: changed

示例: "123"

loose_close

布尔值

新的宽松关闭设置。

返回: changed

示例: false

loose_initialization

布尔值

新的宽松启动设置。

返回: changed

示例: false

mss_override

整数

新的最大分段大小覆盖设置。

返回: changed

示例: 300

pva_acceleration

字符串

指定数据包速度 ASIC 加速策略。

返回: changed

示例: "完整"

reassemble_fragments

布尔值

新的重组 IP 分片设置。

返回: changed

示例: true

receive_window_size

整数

新的接收窗口设置。

返回: changed

示例: 1024

reset_on_timeout

布尔值

新的超时时重置设置。

返回: changed

示例: false

rtt_from_client

布尔值

新的客户端 RTT 设置。

返回: changed

示例: false

rtt_from_server

布尔值

新的服务器 RTT 设置。

返回: changed

示例: false

server_sack

布尔值

新的服务器 Sack 设置。

返回: changed

示例: true

server_timestamp

布尔值

新的服务器时间戳设置。

返回: changed

示例: true

布尔值

指定是否使用 SYN Cookie。

返回: changed

示例: false

整数

新的 SYN Cookie MSS 设置。

返回: changed

示例: 1024

tcp_close_timeout

字符串

新的 TCP 关闭超时设置。

返回: changed

示例: "100"

tcp_generate_isn

布尔值

新的生成初始序列号设置。

返回: changed

示例: false

tcp_handshake_timeout

整数

新的 TCP 握手超时设置。

返回: changed

示例: 5

tcp_strip_sack

布尔值

新的剥离 Sack OK 设置。

返回: changed

示例: false

tcp_time_wait_timeout

整数

新的 TCP 等待时间超时设置。

返回: changed

示例: 100

tcp_timestamp_mode

字符串

新的 TCP 时间戳模式设置。

返回: changed

示例: "重写"

tcp_wscale_mode

字符串

新的 TCP 窗口缩放模式设置。

返回: changed

示例: "剥离"

timeout_recovery

字符串

新的超时恢复设置。

返回: changed

示例: "回退"

作者

  • Tim Rupp (@caphrim007)

  • Wojciech Wypior (@wojtek0806)