fortinet.fortimanager.fmgr_wanprof_system_sdwan_service 模块 – 创建 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_service

fortinet.fortimanager 2.1.0 中的新增功能

概要

  • 此模块能够配置 FortiManager 设备。

  • 示例包含所有参数和值,在使用前需要根据数据源进行调整。

参数

参数

注释

access_token

字符串

无需使用用户名和密码即可访问 FortiManager 的令牌。

adom

字符串 / 必填

请求 URL 中的参数 (adom)。

bypass_validation

布尔值

仅当模块模式与 FortiManager API 结构不同时设置为 True,模块将继续执行而无需验证参数。

选项

  • false ← (默认)

  • true

enable_log

布尔值

启用/禁用任务日志记录。

选项

  • false ← (默认)

  • true

forticloud_access_token

字符串

使用 forticloud API 访问令牌验证 Ansible 客户端。

proposed_method

字符串

底层 Json RPC 请求的覆盖方法。

选项

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

将覆盖失败条件的 rc 代码列表。

rc_succeeded

列表 / 元素=整数

将覆盖成功条件的 rc 代码列表。

state

字符串 / 必填

创建、更新或删除对象的指令。

选项

  • "present"

  • "absent"

wanprof

字符串 / 必填

请求 URL 中的参数 (wanprof)。

wanprof_system_sdwan_service

字典

设置的顶级参数。

addr_mode

别名:addr-mode

字符串

地址模式

选项

  • "ipv4"

  • "ipv6"

agent_exclusive

别名:agent-exclusive

字符串

将服务设置为/取消设置为代理独占使用。

选项

  • "disable"

  • "enable"

bandwidth_weight

别名:bandwidth-weight

整数

在自定义配置文件 1 公式中,可用双向带宽倒数的系数。

comment

字符串

注释。

default

字符串

启用/禁用将 SD-WAN 用作默认服务。

选项

  • "disable"

  • "enable"

dscp_forward

别名:dscp-forward

字符串

启用/禁用转发流量 DSCP 标记。

选项

  • "disable"

  • "enable"

dscp_forward_tag

别名:dscp-forward-tag

字符串

转发流量 DSCP 标记。

dscp_reverse

别名:dscp-reverse

字符串

启用/禁用反向流量 DSCP 标记。

选项

  • "disable"

  • "enable"

dscp_reverse_tag

别名:dscp-reverse-tag

字符串

反向流量 DSCP 标记。

dst

任意

(列表或字符串) 目的地址名称。

dst6

任意

(列表或字符串) 目的地址 6 名称。

dst_negate

别名:dst-negate

字符串

启用/禁用目的地址匹配的否定。

选项

  • "disable"

  • "enable"

end_port

别名:end-port

整数

结束目的端口号。

end_src_port

别名:end-src-port

整数

结束源端口号。

gateway

字符串

启用/禁用 SD-WAN 服务网关。

选项

  • "disable"

  • "enable"

groups

任意

(列表或字符串) 用户组。

hash_mode

别名:hash-mode

字符串

为负载均衡模式选择的优先成员的哈希算法。

选项

  • "round-robin"

  • "source-ip-based"

  • "source-dest-ip-based"

  • "inbandwidth"

  • "outbandwidth"

  • "bibandwidth"

health_check

别名:health-check

任意

(列表或字符串) 健康检查列表。

hold_down_time

别名:hold-down-time

整数

从备份成员切换到主成员时的等待时间(秒)。

id

整数 / 必填

SD-WAN 规则 ID

input_device

别名:input-device

任意

(列表或字符串) 源接口名称。

input_device_negate

别名:input-device-negate

字符串

启用/禁用输入设备匹配的否定。

选项

  • "disable"

  • "enable"

input_zone

别名:input-zone

任意

(列表) 源输入区域名称。

internet_service

别名:internet-service

字符串

启用/禁用使用 Internet 服务进行基于应用程序的负载均衡。

选项

  • "disable"

  • "enable"

internet_service_app_ctrl

别名:internet-service-app-ctrl

任意

(列表) 基于应用程序控制的 Internet 服务 ID 列表。

internet_service_app_ctrl_category

别名:internet-service-app-ctrl-category

任意

(列表) 一个或多个应用程序控制类别的 ID。

internet_service_app_ctrl_group

别名:internet-service-app-ctrl-group

任意

(列表或字符串) 基于应用程序控制的 Internet 服务组列表。

internet_service_custom

别名:internet-service-custom

任意

(列表或字符串) 自定义 Internet 服务名称列表。

internet_service_custom_group

别名:internet-service-custom-group

任意

(列表或字符串) 自定义互联网服务组列表。

internet_service_group

别名:internet-service-group

任意

(列表或字符串) 互联网服务组列表。

internet_service_name

别名:internet-service-name

任意

(列表或字符串) 互联网服务名称列表。

jitter_weight

别名:jitter-weight

整数

自定义配置文件1公式中抖动的系数。

latency_weight

别名:latency-weight

整数

自定义配置文件1公式中延迟的系数。

link_cost_factor

别名:link-cost-factor

字符串

链路成本因子。

选项

  • “延迟”

  • “抖动”

  • “丢包率”

  • "inbandwidth"

  • "outbandwidth"

  • "bibandwidth"

  • “自定义配置文件1”

link_cost_threshold

别名:link-cost-threshold

整数

