fmgr_wanprof_system_sdwan – Configure redundant internet connections using SD-WAN (formerly virtual WAN link).¶
New in version 2.10.
Synopsis¶
- This module is able to configure a FortiManager device.
- Examples include all parameters and values need to be adjusted to data sources before usage.
Requirements¶
The below requirements are needed on the host that executes this module.
- ansible>=2.9.0
Parameters¶
- enable_log - Enable/Disable logging for task type: bool required: false default: False
- forticloud_access_token - Access token of forticloud managed API users, this option is available with FortiManager later than 6.4.0 type: str required: false
- proposed_method - The overridden method for the underlying Json RPC request type: str required: false choices: set, update, add
- bypass_validation - Only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters type: bool required: false default: False
- workspace_locking_adom - Acquire the workspace lock if FortiManager is running in workspace mode type: str required: false choices: global, custom adom including root
- workspace_locking_timeout - The maximum time in seconds to wait for other users to release workspace lock type: integer required: false default: 300
- rc_succeeded - The rc codes list with which the conditions to succeed will be overriden type: list required: false
- rc_failed - The rc codes list with which the conditions to fail will be overriden type: list required: false
- adom - The parameter in requested url type: str required: true
- wanprof - The parameter in requested url type: str required: true
- wanprof_system_sdwan - no description type: dict
- duplication - No description for the parameter type: array
more...
- dstaddr - Destination address or address group names. type: str more...
- dstaddr6 - Destination address6 or address6 group names. type: str more...
- dstintf - Outgoing (egress) interfaces or zones. type: str more...
- id - Duplication rule ID (1 - 255). type: int more...
- packet-de-duplication - Enable/disable discarding of packets that have been duplicated. type: str choices: [disable, enable] more...
- packet-duplication - Configure packet duplication method. type: str choices: [disable, force, on-demand] more...
- service - Service and service group name. type: str more...
- srcaddr - Source address or address group names. type: str more...
- srcaddr6 - Source address6 or address6 group names. type: str more...
- srcintf - Incoming (ingress) interfaces or zones. type: str more...
- service-id - SD-WAN service rule ID list. type: str more...
- sla-match-service - Enable/disable packet duplication matching health-check SLAs in service rule. type: str choices: [disable, enable] more...
- duplication-max-num - Maximum number of interface members a packet is duplicated in the SD-WAN zone (2 - 4, default = 2; if set to 3, the original packet plus 2 more copies are created). type: int more...
- fail-detect - Enable/disable SD-WAN Internet connection status checking (failure detection). type: str choices: [disable, enable] more...
- health-check - No description for the parameter type: array
more...
- _dynamic-server - No description for the parameter type: str more...
- addr-mode - Address mode (IPv4 or IPv6). type: str choices: [ipv4, ipv6] more...
- diffservcode - Differentiated services code point (DSCP) in the IP header of the probe packet. type: str more...
- dns-match-ip - Response IP expected from DNS server if the protocol is DNS. type: str more...
- dns-request-domain - Fully qualified domain name to resolve for the DNS probe. type: str more...
- failtime - Number of failures before server is considered lost (1 - 3600, default = 5). type: int more...
- ftp-file - Full path and file name on the FTP server to download for FTP health-check to probe. type: str more...
- ftp-mode - FTP mode. type: str choices: [passive, port] more...
- ha-priority - HA election priority (1 - 50). type: int more...
- http-agent - String in the http-agent field in the HTTP header. type: str more...
- http-get - URL used to communicate with the server if the protocol if the protocol is HTTP. type: str more...
- http-match - Response string expected from the server if the protocol is HTTP. type: str more...
- interval - Status check interval in milliseconds, or the time between attempting to connect to the server (500 - 3600*1000 msec, default = 500). type: int more...
- members - Member sequence number list. type: str more...
- name - Status check or health check name. type: str more...
- packet-size - Packet size of a twamp test session, type: int more...
- password - No description for the parameter type: str more...
- port - Port number used to communicate with the server over the selected protocol (0-65535, default = 0, auto select. type: int more...
- probe-count - Number of most recent probes that should be used to calculate latency and jitter (5 - 30, default = 30). type: int more...
- probe-packets - Enable/disable transmission of probe packets. type: str choices: [disable, enable] more...
- probe-timeout - Time to wait before a probe packet is considered lost (500 - 3600*1000 msec, default = 500). type: int more...
- protocol - Protocol used to determine if the FortiGate can communicate with the server. type: str choices: [ping, tcp-echo, udp-echo, http, twamp, ping6, dns, tcp-connect, ftp] more...
- quality-measured-method - Method to measure the quality of tcp-connect. type: str choices: [half-close, half-open] more...
- recoverytime - Number of successful responses received before server is considered recovered (1 - 3600, default = 5). type: int more...
- security-mode - Twamp controller security mode. type: str choices: [none, authentication] more...
- server - No description for the parameter type: str more...
- sla - No description for the parameter type: array
more...
- id - SLA ID. type: int more...
- jitter-threshold - Jitter for SLA to make decision in milliseconds. type: int more...
- latency-threshold - Latency for SLA to make decision in milliseconds. type: int more...
- link-cost-factor - No description for the parameter type: array choices: [latency, jitter, packet-loss, mos] more...
- packetloss-threshold - Packet loss for SLA to make decision in percentage. type: int more...
- mos-threshold - Minimum Mean Opinion Score for SLA to be marked as pass. type: str more...
- sla-fail-log-period - Time interval in seconds that SLA fail log messages will be generated (0 - 3600, default = 0). type: int more...
- sla-pass-log-period - Time interval in seconds that SLA pass log messages will be generated (0 - 3600, default = 0). type: int more...
- system-dns - Enable/disable system DNS as the probe server. type: str choices: [disable, enable] more...
- threshold-alert-jitter - Alert threshold for jitter (ms, default = 0). type: int more...
- threshold-alert-latency - Alert threshold for latency (ms, default = 0). type: int more...
- threshold-alert-packetloss - Alert threshold for packet loss (percentage, default = 0). type: int more...
- threshold-warning-jitter - Warning threshold for jitter (ms, default = 0). type: int more...
- threshold-warning-latency - Warning threshold for latency (ms, default = 0). type: int more...
- threshold-warning-packetloss - Warning threshold for packet loss (percentage, default = 0). type: int more...
- update-cascade-interface - Enable/disable update cascade interface. type: str choices: [disable, enable] more...
- update-static-route - Enable/disable updating the static route. type: str choices: [disable, enable] more...
- user - The user name to access probe server. type: str more...
- detect-mode - The mode determining how to detect the server. type: str choices: [active, passive, prefer-passive] more...
- mos-codec - Codec to use for MOS calculation (default = g711). type: str choices: [g711, g722, g729] more...
- source - Source IP address used in the health-check packet to the server. type: str more...
- vrf - Virtual Routing Forwarding ID. type: int more...
- load-balance-mode - Algorithm or mode to use for load balancing Internet traffic to SD-WAN members. type: str choices: [source-ip-based, weight-based, usage-based, source-dest-ip-based, measured-volume-based] more...
- members - No description for the parameter type: array
more...
- _dynamic-member - No description for the parameter type: str more...
- comment - Comments. type: str more...
- cost - Cost of this interface for services in SLA mode (0 - 4294967295, default = 0). type: int more...
- gateway - The default gateway for this interface. type: str more...
- gateway6 - IPv6 gateway. type: str more...
- ingress-spillover-threshold - Ingress spillover threshold for this interface (0 - 16776000 kbit/s). type: int more...
- interface - Interface name. type: str more...
- priority - Priority of the interface (0 - 65535). type: int more...
- seq-num - Sequence number(1-512). type: int more...
- source - Source IP address used in the health-check packet to the server. type: str more...
- source6 - Source IPv6 address used in the health-check packet to the server. type: str more...
- spillover-threshold - Egress spillover threshold for this interface (0 - 16776000 kbit/s). type: int more...
- status - Enable/disable this interface in the SD-WAN. type: str choices: [disable, enable] more...
- volume-ratio - Measured volume ratio (this value / sum of all values = percentage of link volume, 1 - 255). type: int more...
- weight - Weight of this interface for weighted load balancing. type: int more...
- zone - Zone name. type: str more...
- priority6 - Priority of the interface for IPv6 (1 - 65535, default = 1024). type: int more...
- neighbor - No description for the parameter type: array
more...
- health-check - SD-WAN health-check name. type: str more...
- ip - IP/IPv6 address of neighbor. type: str more...
- member - Member sequence number. type: str more...
- role - Role of neighbor. type: str choices: [primary, secondary, standalone] more...
- sla-id - SLA ID. type: int more...
- minimum-sla-meet-members - Minimum number of members which meet SLA when the neighbor is preferred. type: int more...
- mode - What metric to select the neighbor. type: str choices: [sla, speedtest] more...
- neighbor-hold-boot-time - Waiting period in seconds when switching from the primary neighbor to the secondary neighbor from the neighbor start. type: int more...
- neighbor-hold-down - Enable/disable hold switching from the secondary neighbor to the primary neighbor. type: str choices: [disable, enable] more...
- neighbor-hold-down-time - Waiting period in seconds when switching from the secondary neighbor to the primary neighbor when hold-down is disabled. type: int more...
- service - No description for the parameter type: array
more...
- addr-mode - Address mode (IPv4 or IPv6). type: str choices: [ipv4, ipv6] more...
- bandwidth-weight - Coefficient of reciprocal of available bidirectional bandwidth in the formula of custom-profile-1. type: int more...
- default - Enable/disable use of SD-WAN as default service. type: str choices: [disable, enable] more...
- dscp-forward - Enable/disable forward traffic DSCP tag. type: str choices: [disable, enable] more...
- dscp-forward-tag - Forward traffic DSCP tag. type: str more...
- dscp-reverse - Enable/disable reverse traffic DSCP tag. type: str choices: [disable, enable] more...
- dscp-reverse-tag - Reverse traffic DSCP tag. type: str more...
- dst - Destination address name. type: str more...
- dst-negate - Enable/disable negation of destination address match. type: str choices: [disable, enable] more...
- dst6 - Destination address6 name. type: str more...
- end-port - End destination port number. type: int more...
- gateway - Enable/disable SD-WAN service gateway. type: str choices: [disable, enable] more...
- groups - User groups. type: str more...
- hash-mode - Hash algorithm for selected priority members for load balance mode. type: str choices: [round-robin, source-ip-based, source-dest-ip-based, inbandwidth, outbandwidth, bibandwidth] more...
- health-check - Health check list. type: str more...
- hold-down-time - Waiting period in seconds when switching from the back-up member to the primary member (0 - 10000000, default = 0). type: int more...
- id - SD-WAN rule ID (1 - 4000). type: int more...
- input-device - Source interface name. type: str more...
- input-device-negate - Enable/disable negation of input device match. type: str choices: [disable, enable] more...
- internet-service - Enable/disable use of Internet service for application-based load balancing. type: str choices: [disable, enable] more...
- internet-service-app-ctrl - No description for the parameter type: int more...
- internet-service-app-ctrl-group - Application control based Internet Service group list. type: str more...
- internet-service-custom - Custom Internet service name list. type: str more...
- internet-service-custom-group - Custom Internet Service group list. type: str more...
- internet-service-group - Internet Service group list. type: str more...
- internet-service-name - Internet service name list. type: str more...
- jitter-weight - Coefficient of jitter in the formula of custom-profile-1. type: int more...
- latency-weight - Coefficient of latency in the formula of custom-profile-1. type: int more...
- link-cost-factor - Link cost factor. type: str choices: [latency, jitter, packet-loss, inbandwidth, outbandwidth, bibandwidth, custom-profile-1] more...
- link-cost-threshold - Percentage threshold change of link cost values that will result in policy route regeneration (0 - 10000000, default = 10). type: int more...
- minimum-sla-meet-members - Minimum number of members which meet SLA. type: int more...
- mode - Control how the SD-WAN rule sets the priority of interfaces in the SD-WAN. type: str choices: [auto, manual, priority, sla, load-balance] more...
- name - SD-WAN rule name. type: str more...
- packet-loss-weight - Coefficient of packet-loss in the formula of custom-profile-1. type: int more...
- priority-members - Member sequence number list. type: str more...
- protocol - Protocol number. type: int more...
- quality-link - Quality grade. type: int more...
- role - Service role to work with neighbor. type: str choices: [primary, secondary, standalone] more...
- route-tag - IPv4 route map route-tag. type: int more...
- sla - No description for the parameter type: array more...
- sla-compare-method - Method to compare SLA value for SLA mode. type: str choices: [order, number] more...
- src - Source address name. type: str more...
- src-negate - Enable/disable negation of source address match. type: str choices: [disable, enable] more...
- src6 - Source address6 name. type: str more...
- standalone-action - Enable/disable service when selected neighbor role is standalone while service role is not standalone. type: str choices: [disable, enable] more...
- start-port - Start destination port number. type: int more...
- status - Enable/disable SD-WAN service. type: str choices: [disable, enable] more...
- tos - Type of service bit pattern. type: str more...
- tos-mask - Type of service evaluated bits. type: str more...
- users - User name. type: str more...
- tie-break - Method of selecting member if more than one meets the SLA. type: str choices: [zone, cfg-order, fib-best-match, input-device] more...
- use-shortcut-sla - Enable/disable use of ADVPN shortcut for quality comparison. type: str choices: [disable, enable] more...
- input-zone - No description for the parameter type: str more...
- internet-service-app-ctrl-category - No description for the parameter type: int more...
- passive-measurement - Enable/disable passive measurement based on the service criteria. type: str choices: [disable, enable] more...
- priority-zone - No description for the parameter type: str more...
- status - Enable/disable SD-WAN. type: str choices: [disable, enable] more...
- zone - No description for the parameter type: array more...
- speedtest-bypass-routing - Enable/disable bypass routing when speedtest on a SD-WAN member. type: str choices: [disable, enable] more...
Notes¶
Note
- Running in workspace locking mode is supported in this FortiManager module, the top level parameters workspace_locking_adom and workspace_locking_timeout help do the work.
- To create or update an object, use state: present directive.
- To delete an object, use state: absent directive
- Normally, running one module can fail when a non-zero rc is returned. you can also override the conditions to fail or succeed with parameters rc_failed and rc_succeeded
Examples¶
- hosts: fortimanager-inventory
collections:
- fortinet.fortimanager
connection: httpapi
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: no description
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: <value of string>
dstaddr6: <value of string>
dstintf: <value of string>
id: <value of integer>
packet-de-duplication: <value in [disable, enable]>
packet-duplication: <value in [disable, force, on-demand]>
service: <value of string>
srcaddr: <value of string>
srcaddr6: <value of string>
srcintf: <value of string>
service-id: <value of string>
sla-match-service: <value in [disable, enable]>
duplication-max-num: <value of integer>
fail-detect: <value in [disable, enable]>
health-check:
-
_dynamic-server: <value of string>
addr-mode: <value in [ipv4, ipv6]>
diffservcode: <value of string>
dns-match-ip: <value of string>
dns-request-domain: <value of string>
failtime: <value of integer>
ftp-file: <value of string>
ftp-mode: <value in [passive, port]>
ha-priority: <value of integer>
http-agent: <value of string>
http-get: <value of string>
http-match: <value of string>
interval: <value of integer>
members: <value of string>
name: <value of string>
packet-size: <value of integer>
password: <value of string>
port: <value of integer>
probe-count: <value of integer>
probe-packets: <value in [disable, enable]>
probe-timeout: <value of integer>
protocol: <value in [ping, tcp-echo, udp-echo, ...]>
quality-measured-method: <value in [half-close, half-open]>
recoverytime: <value of integer>
security-mode: <value in [none, authentication]>
server: <value of string>
sla:
-
id: <value of integer>
jitter-threshold: <value of integer>
latency-threshold: <value of integer>
link-cost-factor:
- latency
- jitter
- packet-loss
- mos
packetloss-threshold: <value of integer>
mos-threshold: <value of string>
sla-fail-log-period: <value of integer>
sla-pass-log-period: <value of integer>
system-dns: <value in [disable, enable]>
threshold-alert-jitter: <value of integer>
threshold-alert-latency: <value of integer>
threshold-alert-packetloss: <value of integer>
threshold-warning-jitter: <value of integer>
threshold-warning-latency: <value of integer>
threshold-warning-packetloss: <value of integer>
update-cascade-interface: <value in [disable, enable]>
update-static-route: <value in [disable, enable]>
user: <value of string>
detect-mode: <value in [active, passive, prefer-passive]>
mos-codec: <value in [g711, g722, g729]>
source: <value of string>
vrf: <value of integer>
load-balance-mode: <value in [source-ip-based, weight-based, usage-based, ...]>
members:
-
_dynamic-member: <value of string>
comment: <value of string>
cost: <value of integer>
gateway: <value of string>
gateway6: <value of string>
ingress-spillover-threshold: <value of integer>
interface: <value of string>
priority: <value of integer>
seq-num: <value of integer>
source: <value of string>
source6: <value of string>
spillover-threshold: <value of integer>
status: <value in [disable, enable]>
volume-ratio: <value of integer>
weight: <value of integer>
zone: <value of string>
priority6: <value of integer>
neighbor:
-
health-check: <value of string>
ip: <value of string>
member: <value of string>
role: <value in [primary, secondary, standalone]>
sla-id: <value of integer>
minimum-sla-meet-members: <value of integer>
mode: <value in [sla, speedtest]>
neighbor-hold-boot-time: <value of integer>
neighbor-hold-down: <value in [disable, enable]>
neighbor-hold-down-time: <value of integer>
service:
-
addr-mode: <value in [ipv4, ipv6]>
bandwidth-weight: <value of integer>
default: <value in [disable, enable]>
dscp-forward: <value in [disable, enable]>
dscp-forward-tag: <value of string>
dscp-reverse: <value in [disable, enable]>
dscp-reverse-tag: <value of string>
dst: <value of string>
dst-negate: <value in [disable, enable]>
dst6: <value of string>
end-port: <value of integer>
gateway: <value in [disable, enable]>
groups: <value of string>
hash-mode: <value in [round-robin, source-ip-based, source-dest-ip-based, ...]>
health-check: <value of string>
hold-down-time: <value of integer>
id: <value of integer>
input-device: <value of string>
input-device-negate: <value in [disable, enable]>
internet-service: <value in [disable, enable]>
internet-service-app-ctrl: <value of integer>
internet-service-app-ctrl-group: <value of string>
internet-service-custom: <value of string>
internet-service-custom-group: <value of string>
internet-service-group: <value of string>
internet-service-name: <value of string>
jitter-weight: <value of integer>
latency-weight: <value of integer>
link-cost-factor: <value in [latency, jitter, packet-loss, ...]>
link-cost-threshold: <value of integer>
minimum-sla-meet-members: <value of integer>
mode: <value in [auto, manual, priority, ...]>
name: <value of string>
packet-loss-weight: <value of integer>
priority-members: <value of string>
protocol: <value of integer>
quality-link: <value of integer>
role: <value in [primary, secondary, standalone]>
route-tag: <value of integer>
sla:
-
health-check: <value of string>
id: <value of integer>
sla-compare-method: <value in [order, number]>
src: <value of string>
src-negate: <value in [disable, enable]>
src6: <value of string>
standalone-action: <value in [disable, enable]>
start-port: <value of integer>
status: <value in [disable, enable]>
tos: <value of string>
tos-mask: <value of string>
users: <value of string>
tie-break: <value in [zone, cfg-order, fib-best-match, ...]>
use-shortcut-sla: <value in [disable, enable]>
input-zone: <value of string>
internet-service-app-ctrl-category: <value of integer>
passive-measurement: <value in [disable, enable]>
priority-zone: <value of string>
status: <value in [disable, enable]>
zone:
-
name: <value of string>
service-sla-tie-break: <value in [cfg-order, fib-best-match, input-device]>
speedtest-bypass-routing: <value in [disable, enable]>
Return Values¶
Common return values are documented: https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values, the following are the fields unique to this module:
- request_url - The full url requested returned: always type: str sample: /sys/login/user
- response_code - The status of api request returned: always type: int sample: 0
- response_message - The descriptive message of the api response returned: always type: str sample: OK
- response_data - The data body of the api response returned: optional type: list or dict