arubanetworks.aos_switch.arubaoss_vlan (1.7.0) — module

implements rest api for vlan configuration

| "added in version" 2.4.0 of arubanetworks.aos_switch"

Authors: Sanju Sadanandan (@hpe)

preview | supported by community

Install collection

Install with ansible-galaxy collection install arubanetworks.aos_switch:==1.7.0


Add to requirements.yml

  collections:
    - name: arubanetworks.aos_switch
      version: 1.7.0

Description

This implements rest apis which can be used to configure vlan

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
     - name: configure vlan
       arubaoss_vlan:
         vlan_id: 300
         name: "vlan300"
         status: "VS_PORT_BASED"
         vlantype: "VT_STATIC"
         is_jumbo_enabled: false
         is_voice_enabled: false
         is_dsnoop_enabled: false
         is_dhcp_server_enabled: false
         is_management_vlan: false
         config: "create"
         command: config_vlan
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
     - name: Configure igmp and its parameters for VLAN 2
       arubaoss_vlan:
         vlan_id: 2
         command: config_vlan_igmp
         is_igmp_enabled: true
         last_member_query_interval: 2
         query_max_response_time: 20
         robustness: 4
         igmp_version: 2
         is_querier_enabled: true
         interval: 145
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
     - name: delete igmp for VLAN 2
       arubaoss_vlan:
         vlan_id: 2
         command: config_vlan_igmp
         is_igmp_enabled: false

Inputs

    
host:
    description: 'Specifies the DNS host name or address for connecting to the remote
      device over the specified transport. The value of host is used as the destination
      address for the transport.

      '
    type: str

name:
    description: Name of the VLAN. While creating a Vlan If name is given as empty string,
      default value (VLANx, where x is the vlan_id) will be configured. Empty string will
      not be accepted while modifying a Vlan
    required: false

port:
    description: 'Specifies the port to use when building the connection to the remote
      device.

      '
    type: int

acl_id:
    description: Acl policy to be added to vlan
    required: false

config:
    choices:
    - create
    - delete
    description: To config or unconfig the required command
    required: false

status:
    choices:
    - VS_PORT_BASED
    - VS_PROTOCOL_BASED
    - VS_DYNAMIC
    description: the status of the VLAN
    required: false

command:
    choices:
    - config_vlan
    - config_vlan_port
    - config_vlan_ipaddress
    - config_vlan_dhcpHelperAddress
    - config_vlan_igmp
    description: Name of sub module, according to the configuration required.
    required: true

port_id:
    description: Port ID to be configured on the vlan
    required: false

timeout:
    description: 'Specifies the timeout in seconds for communicating with the network
      device for either connecting or sending commands. If the timeout is exceeded before
      the operation is completed, the module will error.

      '
    type: int

use_ssl:
    description: 'Configures use SSL (HTTPS) for access to the remote device.

      '
    type: bool

version:
    choices:
    - IAV_IP_V4
    description: Version of IP Address (V6 is not supported via REST)
    required: false

vlan_id:
    description: vlan id to be configured
    required: true

acl_type:
    choices:
    - AT_STANDARD_IPV4
    - AT_EXTENDED_IPV4
    - AT_CONNECTION_RATE_FILTER
    default: AT_STANDARD_IPV4
    description: Type of acl policy
    required: false

interval:
    default: 125 [5-300]
    description: Sets the interval in seconds between IGMP queries
    required: false

password:
    description: 'Specifies the password to use to authenticate the connection to the
      remote device. This value is used to authenticate the SSH session. If the value
      is not specified in the task, the value of environment variable ANSIBLE_NET_PASSWORD
      will be used instead.

      '
    type: str

