community.network.ce_vrrp – Manages VRRP interfaces on HUAWEI CloudEngine devices.

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_vrrp.

Synopsis

  • Manages VRRP interface attributes on HUAWEI CloudEngine devices.

Parameters

Parameter Choices/Defaults Comments
admin_flowdown
boolean
    Choices:
  • no
  • yes
Default:
"false"
Disable the flowdown function for service VRRP.
admin_ignore_if_down
boolean
    Choices:
  • no
  • yes
Default:
"false"
mVRRP ignores an interface Down event.
admin_interface
string
Tracked mVRRP interface name. The value is a string of 1 to 63 characters.
admin_vrid
string
Tracked mVRRP ID. The value is an integer ranging from 1 to 255.
advertise_interval
string
Configured interval between sending advertisements, in milliseconds. Only the master router sends VRRP advertisements. The default value is 1000 milliseconds.
auth_key
string
This object is set based on the authentication type. When noAuthentication is specified, the value is empty. When simpleTextPassword or md5Authentication is specified, the value is a string of 1 to 8 characters in plaintext and displayed as a blank text for security.
auth_mode
string
    Choices:
  • simple
  • md5
  • none
Authentication type used for VRRP packet exchanges between virtual routers. The values are noAuthentication, simpleTextPassword, md5Authentication. The default value is noAuthentication.
fast_resume
string
    Choices:
  • enable
  • disable
mVRRP's fast resume mode.
gratuitous_arp_interval
string
Interval at which gratuitous ARP packets are sent, in seconds. The value ranges from 30 to 1200.The default value is 300.
holding_multiplier
string
The configured holdMultiplier.The value is an integer ranging from 3 to 10. The default value is 3.
interface
string
Name of an interface. The value is a string of 1 to 63 characters.
is_plain
boolean
    Choices:
  • no
  • yes
Default:
"false"
Select the display mode of an authentication key. By default, an authentication key is displayed in ciphertext.
preempt_timer_delay
string
Preemption delay. The value is an integer ranging from 0 to 3600. The default value is 0.
priority
string
Configured VRRP priority. The value ranges from 1 to 254. The default value is 100. A larger value indicates a higher priority.
recover_delay
string
Delay in recovering after an interface goes Up. The delay is used for interface flapping suppression. The value is an integer ranging from 0 to 3600. The default value is 0 seconds.
state
string
    Choices:
  • present ←
  • absent
Specify desired state of the resource.
version
string
    Choices:
  • v2
  • v3
VRRP version. The default version is v2.
virtual_ip
string
Virtual IP address. The value is a string of 0 to 255 characters.
vrid
string
Default:
"present"
VRRP backup group ID. The value is an integer ranging from 1 to 255.
vrrp_type
string
    Choices:
  • normal
  • member
  • admin
Type of a VRRP backup group.

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: Vrrp 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: Set vrrp version
    community.network.ce_vrrp:
      version: v3
      provider: "{{ cli }}"
  - name: Set vrrp gratuitous-arp interval
    community.network.ce_vrrp:
      gratuitous_arp_interval: 40
      mlag_id: 4
      provider: "{{ cli }}"
  - name: Set vrrp recover-delay
    community.network.ce_vrrp:
      recover_delay: 10
      provider: "{{ cli }}"
  - name: Set vrrp vrid virtual-ip
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      virtual_ip: 10.14.2.7
      provider: "{{ cli }}"
  - name: Set vrrp vrid admin
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      vrrp_type: admin
      provider: "{{ cli }}"
  - name: Set vrrp vrid fast_resume
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      fast_resume: enable
      provider: "{{ cli }}"
  - name: Set vrrp vrid holding-multiplier
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      holding_multiplier: 4
      provider: "{{ cli }}"
  - name: Set vrrp vrid preempt timer delay
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      preempt_timer_delay: 10
      provider: "{{ cli }}"
  - name: Set vrrp vrid admin-vrrp
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      admin_interface: 40GE2/0/9
      admin_vrid: 2
      vrrp_type: member
      provider: "{{ cli }}"
  - name: Set vrrp vrid authentication-mode
    community.network.ce_vrrp:
      interface: 40GE2/0/8
      vrid: 1
      is_plain: true
      auth_mode: simple
      auth_key: aaa
      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 aaa params after module execution

Sample:
{'auth_mode': 'simple', 'interface': '40GE2/0/8', 'is_plain': 'true', 'vrid': '1', 'vrrp_type': 'normal'}
existing
dictionary
always
k/v pairs of existing aaa server

Sample:
{'auth_mode': 'none', 'interface': '40GE2/0/8', 'is_plain': 'false', 'vrid': '1', 'vrrp_type': 'normal'}
proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'auth_key': 'aaa', 'auth_mode': 'simple', 'interface': '40GE2/0/8', 'is_plain': True, 'state': 'present', 'vrid': '1'}
updates
list / elements=string
always
command sent to the device

Sample:
{'interface 40GE2/0/8': None, 'vrrp vrid 1 authentication-mode simple plain aaa': None}


Authors

  • Li Yanfeng (@numone213)