链路成本值变化的百分比阈值,将导致策略路由重新生成。

load_balance

别名:load-balance

字符串

启用/禁用负载均衡。

选项

  • "disable"

  • "enable"

minimum_sla_meet_members

别名:minimum-sla-meet-members

整数

满足SLA的最小成员数量。

mode

字符串

控制SD-WAN规则如何设置SD-WAN中接口的优先级。

选项

  • “自动”

  • “手动”

  • “优先级”

  • “SLA”

  • “负载均衡”

name

字符串

SD-WAN规则名称。

packet_loss_weight

别名:packet-loss-weight

整数

自定义配置文件1公式中丢包率的系数。

passive_measurement

别名:passive-measurement

字符串

基于服务标准启用/禁用被动测量。

选项

  • "disable"

  • "enable"

priority_members

别名:priority-members

任意

(列表或字符串) 成员序列号列表。

priority_zone

别名:priority-zone

任意

(列表或字符串) 优先级区域名称列表。

protocol

整数

协议号。

quality_link

别名:quality-link

整数

质量等级。

role

字符串

与邻居一起工作的服务角色。

选项

  • “主”

  • “从”

  • “独立”

route_tag

别名:route-tag

整数

IPv4 路由映射路由标签。

shortcut

字符串

启用/禁用此服务的快捷方式。

选项

  • "disable"

  • "enable"

shortcut_priority

别名:shortcut-priority

字符串

此服务的ADVPN快捷方式的高优先级。

选项

  • "disable"

  • "enable"

  • “自动”

shortcut_stickiness

别名:shortcut-stickiness

字符串

启用/禁用ADVPN的快捷方式粘性。

选项

  • "disable"

  • "enable"

sla

列表 / 元素=字典

SLA。

health_check

别名:health-check

字符串

SD-WAN健康检查。

id

整数

SLA ID。

sla_compare_method

别名:sla-compare-method

字符串

比较SLA模式下SLA值的方法。

选项

  • “顺序”

  • “数量”

sla_stickiness

别名:sla-stickiness

字符串

启用/禁用SLA粘性。

选项

  • "disable"

  • "enable"

src

任意

(列表或字符串) 源地址名称。

src6

任意

(列表或字符串) 源地址6名称。

src_negate

别名:src-negate

字符串

启用/禁用源地址匹配的反转。

选项

  • "disable"

  • "enable"

standalone_action

别名:standalone-action

字符串

当选择的邻居角色为独立模式而服务角色不是独立模式时,启用/禁用服务。

选项

  • "disable"

  • "enable"

start_port

别名:start-port

整数

起始目标端口号。

start_src_port

别名:start-src-port

整数

起始源端口号。

status

字符串

启用/禁用SD-WAN服务。

选项

  • "disable"

  • "enable"

tie_break

别名:tie-break

字符串

如果多个成员满足SLA,则选择成员的方法。

选项

  • “区域”

  • “配置顺序”

  • “FIB最佳匹配”

  • “输入设备”

tos

字符串

服务类型位模式。

tos_mask

别名:tos-mask

字符串

评估的服务类型位。

use_shortcut_sla

别名:use-shortcut-sla

字符串

启用/禁用使用ADVPN快捷方式进行质量比较。

选项

  • "disable"

  • "enable"

users

任意

(列表或字符串) 用户名。

zone_mode

别名:zone-mode

字符串

启用/禁用区域模式。

选项

  • "disable"

  • "enable"

workspace_locking_adom

字符串

在工作区模式下运行FortiManager时要锁定的ADOM,值可以是全局的和其他包括root。

workspace_locking_timeout

整数

等待其他用户释放工作区锁的最大时间(秒)。

默认值: 300

备注

注意

  • 从2.4.0版本开始,所有输入参数都使用下划线命名约定(snake_case)。请将诸如“var-name”之类的参数更改为“var_name”。旧的参数名称仍然可用,但您会收到弃用警告。您可以在ansible.cfg中设置deprecation_warnings=False来忽略此警告。

  • 此FortiManager模块支持在工作区锁定模式下运行,顶级参数workspace_locking_adom和workspace_locking_timeout有助于完成此工作。

  • 要创建或更新对象,请使用state present指令。

  • 要删除对象,请使用state absent指令。

  • 通常,当返回非零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: Create SD-WAN rules
      fortinet.fortimanager.fmgr_wanprof_system_sdwan_service:
        # 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>
        state: present # <value in [present, absent]>
        wanprof_system_sdwan_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>

返回值

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

描述

meta

字典

请求的结果。

返回值:始终

request_url

字符串

请求的完整URL。

返回值:始终

示例: "/sys/login/user"

response_code

整数

API请求的状态。

返回值:始终

示例: 0

response_data

列表 / 元素=字符串

API响应。

返回值:始终

response_message

字符串

API响应的描述性消息。

返回值:始终

示例: "OK."

system_information

字典

目标系统的信息。

返回值:始终

rc

整数

请求的状态。

返回值:始终

示例: 0

version_check_warning

列表 / 元素=字符串

如果剧本中使用的参数不受当前FortiManager版本支持,则发出警告。

返回值:复杂

作者

  • 杜欣伟 (@dux-fortinet)

  • 李星 (@lix-fortinet)

  • 薛杰 (@JieX19)

  • 郑凌 (@chillancezen)

  • 沈峰 (@fshen01)

  • 卢洪斌 (@fgtdev-hblu)