lix_fortinet.fortios.fortios_wireless_controller_arrp_profile (102.2.120) — module

Configure WiFi Automatic Radio Resource Provisioning (ARRP) profiles in Fortinet's FortiOS and FortiGate.

| "added in version" 2.0.0 of lix_fortinet.fortios"

Authors: Link Zheng (@chillancezen), Jie Xue (@JieX19), Hongbin Lu (@fgtdev-hblu), Frank Shen (@frankshen01), Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install collection

Install with ansible-galaxy collection install lix_fortinet.fortios:==102.2.120


Add to requirements.yml

  collections:
    - name: lix_fortinet.fortios
      version: 102.2.120

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify wireless_controller feature and arrp_profile category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- hosts: fortigates
  collections:
    - fortinet.fortios
  connection: httpapi
  vars:
   vdom: "root"
   ansible_httpapi_use_ssl: yes
   ansible_httpapi_validate_certs: no
   ansible_httpapi_port: 443
  tasks:
  - name: Configure WiFi Automatic Radio Resource Provisioning (ARRP) profiles.
    fortios_wireless_controller_arrp_profile:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      wireless_controller_arrp_profile:
        comment: "Comment."
        darrp_optimize: "86400"
        darrp_optimize_schedules:
         -
            name: "default_name_6 (source firewall.schedule.group.name firewall.schedule.recurring.name firewall.schedule.onetime.name)"
        include_dfs_channel: "enable"
        include_weather_channel: "enable"
        monitor_period: "300"
        name: "default_name_10"
        override_darrp_optimize: "enable"
        selection_period: "3600"
        threshold_ap: "250"
        threshold_channel_load: "60"
        threshold_noise_floor: "<your_own_value>"
        threshold_rx_errors: "50"
        threshold_spectral_rssi: "<your_own_value>"
        threshold_tx_retries: "300"
        weight_channel_load: "20"
        weight_dfs_channel: "500"
        weight_managed_ap: "50"
        weight_noise_floor: "40"
        weight_rogue_ap: "10"
        weight_spectral_rssi: "40"
        weight_weather_channel: "1000"

Inputs

    
vdom:
    default: root
    description:
    - Virtual domain, among those defined previously. A vdom is a virtual instance of
      the FortiGate that can be configured and used as a different unit.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - Indicates whether to create or remove the object.
    required: true
    type: str

enable_log:
    default: false
    description:
    - Enable/Disable logging for task.
    required: false
    type: bool

member_path:
    description:
    - Member attribute path to operate on.
    - Delimited by a slash character if there are more than one attribute.
    - Parameter marked with member_path is legitimate for doing member operation.
    type: str

access_token:
    description:
    - Token-based authentication. Generated from GUI of Fortigate.
    required: false
    type: str

member_state:
    choices:
    - present
    - absent
    description:
    - Add or delete a member under specified attribute path.
    - When member_state is specified, the state option is ignored.
    type: str

wireless_controller_arrp_profile:
    default: null
    description:
    - Configure WiFi Automatic Radio Resource Provisioning (ARRP) profiles.
    suboptions:
      comment:
        description:
        - Comment.
        type: str
      darrp_optimize:
        description:
        - Time for running Dynamic Automatic Radio Resource Provisioning (DARRP) optimizations
          (0 - 86400 sec).
        type: int
      darrp_optimize_schedules:
        description:
        - Firewall schedules for DARRP running time. DARRP will run periodically based
          on darrp-optimize within the schedules. Separate multiple schedule names with
          a space.
        elements: dict
        suboptions:
          name:
            description:
            - Schedule name. Source firewall.schedule.group.name firewall.schedule.recurring.name
              firewall.schedule.onetime.name.
            type: str
        type: list
      include_dfs_channel:
        choices:
        - enable
        - disable
        - 'yes'
        - 'no'
        description:
        - Enable/disable use of DFS channel in DARRP channel selection phase 1 .
        type: str
      include_weather_channel:
        choices:
        - enable
        - disable
        - 'yes'
        - 'no'
        description:
        - Enable/disable use of weather channel in DARRP channel selection phase 1 .
        type: str
      monitor_period:
        description:
        - Period in seconds to measure average transmit retries and receive errors .
        type: int
      name:
        description:
        - WiFi ARRP profile name.
        required: true
        type: str
      override_darrp_optimize:
        choices:
        - enable
        - disable
        description:
        - Enable to override setting darrp-optimize and darrp-optimize-schedules .
        type: str
      selection_period:
        description:
        - Period in seconds to measure average channel load, noise floor, spectral RSSI
          .
        type: int
      threshold_ap:
        description:
        - Threshold to reject channel in DARRP channel selection phase 1 due to surrounding
          APs (0 - 500).
        type: int
      threshold_channel_load:
        description:
        - Threshold in percentage to reject channel in DARRP channel selection phase 1
          due to channel load (0 - 100).
        type: int
      threshold_noise_floor:
        description:
        - Threshold in dBm to reject channel in DARRP channel selection phase 1 due to
          noise floor (-95 to -20).
        type: str
      threshold_rx_errors:
        description:
        - Threshold in percentage for receive errors to trigger channel reselection in
          DARRP monitor stage (0 - 100).
        type: int
      threshold_spectral_rssi:
        description:
        - Threshold in dBm to reject channel in DARRP channel selection phase 1 due to
          spectral RSSI (-95 to -20).
        type: str
      threshold_tx_retries:
        description:
        - Threshold in percentage for transmit retries to trigger channel reselection
          in DARRP monitor stage (0 - 1000).
        type: int
      weight_channel_load:
        description:
        - Weight in DARRP channel score calculation for channel load (0 - 2000).
        type: int
      weight_dfs_channel:
        description:
        - Weight in DARRP channel score calculation for DFS channel (0 - 2000).
        type: int
      weight_managed_ap:
        description:
        - Weight in DARRP channel score calculation for managed APs (0 - 2000).
        type: int
      weight_noise_floor:
        description:
        - Weight in DARRP channel score calculation for noise floor (0 - 2000).
        type: int
      weight_rogue_ap:
        description:
        - Weight in DARRP channel score calculation for rogue APs (0 - 2000).
        type: int
      weight_spectral_rssi:
        description:
        - Weight in DARRP channel score calculation for spectral RSSI (0 - 2000).
        type: int
      weight_weather_channel:
        description:
        - Weight in DARRP channel score calculation for weather channel (0 - 2000).
        type: int
    type: dict

Outputs

build:
  description: Build number of the fortigate image
  returned: always
  sample: '1547'
  type: str
http_method:
  description: Last method used to provision the content into FortiGate
  returned: always
  sample: PUT
  type: str
http_status:
  description: Last result given by FortiGate on last operation applied
  returned: always
  sample: '200'
  type: str
mkey:
  description: Master key (id) used in the last call to FortiGate
  returned: success
  sample: id
  type: str
name:
  description: Name of the table used to fulfill the request
  returned: always
  sample: urlfilter
  type: str
path:
  description: Path of the table used to fulfill the request
  returned: always
  sample: webfilter
  type: str
revision:
  description: Internal revision number
  returned: always
  sample: 17.0.2.10658
  type: str
serial:
  description: Serial number of the unit
  returned: always
  sample: FGVMEVYYQT3AB5352
  type: str
status:
  description: Indication of the operation's result
  returned: always
  sample: success
  type: str
vdom:
  description: Virtual domain used
  returned: always
  sample: root
  type: str
version:
  description: Version of the FortiGate
  returned: always
  sample: v5.6.3
  type: str