ce_vlan – Manages VLAN resources and attributes on Huawei CloudEngine switches

New in version 2.4.

Synopsis

  • Manages VLAN configurations on Huawei CloudEngine switches.

Parameters

Parameter Choices/Defaults Comments
description
-
Specify VLAN description, minimum of 1 character, maximum of 80 characters.
name
-
Name of VLAN, minimum of 1 character, maximum of 31 characters.
state
-
    Choices:
  • present ←
  • absent
Manage the state of the resource.
vlan_id
-
Single VLAN ID, in the range from 1 to 4094.
vlan_range
-
Range of VLANs such as 2-10 or 2,5,10-15, etc.

Notes

Note

  • This module requires the netconf system service be enabled on the remote device being managed.

  • Recommended connection is netconf.

  • This module also works with local connections for legacy playbooks.

Examples

- name: vlan module test
  hosts: cloudengine
  connection: local
  gather_facts: no
  vars:
    cli:
      host: "{{ inventory_hostname }}"
      port: "{{ ansible_ssh_port }}"
      username: "{{ username }}"
      password: "{{ password }}"
      transport: cli

  tasks:

  - name: Ensure a range of VLANs are not present on the switch
    ce_vlan:
      vlan_range: "2-10,20,50,55-60,100-150"
      state: absent
      provider: "{{ cli }}"

  - name: Ensure VLAN 50 exists with the name WEB
    ce_vlan:
      vlan_id: 50
      name: WEB
      state: absent
      provider: "{{ cli }}"

  - name: Ensure VLAN is NOT on the device
    ce_vlan:
      vlan_id: 50
      state: absent
      provider: "{{ cli }}"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
changed
boolean
always
check to see if a change was made on the device

Sample:
True
end_state
dictionary
always
k/v pairs of the VLAN after executing module or null when using vlan_range

Sample:
{'vlan_id': '20', 'name': 'VLAN_APP', 'description': 'vlan for app'}
end_state_vlans_list
list
always
list of VLANs after the module is executed

Sample:
['1', '2', '3', '4', '5', '20', '100']
existing
dictionary
always
k/v pairs of existing vlan or null when using vlan_range

Sample:
{'vlan_id': '20', 'name': 'VLAN_APP', 'description': ''}
existing_vlans_list
list
always
list of existing VLANs on the switch prior to making changes

Sample:
['1', '2', '3', '4', '5', '20']
proposed
dictionary
always
k/v pairs of parameters passed into module (does not include vlan_id or vlan_range)

Sample:
{'vlan_id': '20', 'name': 'VLAN_APP', 'description': 'vlan for app'}
proposed_vlans_list
list
always
list of VLANs being proposed

Sample:
['100']
updates
list
always
command string sent to the device

Sample:
['vlan 20', 'name VLAN20']


Status

Authors

  • QijunPan (@QijunPan)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.