fortinet.fortimanager.fmgr_wanprof_system_virtualwanlink module – Configure redundant internet connections using SD-WAN
Note
This module is part of the fortinet.fortimanager collection (version 2.8.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install fortinet.fortimanager
.
To use it in a playbook, specify: fortinet.fortimanager.fmgr_wanprof_system_virtualwanlink
.
New in fortinet.fortimanager 2.0.0
Synopsis
This module is able to configure a FortiManager device.
Examples include all parameters and values which need to be adjusted to data sources before usage.
Parameters
Parameter |
Comments |
---|---|
The token to access FortiManager without using username and password. |
|
The parameter (adom) in requested url. |
|
Only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters. Choices:
|
|
Enable/Disable logging for task. Choices:
|
|
Authenticate Ansible client with forticloud API access token. |
|
The overridden method for the underlying Json RPC request. Choices:
|
|
The rc codes list with which the conditions to fail will be overriden. |
|
The rc codes list with which the conditions to succeed will be overriden. |
|
The parameter (wanprof) in requested url. |
|
The top level parameters set. |
|
(list) Physical interfaces that will be alerted. |
|
Enable/disable SD-WAN Internet connection status checking Choices:
|
|
Health check. |
|
Dynamic server. |
|
Address mode Choices:
|
|
Differentiated services code point |
|
Fully qualified domain name to resolve for the DNS probe. |
|
Number of failures before server is considered lost |
|
HA election priority |
|
String in the http-agent field in the HTTP header. |
|
URL used to communicate with the server if the protocol if the protocol is HTTP. |
|
Response string expected from the server if the protocol is HTTP. |
|
Internet service ID. |
|
Status check interval, or the time between attempting to connect to the server |
|
(list or str) Member sequence number list. |
|
Status check or health check name. |
|
Packet size of a twamp test session, |
|
(list) Twamp controller password in authentication mode |
|
Port number used to communicate with the server over the selected protocol. |
|
Number of most recent probes that should be used to calculate latency and jitter |
|
Enable/disable transmission of probe packets. Choices:
|
|
Time to wait before a probe packet is considered lost |
|
Protocol used to determine if the FortiGate can communicate with the server. Choices:
|
|
Number of successful responses received before server is considered recovered |
|
Twamp controller security mode. Choices:
|
|
(list) IP address or FQDN name of the server. |
|
Sla. |
|
SLA ID. |
|
Jitter for SLA to make decision in milliseconds. |
|
Latency for SLA to make decision in milliseconds. |
|
Criteria on which to base link selection. Choices:
|
|
Packet loss for SLA to make decision in percentage. |
|
Time interval in seconds that SLA fail log messages will be generated |
|
Time interval in seconds that SLA pass log messages will be generated |
|
Enable/disable system DNS as the probe server. Choices:
|
|
Alert threshold for jitter |
|
Alert threshold for latency |
|
Alert threshold for packet loss |
|
Warning threshold for jitter |
|
Warning threshold for latency |
|
Warning threshold for packet loss |
|
How long to wait before not receiving a reply from the server to consider the connetion attempt a failure |
|
Enable/disable update cascade interface. Choices:
|
|
Enable/disable updating the static route. Choices:
|
|
Algorithm or mode to use for load balancing Internet traffic to SD-WAN members. Choices:
|
|
Members. |
|
Dynamic member. |
|
Comments. |
|
Cost of this interface for services in SLA mode |
|
The default gateway for this interface. |
|
IPv6 gateway. |
|
Ingress spillover threshold for this interface |
|
Interface name. |
|
Priority of the interface |
|
Sequence number |
|
Source IP address used in the health-check packet to the server. |
|
Source IPv6 address used in the health-check packet to the server. |
|
Egress spillover threshold for this interface |
|
Enable/disable this interface in the SD-WAN. Choices:
|
|
Measured volume ratio |
|
Weight of this interface for weighted load balancing. |
|
Neighbor. |
|
SD-WAN health-check name. |
|
IP address of neighbor. |
|
Member sequence number. |
|
Role of neighbor. Choices:
|
|
SLA ID. |
|
Waiting period in seconds when switching from the primary neighbor to the secondary neighbor from the neighbor start. |
|
Enable/disable hold switching from the secondary neighbor to the primary neighbor. Choices:
|
|
Waiting period in seconds when switching from the secondary neighbor to the primary neighbor when hold-down is disabled. |
|
Service. |
|
Address mode Choices:
|
|
Coefficient of reciprocal of available bidirectional bandwidth in the formula of custom-profile-1. |
|
Enable/disable use of SD-WAN as default service. Choices:
|
|
Enable/disable forward traffic DSCP tag. Choices:
|
|
Forward traffic DSCP tag. |
|
Enable/disable reverse traffic DSCP tag. Choices:
|
|
Reverse traffic DSCP tag. |
|
(list or str) Destination address name. |
|
(list or str) Destination address6 name. |
|
Enable/disable negation of destination address match. Choices:
|
|
End destination port number. |
|
Enable/disable SD-WAN service gateway. Choices:
|
|
(list or str) User groups. |
|
Health check. |
|
Waiting period in seconds when switching from the back-up member to the primary member |
|
Priority rule ID |
|
(list or str) Source interface name. |
|
Enable/disable negation of input device match. Choices:
|
|
Enable/disable use of Internet service for application-based load balancing. Choices:
|
|
(list) Application control based Internet Service ID list. |
|
(list or str) Application control based Internet Service group list. |
|
(list) Control-based Internet Service ID list. |
|
(list or str) Control-based Internet Service group list. |
|
(list or str) Custom Internet service name list. |
|
(list or str) Custom Internet Service group list. |
|
(list or str) Internet Service group list. |
|
(list or str) Internet service ID list. |
|
Internet service name list. |
|
Coefficient of jitter in the formula of custom-profile-1. |
|
Coefficient of latency in the formula of custom-profile-1. |
|
Link cost factor. Choices:
|
|
Percentage threshold change of link cost values that will result in policy route regeneration |
|
Member sequence number. |
|
Control how the priority rule sets the priority of interfaces in the SD-WAN. Choices:
|
|
Priority rule name. |
|
Coefficient of packet-loss in the formula of custom-profile-1. |
|
(list or str) Member sequence number list. |
|
Protocol number. |
|
Quality grade. |
|
Service role to work with neighbor. Choices:
|
|
IPv4 route map route-tag. |
|
Sla. |
|
Virtual WAN Link health-check. |
|
SLA ID. |
|
Method to compare SLA value for sla and load balance mode. Choices:
|
|
(list or str) Source address name. |
|
(list or str) Source address6 name. |
|
Enable/disable negation of source address match. Choices:
|
|
Enable/disable service when selected neighbor role is standalone while service role is not standalone. Choices:
|
|
Start destination port number. |
|
Enable/disable SD-WAN service. Choices:
|
|
Type of service bit pattern. |
|
Type of service evaluated bits. |
|
(list or str) User name. |
|
Enable/disable SD-WAN. Choices:
|
|
The adom to lock for FortiManager running in workspace mode, the value can be global and others including root. |
|
The maximum time in seconds to wait for other user to release the workspace lock. Default: |
Notes
Note
Starting in version 2.4.0, all input arguments are named using the underscore naming convention (snake_case). Please change the arguments such as “var-name” to “var_name”. Old argument names are still available yet you will receive deprecation warnings. You can ignore this warning by setting deprecation_warnings=False in ansible.cfg.
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.
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
- 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_virtualwanlink:
# 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_virtualwanlink:
fail_detect: <value in [disable, enable]>
health_check:
-
_dynamic_server: <string>
addr_mode: <value in [ipv4, ipv6]>
failtime: <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>
protocol: <value in [ping, tcp-echo, udp-echo, ...]>
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"
packetloss_threshold: <integer>
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]>
internet_service_id: <string>
probe_packets: <value in [disable, enable]>
sla_fail_log_period: <integer>
sla_pass_log_period: <integer>
timeout: <integer>
ha_priority: <integer>
diffservcode: <string>
probe_timeout: <integer>
dns_request_domain: <string>
probe_count: <integer>
system_dns: <value in [disable, enable]>
load_balance_mode: <value in [source-ip-based, weight-based, usage-based, ...]>
members:
-
_dynamic_member: <string>
comment: <string>
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>
cost: <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>
health_check: <string>
hold_down_time: <integer>
id: <integer>
internet_service: <value in [disable, enable]>
internet_service_ctrl: <list or integer>
internet_service_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_id: <list or string>
jitter_weight: <integer>
latency_weight: <integer>
link_cost_factor: <value in [latency, jitter, packet-loss, ...]>
link_cost_threshold: <integer>
member: <string>
mode: <value in [auto, manual, priority, ...]>
name: <string>
packet_loss_weight: <integer>
priority_members: <list or string>
protocol: <integer>
quality_link: <integer>
route_tag: <integer>
sla:
-
health_check: <string>
id: <integer>
src: <list or string>
src_negate: <value in [disable, enable]>
src6: <list or string>
start_port: <integer>
status: <value in [disable, enable]>
tos: <string>
tos_mask: <string>
users: <list or string>
internet_service_app_ctrl: <list or integer>
internet_service_app_ctrl_group: <list or string>
role: <value in [primary, secondary, standalone]>
sla_compare_method: <value in [order, number]>
standalone_action: <value in [disable, enable]>
input_device: <list or string>
internet_service_name: <string>
input_device_negate: <value in [disable, enable]>
status: <value in [disable, enable]>
neighbor:
-
health_check: <string>
ip: <string>
member: <string>
role: <value in [primary, secondary, standalone]>
sla_id: <integer>
neighbor_hold_boot_time: <integer>
neighbor_hold_down: <value in [disable, enable]>
neighbor_hold_down_time: <integer>
fail_alert_interfaces: <list or string>
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The result of the request. Returned: always |
|
The full url requested. Returned: always Sample: |
|
The status of api request. Returned: always Sample: |
|
The api response. Returned: always |
|
The descriptive message of the api response. Returned: always Sample: |
|
The information of the target system. Returned: always |
|
The status the request. Returned: always Sample: |
|
Warning if the parameters used in the playbook are not supported by the current FortiManager version. Returned: complex |