provider:
    description: A dict object containing connection details.
    suboptions:
      api_version:
        default: None
        description: 'Configures (force) API version (vX.Y) for acces to the remote device.

          '
        type: str
      host:
        description: 'Specifies the DNS host name or address for connecting to the remote
          device over the specified transport. The value of host is used as the destination
          address for the transport.

          '
        type: str
      password:
        description: 'Specifies the password to use to authenticate the connection to
          the remote device. This value is used to authenticate the SSH session. If the
          value is not specified in the task, the value of environment variable ANSIBLE_NET_PASSWORD
          will be used instead.

          '
        type: str
      port:
        description: 'Specifies the port to use when building the connection to the remote
          device.

          '
        type: int
      ssh_keyfile:
        description: 'Specifies the SSH key to use to authenticate the connection to the
          remote device. This value is the path to the key used to authenticate the SSH
          session. If the value is not specified in the task, the value of environment
          variable ANSIBLE_NET_SSH_KEYFILE will be used instead.

          '
        type: path
      timeout:
        description: 'Specifies the timeout in seconds for communicating with the network
          device for either connecting or sending commands. If the timeout is exceeded
          before the operation is completed, the module will error.

          '
        type: int
      transport:
        default: aossapi
        description: 'Configures the transport (aossapi or network_cli) mode.

          '
        type: str
      use_proxy:
        default: false
        description: 'Configures use (Local) Proxy for access to the remote device.

          '
        type: bool
      use_ssl:
        description: 'Configures use SSL (HTTPS) for access to the remote device.

          '
        type: bool
      username:
        description: 'Configures the username to use to authenticate the connection to
          the remote device. This value is used to authenticate the SSH session. If the
          value is not specified in the task, the value of environment variable ANSIBLE_NET_USERNAME
          will be used instead.

          '
        type: str
      validate_certs:
        default: false
        description: 'Configures validation of certification for access to the remote
          device.

          '
        type: bool
    type: dict

username:
    description: 'Configures the username to use to authenticate the connection to the
      remote device. This value is used to authenticate the SSH session. If the value
      is not specified in the task, the value of environment variable ANSIBLE_NET_USERNAME
      will be used instead.

      '
    type: str

vlantype:
    choices:
    - VT_STATIC
    - VT_STATIC_SVLAN
    - VT_GVRP
    description: The type of VLAN, default being VT_STATIC
    required: false

port_mode:
    choices:
    - POM_UNTAGGED
    - POM_TAGGED_STATIC
    - POM_FORBIDDEN
    description: Port modes to be configured
    required: false

qos_policy:
    description: Qos policy to be added to vlan
    required: false

robustness:
    default: 2 [1-8]
    description: Set the number of times to retry a query
    required: false

api_version:
    default: None
    description: 'Configures (force) API version (vX.Y) for acces to the remote device.

      '
    type: str

ssh_keyfile:
    description: 'Specifies the SSH key to use to authenticate the connection to the remote
      device. This value is the path to the key used to authenticate the SSH session.
      If the value is not specified in the task, the value of environment variable ANSIBLE_NET_SSH_KEYFILE
      will be used instead.

      '
    type: path

igmp_version:
    default: 2 [2-3]
    description: Set the IGMP version to use
    required: false

vlan_ip_mask:
    description: IP Mask for the IP Address configured
    required: false

acl_direction:
    choices:
    - AD_INBOUND
    - AD_OUTPUND
    - AD_CRF
    description: Direction is which acl to be applied
    required: false

validate_certs:
    default: false
    description: 'Configures validation of certification for access to the remote device.

      '
    type: bool

ip_address_mode:
    choices:
    - IAAM_DISABLED
    - IAAM_STATIC
    - IAAM_DHCP
    description: IP Address Mode to be configured on vlan
    required: false

is_igmp_enabled:
    default: false
    description: Enable/disable/configure Internet Group Management Protocol (IGMP) feature
      on a VLAN.
    required: false

vlan_ip_address:
    description: IP Address to be configured on vlan
    required: false

helper_addresses:
    description: DHCP helper address for the corresponding VLAN id
    required: false

is_jumbo_enabled:
    description: Whether Jumbo is enabled
    required: false

is_voice_enabled:
    description: Whether Voice is enabled
    required: false

is_dsnoop_enabled:
    description: Whether DSNOOP is enabled
    required: false

is_management_vlan:
    description: Whether vlan is a management vlan or not
    required: false

is_querier_enabled:
    default: true
    description: Specify querier/non-querier capability for the VLAN.
    required: false

is_dhcp_server_enabled:
    description: Whether DHCP server is enabled
    required: false

query_max_response_time:
    default: 10 [10-128]
    description: Set the time interval in seconds to wait for a response to a query
    required: false

last_member_query_interval:
    default: 1 [1-2]
    description: IGMP last member query interval. Value will be ignored if is_igmp_enabled
      is false.
    required: false