community.network.ce_evpn_bgp – Manages BGP EVPN configuration 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_evpn_bgp.

Synopsis

  • This module offers the ability to configure a BGP EVPN peer relationship on HUAWEI CloudEngine switches.

Parameters

Parameter Choices/Defaults Comments
advertise_l2vpn_evpn
string
    Choices:
  • enable
  • disable
Enable or disable a device to advertise IP routes imported to a VPN instance to its EVPN instance.
advertise_router_type
string
    Choices:
  • arp
  • irb
Configures a device to advertise routes to its BGP EVPN peers.
as_number
string
Specifies integral AS number. The value is an integer ranging from 1 to 4294967295.
bgp_instance
string / required
Name of a BGP instance. The value is a string of 1 to 31 case-sensitive characters, spaces not supported.
peer_address
string
Specifies the IPv4 address of a BGP EVPN peer. The value is in dotted decimal notation.
peer_enable
string
    Choices:
  • true
  • false
Enable or disable a BGP device to exchange routes with a specified peer or peer group in the address family view.
peer_group_name
string
Specify the name of a peer group that BGP peers need to join. The value is a string of 1 to 47 case-sensitive characters, spaces not supported.
state
string
    Choices:
  • present ←
  • absent
Manage the state of the resource.
vpn_name
string
Associates a specified VPN instance with the IPv4 address family. The value is a string of 1 to 31 case-sensitive characters, spaces not supported.

Notes

Note

  • Recommended connection is network_cli.

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

Examples

- name: Evpn bgp 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: Enable peer address.
    community.network.ce_evpn_bgp:
      bgp_instance: 100
      peer_address: 1.1.1.1
      as_number: 100
      peer_enable: true
      provider: "{{ cli }}"

  - name: Enable peer group arp.
    community.network.ce_evpn_bgp:
      bgp_instance: 100
      peer_group_name: aaa
      advertise_router_type: arp
      provider: "{{ cli }}"

  - name: Enable advertise l2vpn evpn.
    community.network.ce_evpn_bgp:
      bgp_instance: 100
      vpn_name: aaa
      advertise_l2vpn_evpn: enable
      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
verbose mode
k/v pairs of configuration after module execution

Sample:
{'advertise_l2vpn_evpn': 'enable', 'bgp_instance': '100', 'vpn_name': 'aaa'}
existing
dictionary
always
k/v pairs of existing rollback

Sample:
{'bgp_instance': '100', 'peer_group_advertise_type': []}
proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'advertise_router_type': 'arp', 'bgp_instance': '100', 'peer_group_name': 'aaa', 'state': 'present'}
updates
list / elements=string
always
command sent to the device

Sample:
['peer 1.1.1.1 enable', 'peer aaa advertise arp']


Authors

  • Li Yanfeng (@QijunPan)