f5networks.f5_modules.bigip_profile_tcp 模块 – 在 BIG-IP 上管理 TCP 配置文件

注意

此模块是 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_tcp

f5networks.f5_modules 1.0.0 中的新增功能

概要

  • 在 BIG-IP 系统上管理 TCP 配置文件。有很多 TCP 配置文件,每个配置文件对标准 tcp 配置文件都有自己的调整。使用此模块的用户应该意识到,许多可用选项没有模块默认值。相反,默认值由 BIG-IP 系统本身分配,在大多数情况下是可以接受的。

参数

参数

注释

delayed_acks

布尔值

true 时,系统发送的 ACK 段少于收到的每个数据段。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

选项

  • false

  • true

early_retransmit

布尔值

true 时,系统使用早期快速重传来减少接收缓冲区或用户数据受限连接的恢复时间。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

选项

  • false

  • true

idle_timeout

字符串

指定连接空闲(无流量)的时间长度,在此时间长度之后,连接才有资格被删除。

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

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

当为 0indefinite 时,指定系统不删除 TCP 连接,无论它们保持空闲多长时间。

initial_congestion_window_size

整数

指定与该目标的连接的初始拥塞窗口大小。实际窗口大小是此值乘以同一连接的 MSS。

设置为 0 时,系统使用 RFC2414 中指定的值。

有效值范围是 0-16(包含)。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

initial_receive_window_size

整数

指定与该目标的连接的初始接收窗口大小。实际窗口大小是此值乘以同一连接的 MSS。

设置为 0 时,系统使用慢启动值。

有效值范围是 0-16(包含)。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

ip_tos_to_client

字符串

指定系统插入目标客户端的 TCP 数据包中的 L3 服务类型级别。

当为 pass-through 时,IP ToS 设置保持不变。

当为 mimic 时,系统将出站数据包的 ToS 级别设置为最近接收到的入站数据包的相同 ToS 级别。

当设置为数字时,该数字表示系统插入 IP 数据包报头中的 IP ToS 设置。有效数字范围是 0-255(包含)。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

keep_alive_interval

字符串

f5networks.f5_modules 1.22.0 中新增

指定系统多久通过空闲 TCP 连接发送一次数据,以确定连接是否仍然有效。

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

当为 0indefinite 时,指定系统不发送 keep-alive 通信。

nagle

字符串

enabled 时,系统应用 Nagle 算法以减少网络上的短段数量。

auto 时,根据网络状况决定是否使用 Nagle 算法。

对于诸如 Telnet、rlogin 或 SSH 之类的交互式协议,F5 建议在高延迟网络上禁用此设置,以提高应用程序响应能力。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

选项

  • "auto"

  • "enabled"

  • "disabled"

name

字符串 / 必需

指定配置文件的名称。

parent

字符串

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

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

partition

字符串

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

默认值: "Common"

provider

字典

f5networks.f5_modules 1.0.0 中新增

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

auth_provider

字符串

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

此选项在使用 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 ← (默认)

代理选项 (proxy_options)

布尔值

true 时,系统仅当与客户端协商后才向服务器通告选项(例如时间戳)。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

选项

  • false

  • true

状态 (state)

字符串

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

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

选项

  • "present" ← (默认)

  • "absent"

SYN 重传初始 RTO (syn_rto_base)

整数

指定 SYN 重传的初始 RTO(重传超时)基数乘数,单位为 毫秒

此值将由指数退避表修改,以选择后续重传的时间间隔。

有效值范围为 0-5000(含)。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

TIME-WAIT 状态连接重用 (time_wait_recycle)

布尔值

指定如果收到 SYN 数据包(表示新的连接请求),则重用处于 TIME-WAIT 状态的连接。

false 时,处于 TIME-WAIT 状态的连接将在指定的时间段内保持未使用状态。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

选项

  • false

  • true

TIME-WAIT 超时 (time_wait_timeout)

字符串

f5networks.f5_modules 1.3.0 版本中添加

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

immediate 时,系统在连接进入 TIME-WAIT 状态后立即关闭连接。

indefinite0 时,系统不会关闭 TCP 连接,无论它们在 TIME-WAIT 状态下保持多长时间。

有效数值范围为 0 到 600000 毫秒。

创建新配置文件时,如果未指定此参数,则由父配置文件提供默认值。

备注

注意

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

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

  • F5 模块仅操作 F5 产品的运行配置。为了确保 BIG-IP 特定的配置持久保存到磁盘,请确保至少包含一个使用 f5networks.f5_modules.bigip_config 模块保存运行配置的任务。请参考模块文档,了解保存运行配置的正确使用方法。

示例

- name: Create a TCP profile
  bigip_profile_tcp:
    name: foo
    parent: f5-tcp-progressive
    time_wait_recycle: false
    idle_timeout: 300
    state: present
    provider:
      user: admin
      password: secret
      server: lb.mydomain.com
  delegate_to: localhost

返回值

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

键值 (Key)

描述

delayed_acks

布尔值

指定系统是否发送少于每接收到的数据段一个 ACK 段。

返回值:changed

示例: true

early_retransmit

布尔值

指定是否使用快速重传。

返回值:changed

示例: true

idle_timeout

整数

资源的新空闲超时。

返回值:changed

示例: 100

initial_congestion_window_size

整数

指定与该目标的连接的初始拥塞窗口大小。

返回值:changed

示例: 5

initial_receive_window_size

整数

指定与该目标的连接的初始接收窗口大小。

返回值:changed

示例: 10

ip_tos_to_client

字符串

指定系统插入目标客户端的 TCP 数据包中的 L3 服务类型级别。

返回值:changed

示例: "mimic"

keep_alive_interval

字符串

指定系统在空闲 TCP 连接上发送数据的频率。

返回值:changed

示例: "indefinite"

nagle

字符串

指定是否使用 Nagle 算法。

返回值:changed

示例: "auto"

parent

字符串

资源的新父项。

返回值:changed

示例: "f5-tcp-optimized"

代理选项 (proxy_options)

布尔值

指定系统是否向服务器通告已协商的选项。

返回值:changed

示例: false

SYN 重传初始 RTO (syn_rto_base)

整数

指定 SYN 重传的初始重传超时基数乘数。

返回值:changed

示例: 2000

TIME-WAIT 状态连接重用 (time_wait_recycle)

布尔值

重用 TIME-WAIT 状态下的连接。

返回值:changed

示例: true

TIME-WAIT 超时 (time_wait_timeout)

字符串

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

返回值:changed

示例: "immediate"

作者

  • Tim Rupp (@caphrim007)

  • Wojciech Wypior (@wojtek0806)