community.network.ce_evpn_bgp_rr – Manages RR for the VXLAN Network on HUAWEI CloudEngine switches.

Note

This plugin is part of the community.network collection (version 2.1.1).

To install it use: ansible-galaxy collection install community.network.

To use it in a playbook, specify: community.network.ce_evpn_bgp_rr.

Synopsis

  • Configure an RR in BGP-EVPN address family view on HUAWEI CloudEngine switches.

Parameters

Parameter Choices/Defaults Comments
as_number
string / required
Specifies the number of the AS, in integer format. The value is an integer that ranges from 1 to 4294967295.
bgp_evpn_enable
string
    Choices:
  • enable ←
  • disable
Enable or disable the BGP-EVPN address family.
bgp_instance
string
Specifies the name of a BGP instance. The value of instance-name can be an integer 1 or a string of 1 to 31.
peer
string
Specifies the IPv4 address or the group name of a peer.
peer_type
string
    Choices:
  • group_name
  • ipv4_address
Specify the peer type.
policy_vpn_target
string
    Choices:
  • enable
  • disable
Enable or disable the VPN-Target filtering.
reflect_client
string
    Choices:
  • enable
  • disable
Configure the local device as the route reflector and the peer or peer group as the client of the route reflector.

Notes

Note

  • Ensure that BGP view is existed.

  • The peer, peer_type, and reflect_client arguments must all exist or not exist.

  • Recommended connection is network_cli.

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

Examples

- name: BGP RR 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: "Configure BGP-EVPN address family view and ensure that BGP view has existed."
    community.network.ce_evpn_bgp_rr:
      as_number: 20
      bgp_evpn_enable: enable
      provider: "{{ cli }}"

  - name: "Configure reflect client and ensure peer has existed."
    community.network.ce_evpn_bgp_rr:
      as_number: 20
      peer_type: ipv4_address
      peer: 192.8.3.3
      reflect_client: enable
      provider: "{{ cli }}"

  - name: "Configure the VPN-Target filtering."
    community.network.ce_evpn_bgp_rr:
      as_number: 20
      policy_vpn_target: enable
      provider: "{{ cli }}"

  - name: "Configure an RR in BGP-EVPN address family view."
    community.network.ce_evpn_bgp_rr:
      as_number: 20
      bgp_evpn_enable: enable
      peer_type: ipv4_address
      peer: 192.8.3.3
      reflect_client: enable
      policy_vpn_target: disable
      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 end attributes on the device

Sample:
{'as_number': '20', 'bgp_evpn_enable': 'enable', 'bgp_instance': None, 'peer': '192.8.3.3', 'peer_type': 'ipv4_address', 'policy_vpn_target': 'disable', 'reflect_client': 'enable'}
existing
dictionary
always
k/v pairs of existing attributes on the device

Sample:
{'as_number': '20', 'bgp_evpn_enable': 'disable', 'bgp_instance': None, 'peer': None, 'peer_type': None, 'policy_vpn_target': 'disable', 'reflect_client': 'disable'}
proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'as_number': '20', 'bgp_evpn_enable': 'enable', 'bgp_instance': None, 'peer': '192.8.3.3', 'peer_type': 'ipv4_address', 'policy_vpn_target': 'disable', 'reflect_client': 'enable'}
updates
list / elements=string
always
command list sent to the device

Sample:
['bgp 20', ' l2vpn-family evpn', ' peer 192.8.3.3 enable', ' peer 192.8.3.3 reflect-client', ' undo policy vpn-target']


Authors

  • Zhijin Zhou (@QijunPan)