community.network.ce_vlan – Manages VLAN resources and attributes on Huawei CloudEngine switches.
Note
This plugin is part of the community.network collection (version 3.0.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 community.network
.
To use it in a playbook, specify: community.network.ce_vlan
.
Parameters
Parameter |
Comments |
---|---|
Specify VLAN description, minimum of 1 character, maximum of 80 characters. |
|
Name of VLAN, minimum of 1 character, maximum of 31 characters. |
|
Manage the state of the resource. Choices:
|
|
Single VLAN ID, in the range from 1 to 4094. |
|
Range of VLANs such as |
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
community.network.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
community.network.ce_vlan:
vlan_id: 50
name: WEB
state: absent
provider: "{{ cli }}"
- name: Ensure VLAN is NOT on the device
community.network.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 |
Description |
---|---|
check to see if a change was made on the device Returned: always Sample: true |
|
k/v pairs of the VLAN after executing module or null when using vlan_range Returned: always Sample: {“description”: “vlan for app”, “name”: “VLAN_APP”, “vlan_id”: “20”} |
|
list of VLANs after the module is executed Returned: always Sample: [“1”, “2”, “3”, “4”, “5”, “20”, “100”] |
|
k/v pairs of existing vlan or null when using vlan_range Returned: always Sample: {“description”: “”, “name”: “VLAN_APP”, “vlan_id”: “20”} |
|
list of existing VLANs on the switch prior to making changes Returned: always Sample: [“1”, “2”, “3”, “4”, “5”, “20”] |
|
k/v pairs of parameters passed into module (does not include vlan_id or vlan_range) Returned: always Sample: {“description”: “vlan for app”, “name”: “VLAN_APP”, “vlan_id”: “20”} |
|
list of VLANs being proposed Returned: always Sample: [“100”] |
|
command string sent to the device Returned: always Sample: [“vlan 20”, “name VLAN20”] |
Authors
QijunPan (@QijunPan)