fortinet.fortimanager.fmgr_wanprof_system_sdwan 模块 – 使用 SD-WAN 配置冗余互联网连接
注意
此模块是 fortinet.fortimanager 集合(版本 2.8.2)的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install fortinet.fortimanager
。
要在 playbook 中使用它,请指定:fortinet.fortimanager.fmgr_wanprof_system_sdwan
。
fortinet.fortimanager 2.1.0 中的新增功能
概要
此模块能够配置 FortiManager 设备。
示例包括所有参数和值,这些参数和值需要在使用前调整到数据源。
参数
参数 |
注释 |
---|---|
无需使用用户名和密码即可访问 FortiManager 的令牌。 |
|
请求 URL 中的参数 (adom)。 |
|
仅当模块模式与 FortiManager API 结构不同时才设置为 True,模块将继续执行而不验证参数。 选项
|
|
启用/禁用任务的日志记录。 选项
|
|
使用 forticloud API 访问令牌验证 Ansible 客户端。 |
|
底层 Json RPC 请求的重写方法。 选项
|
|
将重写失败条件的 rc 代码列表。 |
|
将重写成功条件的 rc 代码列表。 |
|
请求 URL 中的参数 (wanprof)。 |
|
设置的顶级参数。 |
|
生成应用程序性能日志的时间间隔(以秒为单位) |
|
复制。 |
|
(列表或字符串)目标地址或地址组名称。 |
|
(列表或字符串)目标地址 6 或地址 6 组名称。 |
|
(列表或字符串)传出 |
|
复制规则 ID |
|
启用/禁用丢弃已复制的数据包。 选项
|
|
配置数据包复制方法。 选项
|
|
(列表或字符串)服务和服务组名称。 |
|
(列表或字符串)SD-WAN 服务规则 ID 列表。 |
|
启用/禁用数据包复制匹配服务规则中的运行状况检查 SLA。 选项
|
|
(列表或字符串)源地址或地址组名称。 |
|
(列表或字符串)源地址 6 或地址 6 组名称。 |
|
(列表或字符串)传入 |
|
在 SD-WAN 区域中复制数据包的最大接口成员数 |
|
(列表)将发出警报的物理接口。 |
|
启用/禁用 SD-WAN 互联网连接状态检查 选项
|
|
运行状况检查。 |
|
动态服务器。 |
|
地址模式 选项
|
|
流量类别 ID。 |
|
确定如何检测服务器的模式。 选项
|
|
区分服务代码点 |
|
如果协议为 DNS,则 DNS 服务器返回的预期响应 IP。 |
|
用于 DNS 探测的要解析的完全限定域名。 |
|
启用/禁用嵌入的测量健康信息。 选项
|
|
在服务器被认为丢失之前的失败次数 |
|
FTP 服务器上用于 FTP 健康检查探测的要下载的完整路径和文件名。 |
|
FTP 模式。 选项
|
|
HA 选举优先级 |
|
HTTP 标头中 http-agent 字段中的字符串。 |
|
如果协议是 HTTP,则用于与服务器通信的 URL。 |
|
如果协议是 HTTP,则服务器返回的预期响应字符串。 |
|
状态检查间隔(以毫秒为单位),或尝试连接到服务器之间的时间 |
|
(列表或字符串) 成员序列号列表。 |
|
用于 MOS 计算的编解码器 选项
|
|
状态检查或健康检查名称。 |
|
twamp 测试会话的数据包大小, |
|
(列表) 身份验证模式下的 Twamp 控制器密码 |
|
用于通过选定协议与服务器通信的端口号 |
|
应使用多少个最近的探测来计算延迟和抖动 |
|
启用/禁用探测数据包的传输。 选项
|
|
在将探测数据包视为丢失之前等待的时间 |
|
用于确定 FortiGate 是否可以与服务器通信的协议。 选项
|
|
测量 tcp-connect 质量的方法。 选项
|
|
在服务器被认为已恢复之前收到的成功响应数 |
|
Twamp 控制器安全模式。 选项
|
|
(列表) 服务器的 IP 地址或 FQDN 名称。 |
|
Sla。 |
|
SLA ID。 |
|
用于 SLA 决策的抖动(以毫秒为单位)。 |
|
用于 SLA 决策的延迟(以毫秒为单位)。 |
|
作为链路选择依据的标准。 选项
|
|
SLA 被标记为通过的最小平均意见得分。 |
|
用于 SLA 决策的数据包丢失率(以百分比表示)。 |
|
当处于 SLA 时要分配到路由表中的值 |
|
当超出 SLA 时要分配到路由表中的值 |
|
生成 SLA 失败日志消息的时间间隔(以秒为单位) |
|
从 SLA 子表中选择 ID。 |
|
生成 SLA 通过日志消息的时间间隔(以秒为单位) |
|
在健康检查数据包中发送到服务器的源 IP 地址。 |
|
在健康检查数据包中发送到服务器的源 IPv6 地址。 |
|
启用/禁用系统 DNS 作为探测服务器。 选项
|
|
抖动的警报阈值 |
|
延迟的警报阈值 |
|
数据包丢失的警报阈值 |
|
抖动的警告阈值 |
|
延迟的警告阈值 |
|
数据包丢失的警告阈值 |
|
启用/禁用更新级联接口。 选项
|
|
启用/禁用更新静态路由。 选项
|
|
用于访问探测服务器的用户名。 |
|
虚拟路由转发 ID。 |
|
FortiGuard 健康检查。 |
|
地址模式 选项
|
|
(列表) 流量类别 ID。 |
|
确定如何检测服务器的模式。 选项
|
|
区分服务代码点 |
|
如果协议为 DNS,则 DNS 服务器返回的预期响应 IP。 |
|
用于 DNS 探测的要解析的完全限定域名。 |
|
启用/禁用嵌入的测量健康信息。 选项
|
|
在服务器被认为丢失之前的失败次数 |
|
FTP 服务器上用于 FTP 健康检查探测的要下载的完整路径和文件名。 |
|
FTP 模式。 选项
|
|
HA 选举优先级 |
|
HTTP 标头中 http-agent 字段中的字符串。 |
|
如果协议是 HTTP,则用于与服务器通信的 URL。 |
|
如果协议是 HTTP,则服务器返回的预期响应字符串。 |
|
状态检查间隔(以毫秒为单位),或尝试连接到服务器之间的时间 |
|
(列表) 成员序列号列表。 |
|
用于 MOS 计算的编解码器 选项
|
|
TWAMP 测试会话的数据包大小。 |
|
(列表) 身份验证模式下的 TWAMP 控制器密码。 |
|
用于通过选定协议与服务器通信的端口号 |
|
应使用多少个最近的探测来计算延迟和抖动 |
|
启用/禁用探测数据包的传输。 选项
|
|
在将探测数据包视为丢失之前等待的时间 |
|
用于确定 FortiGate 是否可以与服务器通信的协议。 选项
|
|
测量 tcp-connect 质量的方法。 选项
|
|
在服务器被认为已恢复之前收到的成功响应数 |
|
Twamp 控制器安全模式。 选项
|
|
(列表) 来自 FortiGuard 的预定义 IP 地址或 FQDN 名称。 |
|
Sla。 |
|
SLA ID。 |
|
用于 SLA 决策的抖动(以毫秒为单位)。 |
|
用于 SLA 决策的延迟(以毫秒为单位)。 |
|
作为链路选择依据的标准。 选项
|
|
SLA 被标记为通过的最小平均意见得分。 |
|
用于 SLA 决策的数据包丢失率(以百分比表示)。 |
|
当处于 SLA 时要分配到路由表中的值 |
|
当超出 SLA 时要分配到路由表中的值 |
|
生成 SLA 失败日志消息的时间间隔(以秒为单位) |
|
从 SLA 子表中选择 ID。 |
|
生成 SLA 通过日志消息的时间间隔(以秒为单位) |
|
在健康检查数据包中发送到服务器的源 IP 地址。 |
|
健康检查数据包中使用的源 IPv6 地址,发送至服务器。 |
|
启用/禁用系统 DNS 作为探测服务器。 选项
|
|
状态检查或预定义的健康检查目标名称。 |
|
抖动的警报阈值 |
|
延迟的警报阈值 |
|
数据包丢失的警报阈值 |
|
抖动的警告阈值 |
|
延迟的警告阈值 |
|
数据包丢失的警告阈值 |
|
启用/禁用更新级联接口。 选项
|
|
启用/禁用更新静态路由。 选项
|
|
用于访问探测服务器的用户名。 |
|
虚拟路由转发 ID。 |
|
用于将 Internet 流量负载均衡到 SD-WAN 成员的算法或模式。 选项
|
|
成员。 |
|
动态成员。 |
|
注释。 |
|
此接口在 SLA 模式下的服务成本 |
|
此接口的默认网关。 |
|
IPv6 网关。 |
|
此接口的入口溢出阈值 |
|
接口名称。 |
|
此成员路由的首选源。 |
|
接口的优先级 |
|
IPv6 的接口优先级 |
|
当此成员在 SLA 内时,路由到此成员的首选优先级 |
|
当此成员超出 SLA 时,路由到此成员的首选优先级 |
|
序列号 |
|
在健康检查数据包中发送到服务器的源 IP 地址。 |
|
健康检查数据包中使用的源 IPv6 地址,发送至服务器。 |
|
此接口的出口溢出阈值 |
|
在 SD-WAN 中启用/禁用此接口。 选项
|
|
测量的传输组 |
|
测量的体积比率 |
|
此接口的权重,用于加权负载均衡。 |
|
区域名称。 |
|
邻居。 |
|
SD-WAN 健康检查名称。 |
|
邻居的 IP/IPv6 地址。 |
|
(列表或字符串) 成员序列号。 |
|
当邻居是首选时,满足 SLA 的最小成员数。 |
|
选择邻居的指标。 选项
|
|
邻居的角色。 选项
|
|
与邻居配合使用的 SD-WAN 服务 ID。 |
|
SLA ID。 |
|
从邻居启动时,从主邻居切换到次邻居的等待时间,以秒为单位。 |
|
启用/禁用从次邻居切换到主邻居的保持切换功能。 选项
|
|
当禁用保持切换时,从次邻居切换到主邻居的等待时间,以秒为单位。 |
|
选项。 选项
|
|
服务。 |
|
地址模式 选项
|
|
设置/取消设置服务为代理专用。 选项
|
|
在自定义配置文件 1 的公式中,可用双向带宽倒数的系数。 |
|
注释。 |
|
启用/禁用将 SD-WAN 用作默认服务。 选项
|
|
启用/禁用转发流量 DSCP 标签。 选项
|
|
转发流量 DSCP 标签。 |
|
启用/禁用反向流量 DSCP 标签。 选项
|
|
反向流量 DSCP 标签。 |
|
(列表或字符串) 目标地址名称。 |
|
(列表或字符串) 目标地址 6 名称。 |
|
启用/禁用对目标地址匹配的否定。 选项
|
|
目标端口号结束。 |
|
源端口号结束。 |
|
启用/禁用 SD-WAN 服务网关。 选项
|
|
(列表或字符串) 用户组。 |
|
在负载均衡模式下,为选定的优先级成员使用的哈希算法。 选项
|
|
(列表或字符串) 健康检查列表。 |
|
从备份成员切换到主成员的等待时间,以秒为单位 |
|
SD-WAN 规则 ID |
|
(列表或字符串) 源接口名称。 |
|
启用/禁用对输入设备匹配的否定。 选项
|
|
(列表) 源输入区域名称。 |
|
启用/禁用使用 Internet 服务进行基于应用程序的负载均衡。 选项
|
|
(列表) 基于应用程序控制的 Internet 服务 ID 列表。 |
|
(列表) 一个或多个应用程序控制类别的 ID。 |
|
(列表或字符串) 基于应用程序控制的 Internet 服务组列表。 |
|
(列表或字符串) 自定义 Internet 服务名称列表。 |
|
(列表或字符串) 自定义 Internet 服务组列表。 |
|
(列表或字符串) Internet 服务组列表。 |
|
(列表或字符串) Internet 服务名称列表。 |
|
在自定义配置文件 1 的公式中,抖动的系数。 |
|
在自定义配置文件 1 的公式中,延迟的系数。 |
|
链路成本因子。 选项
|
|
链路成本值的百分比阈值变化,这将导致策略路由重新生成 |
|
启用/禁用负载均衡。 选项
|
|
满足 SLA 的最小成员数。 |
|
控制 SD-WAN 规则如何在 SD-WAN 中设置接口的优先级。 选项
|
|
SD-WAN 规则名称。 |
|
在自定义配置文件 1 的公式中,丢包的系数。 |
|
启用/禁用基于服务标准的被动测量。 选项
|
|
(列表或字符串) 成员序列号列表。 |
|
(列表或字符串) 优先级区域名称列表。 |
|
协议号。 |
|
质量等级。 |
|
与邻居配合使用的服务角色。 选项
|
|
IPv4 路由映射路由标签。 |
|
启用/禁用此服务的快捷方式。 选项
|
|
此服务的 ADVPN 快捷方式的高优先级。 选项
|
|
启用/禁用 ADVPN 的快捷方式粘性。 选项
|
|
Sla。 |
|
SD-WAN 健康检查。 |
|
SLA ID。 |
|
比较 SLA 模式的 SLA 值的方法。 选项
|
|
启用/禁用 SLA 粘性 选项
|
|
(列表或字符串) 源地址名称。 |
|
(列表或字符串) 源地址 6 名称。 |
|
启用/禁用对源地址匹配的否定。 选项
|
|
当选定的邻居角色为独立,而服务角色不是独立时,启用/禁用服务。 选项
|
|
目标端口号起始。 |
|
源端口号起始。 |
|
启用/禁用 SD-WAN 服务。 选项
|
|
如果多个成员满足 SLA,则选择成员的方法。 选项
|
|
服务类型位模式。 |
|
要评估的服务类型位。 |
|
启用/禁用使用 ADVPN 快捷方式进行质量比较。 选项
|
|
(列表或字符串) 用户名。 |
|
启用/禁用区域模式。 选项
|
|
在 SD-WAN 成员上进行速度测试时启用/禁用绕过路由。 选项
|
|
启用/禁用 SD-WAN。 选项
|
|
区域。 |
|
ADVPN 本地覆盖链路质量的健康检查。 |
|
启用/禁用基于 SDWAN 信息选择 ADVPN。 选项
|
|
当邻居是首选时,满足 SLA 的最小成员数。 |
|
区域名称。 |
|
如果多个成员满足 SLA,则选择成员的方法。 选项
|
|
在工作区模式下运行的 FortiManager 要锁定的 ADOM,该值可以是 global 和其他包括 root。 |
|
等待其他用户释放工作区锁定的最大时间(秒)。 默认值: |
注释
注意
从 2.4.0 版本开始,所有输入参数都使用下划线命名约定 (snake_case) 命名。 请将诸如 “var-name” 之类的参数更改为 “var_name”。旧的参数名称仍然可用,但您会收到弃用警告。您可以通过在 ansible.cfg 中设置 deprecation_warnings=False 来忽略此警告。
此 FortiManager 模块支持在工作区锁定模式下运行,顶层参数 workspace_locking_adom 和 workspace_locking_timeout 可帮助完成这项工作。
通常,当返回非零 rc 时,运行一个模块可能会失败。您还可以使用参数 rc_failed 和 rc_succeeded 来覆盖失败或成功的条件。
示例
- name: Example playbook (generated based on argument schema)
hosts: fortimanagers
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Configure redundant internet connections using SD-WAN
fortinet.fortimanager.fmgr_wanprof_system_sdwan:
# bypass_validation: false
workspace_locking_adom: <value in [global, custom adom including root]>
workspace_locking_timeout: 300
# rc_succeeded: [0, -2, -3, ...]
# rc_failed: [-2, -3, ...]
adom: <your own value>
wanprof: <your own value>
wanprof_system_sdwan:
duplication:
-
dstaddr: <list or string>
dstaddr6: <list or string>
dstintf: <list or string>
id: <integer>
packet_de_duplication: <value in [disable, enable]>
packet_duplication: <value in [disable, force, on-demand]>
service: <list or string>
srcaddr: <list or string>
srcaddr6: <list or string>
srcintf: <list or string>
service_id: <list or string>
sla_match_service: <value in [disable, enable]>
duplication_max_num: <integer>
fail_detect: <value in [disable, enable]>
health_check:
-
_dynamic_server: <string>
addr_mode: <value in [ipv4, ipv6]>
diffservcode: <string>
dns_match_ip: <string>
dns_request_domain: <string>
failtime: <integer>
ftp_file: <string>
ftp_mode: <value in [passive, port]>
ha_priority: <integer>
http_agent: <string>
http_get: <string>
http_match: <string>
interval: <integer>
members: <list or string>
name: <string>
packet_size: <integer>
password: <list or string>
port: <integer>
probe_count: <integer>
probe_packets: <value in [disable, enable]>
probe_timeout: <integer>
protocol: <value in [ping, tcp-echo, udp-echo, ...]>
quality_measured_method: <value in [half-close, half-open]>
recoverytime: <integer>
security_mode: <value in [none, authentication]>
server: <list or string>
sla:
-
id: <integer>
jitter_threshold: <integer>
latency_threshold: <integer>
link_cost_factor:
- "latency"
- "jitter"
- "packet-loss"
- "mos"
- "remote"
packetloss_threshold: <integer>
mos_threshold: <string>
priority_in_sla: <integer>
priority_out_sla: <integer>
sla_fail_log_period: <integer>
sla_pass_log_period: <integer>
system_dns: <value in [disable, enable]>
threshold_alert_jitter: <integer>
threshold_alert_latency: <integer>
threshold_alert_packetloss: <integer>
threshold_warning_jitter: <integer>
threshold_warning_latency: <integer>
threshold_warning_packetloss: <integer>
update_cascade_interface: <value in [disable, enable]>
update_static_route: <value in [disable, enable]>
user: <string>
detect_mode: <value in [active, passive, prefer-passive, ...]>
mos_codec: <value in [g711, g722, g729]>
source: <string>
vrf: <integer>
embed_measured_health: <value in [disable, enable]>
sla_id_redistribute: <integer>
class_id: <string>
source6: <string>
load_balance_mode: <value in [source-ip-based, weight-based, usage-based, ...]>
members:
-
_dynamic_member: <string>
comment: <string>
cost: <integer>
gateway: <string>
gateway6: <string>
ingress_spillover_threshold: <integer>
interface: <string>
priority: <integer>
seq_num: <integer>
source: <string>
source6: <string>
spillover_threshold: <integer>
status: <value in [disable, enable]>
volume_ratio: <integer>
weight: <integer>
zone: <string>
priority6: <integer>
preferred_source: <string>
transport_group: <integer>
priority_in_sla: <integer>
priority_out_sla: <integer>
neighbor:
-
health_check: <string>
ip: <string>
member: <list or string>
role: <value in [primary, secondary, standalone]>
sla_id: <integer>
minimum_sla_meet_members: <integer>
mode: <value in [sla, speedtest]>
service_id: <string>
neighbor_hold_boot_time: <integer>
neighbor_hold_down: <value in [disable, enable]>
neighbor_hold_down_time: <integer>
service:
-
addr_mode: <value in [ipv4, ipv6]>
bandwidth_weight: <integer>
default: <value in [disable, enable]>
dscp_forward: <value in [disable, enable]>
dscp_forward_tag: <string>
dscp_reverse: <value in [disable, enable]>
dscp_reverse_tag: <string>
dst: <list or string>
dst_negate: <value in [disable, enable]>
dst6: <list or string>
end_port: <integer>
gateway: <value in [disable, enable]>
groups: <list or string>
hash_mode: <value in [round-robin, source-ip-based, source-dest-ip-based, ...]>
health_check: <list or string>
hold_down_time: <integer>
id: <integer>
input_device: <list or string>
input_device_negate: <value in [disable, enable]>
internet_service: <value in [disable, enable]>
internet_service_app_ctrl: <list or integer>
internet_service_app_ctrl_group: <list or string>
internet_service_custom: <list or string>
internet_service_custom_group: <list or string>
internet_service_group: <list or string>
internet_service_name: <list or string>
jitter_weight: <integer>
latency_weight: <integer>
link_cost_factor: <value in [latency, jitter, packet-loss, ...]>
link_cost_threshold: <integer>
minimum_sla_meet_members: <integer>
mode: <value in [auto, manual, priority, ...]>
name: <string>
packet_loss_weight: <integer>
priority_members: <list or string>
protocol: <integer>
quality_link: <integer>
role: <value in [primary, secondary, standalone]>
route_tag: <integer>
sla:
-
health_check: <string>
id: <integer>
sla_compare_method: <value in [order, number]>
src: <list or string>
src_negate: <value in [disable, enable]>
src6: <list or string>
standalone_action: <value in [disable, enable]>
start_port: <integer>
status: <value in [disable, enable]>
tos: <string>
tos_mask: <string>
users: <list or string>
tie_break: <value in [zone, cfg-order, fib-best-match, ...]>
use_shortcut_sla: <value in [disable, enable]>
input_zone: <list or string>
internet_service_app_ctrl_category: <list or integer>
passive_measurement: <value in [disable, enable]>
priority_zone: <list or string>
agent_exclusive: <value in [disable, enable]>
shortcut: <value in [disable, enable]>
shortcut_stickiness: <value in [disable, enable]>
end_src_port: <integer>
load_balance: <value in [disable, enable]>
sla_stickiness: <value in [disable, enable]>
start_src_port: <integer>
zone_mode: <value in [disable, enable]>
shortcut_priority: <value in [disable, enable, auto]>
comment: <string>
status: <value in [disable, enable]>
zone:
-
name: <string>
service_sla_tie_break: <value in [cfg-order, fib-best-match, input-device]>
minimum_sla_meet_members: <integer>
advpn_health_check: <string>
advpn_select: <value in [disable, enable]>
speedtest_bypass_routing: <value in [disable, enable]>
fail_alert_interfaces: <list or string>
app_perf_log_period: <integer>
health_check_fortiguard:
-
addr_mode: <value in [ipv4, ipv6]>
class_id: <list or string>
detect_mode: <value in [active, passive, prefer-passive, ...]>
diffservcode: <string>
dns_match_ip: <string>
dns_request_domain: <string>
embed_measured_health: <value in [disable, enable]>
failtime: <integer>
ftp_file: <string>
ftp_mode: <value in [passive, port]>
ha_priority: <integer>
http_agent: <string>
http_get: <string>
http_match: <string>
interval: <integer>
members: <list or string>
mos_codec: <value in [g711, g722, g729]>
packet_size: <integer>
password: <list or string>
port: <integer>
probe_count: <integer>
probe_packets: <value in [disable, enable]>
probe_timeout: <integer>
protocol: <value in [ping, tcp-echo, udp-echo, ...]>
quality_measured_method: <value in [half-close, half-open]>
recoverytime: <integer>
security_mode: <value in [none, authentication]>
server: <list or string>
sla:
-
id: <integer>
jitter_threshold: <integer>
latency_threshold: <integer>
link_cost_factor:
- "latency"
- "jitter"
- "packet-loss"
- "mos"
- "remote"
mos_threshold: <string>
packetloss_threshold: <integer>
priority_in_sla: <integer>
priority_out_sla: <integer>
sla_fail_log_period: <integer>
sla_id_redistribute: <integer>
sla_pass_log_period: <integer>
source: <string>
source6: <string>
system_dns: <value in [disable, enable]>
target_name: <string>
threshold_alert_jitter: <integer>
threshold_alert_latency: <integer>
threshold_alert_packetloss: <integer>
threshold_warning_jitter: <integer>
threshold_warning_latency: <integer>
threshold_warning_packetloss: <integer>
update_cascade_interface: <value in [disable, enable]>
update_static_route: <value in [disable, enable]>
user: <string>
vrf: <integer>
option:
- "sdwan-overlay"
- "sdwan-manager"
返回值
通用返回值在此处记录 这里, 以下是此模块独有的字段
键 |
描述 |
---|---|
请求的结果。 返回: 总是 |
|
请求的完整网址。 返回: 总是 示例: |
|
api 请求的状态。 返回: 总是 示例: |
|
api 响应。 返回: 总是 |
|
api 响应的描述性消息。 返回: 总是 示例: |
|
目标系统的信息。 返回: 总是 |
|
请求的状态。 返回: 总是 示例: |
|
如果 playbook 中使用的参数不受当前 FortiManager 版本支持,则发出警告。 返回: 复杂 |