Puppet Class: lldpd

Defined in:
manifests/init.pp

Overview

Installs and manages the LLDP agent.

Examples:

Declaring the class

include lldpd

Enabling CDPv1 and CDPv2

class { 'lldpd':
  enable_cdpv1 => true,
  enable_cdpv2 => true,
}

Enable SNMP support

class { 'lldpd':
  enable_snmp => true,
  snmp_socket => ['127.0.0.1', 705],
}

Parameters:

  • addresses (Optional[Array[String, 1]])

    List of IP addresses to advertise as the management addresses.

  • chassis_id (Optional[Array[String, 1]])

    List of interfaces to use for choosing the MAC address used as the chassis ID.

  • class (Optional[Integer[1, 4]])

    Set the LLDP-MED class.

  • enable_cdpv1 (Variant[Boolean, Enum['force']])

    Disable, enable, or force Cisco Discovery Protocol version 1. Both this and the below parameter are combined to form an overall CDP setting, not all combinations are supported by lldpd.

  • enable_cdpv2 (Variant[Boolean, Enum['force']])

    Disable, enable, or force Cisco Discovery Protocol version 2. Both this and the above parameter are combined to form an overall CDP setting, not all combinations are supported by lldpd.

  • enable_edp (Variant[Boolean, Enum['force']])

    Disable, enable, or force the Extreme Discovery Protocol.

  • enable_fdp (Variant[Boolean, Enum['force']])

    Disable, enable, or force the Foundry Discovery Protocol.

  • enable_lldp (Variant[Boolean, Enum['force']])

    Disable, enable, or force the Link Layer Discovery Protocol.

  • enable_sonmp (Variant[Boolean, Enum['force']])

    Disable, enable, or force the Nortel Discovery Protocol.

  • enable_snmp (Boolean)

    Enable or disable the SNMP AgentX sub-agent support.

  • interfaces (Optional[Array[String, 1]])

    List of interfaces to advertise on.

  • package_name (String)

    The name of the package.

  • service_name (String)

    Name of the service.

  • snmp_socket (Optional[Variant[Stdlib::Absolutepath, Tuple[Stdlib::IP::Address::NoSubnet, Stdlib::Port]]])

    The path or IP & port pair used to establish an SNMP AgentX connection.



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'manifests/init.pp', line 32

class lldpd (
  Optional[Array[String, 1]]                                                                  $addresses,
  Optional[Array[String, 1]]                                                                  $chassis_id,
  Optional[Integer[1, 4]]                                                                     $class,
  Variant[Boolean, Enum['force']]                                                             $enable_cdpv1,
  Variant[Boolean, Enum['force']]                                                             $enable_cdpv2,
  Variant[Boolean, Enum['force']]                                                             $enable_edp,
  Variant[Boolean, Enum['force']]                                                             $enable_fdp,
  Variant[Boolean, Enum['force']]                                                             $enable_lldp,
  Variant[Boolean, Enum['force']]                                                             $enable_sonmp,
  Boolean                                                                                     $enable_snmp,
  Optional[Array[String, 1]]                                                                  $interfaces,
  String                                                                                      $package_name,
  String                                                                                      $service_name,
  Optional[Variant[Stdlib::Absolutepath, Tuple[Stdlib::IP::Address::NoSubnet, Stdlib::Port]]] $snmp_socket,
) {

  contain lldpd::install
  contain lldpd::config
  contain lldpd::service

  Class['lldpd::install'] -> Class['lldpd::config'] ~> Class['lldpd::service']
}