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 配置文件。通过使用嵌入式数据包速度加速 (ePVA) 芯片加速流量,使用 FastL4 配置文件可以提高受支持平台上的虚拟服务器性能和吞吐量。

参数

参数

注释

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时,分别将IPv4/IPv6的输出IP报头TTL值设置为255/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中添加

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

auth_provider

字符串

配置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

示例:"My description"

explicit_flow_migration

布尔值

新的流量迁移设置。

返回:changed

示例:true

布尔值

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

返回:changed

示例: false

idle_timeout

字符串

新的空闲超时设置。

返回:changed

示例: "123"

ip_df_mode

字符串

新的“禁止分片”标志 (DF) 设置。

返回:changed

示例: "clear"

ip_tos_to_client

字符串

新的 IP 到客户端的服务质量设置。

返回:changed

示例: "100"

ip_tos_to_server

字符串

新的 IP 到服务器的服务质量设置。

返回:changed

示例: "100"

ip_ttl_mode

字符串

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

返回:changed

示例: "proxy"

ip_ttl_v4

整数

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

返回:changed

示例: 200

ip_ttl_v6

整数

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

返回:changed

示例: 200

keep_alive_interval

整数

新的 TCP 保活间隔设置。

返回:changed

示例: 100

late_binding

布尔值

新的延迟绑定设置。

返回:changed

示例:true

字符串

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

返回:changed

示例: "pass-through"

字符串

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

返回:changed

示例: "123"

loose_close

布尔值

新的宽松关闭设置。

返回:changed

示例: false

loose_initialization

布尔值

新的宽松启动设置。

返回:changed

示例: false

mss_override

整数

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

返回:changed

示例: 300

pva_acceleration

字符串

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

返回:changed

示例: "full"

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 TIME_WAIT 超时设置。

返回:changed

示例: 100

tcp_timestamp_mode

字符串

新的 TCP 时间戳模式设置。

返回:changed

示例: "rewrite"

tcp_wscale_mode

字符串

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

返回:changed

示例: "strip"

timeout_recovery

字符串

新的超时恢复设置。

返回:changed

示例: "fallback"

作者

  • Tim Rupp (@caphrim007)

  • Wojciech Wypior (@wojtek0806)