On this page
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
.
Synopsis
- Manages VLAN configurations on Huawei CloudEngine switches.
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
description
string
|
Specify VLAN description, minimum of 1 character, maximum of 80 characters.
|
|
name
string
|
Name of VLAN, minimum of 1 character, maximum of 31 characters.
|
|
state
string
|
|
Manage the state of the resource.
|
vlan_id
string
|
Single VLAN ID, in the range from 1 to 4094.
|
|
vlan_range
string
|
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
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 | 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:
{'description': 'vlan for app', 'name': 'VLAN_APP', 'vlan_id': '20'}
|
end_state_vlans_list
list / elements=string
|
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:
{'description': '', 'name': 'VLAN_APP', 'vlan_id': '20'}
|
existing_vlans_list
list / elements=string
|
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:
{'description': 'vlan for app', 'name': 'VLAN_APP', 'vlan_id': '20'}
|
proposed_vlans_list
list / elements=string
|
always |
list of VLANs being proposed
Sample:
['100']
|
updates
list / elements=string
|
always |
command string sent to the device
Sample:
['vlan 20', 'name VLAN20']
|
Authors
- QijunPan (@QijunPan)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/network/ce_vlan_module.html