Resource Type: cisco_bgp

Defined in:
lib/puppet/type/cisco_bgp.rb
Providers:
cisco

Overview

Manages BGP global and vrf configuration.

~~~puppet cisco_bgp { ‘<bgp-title>’:

..attributes..

} ~~~

‘<bgp-title>` is the title of the bgp resource.

Example: ~~~puppet

cisco_bgp { 'raleigh':
  ensure                                 => present,
  asn                                    => '39317'
  vrf                                    => 'green',
  route_distinguisher                    => 'auto',
  router_id                              => '10.0.0.1',
  cluster_id                             => '55',
  confederation_id                       => '77.6',
  confederation_peers                    => '77.6 88 99.4 200',
  disable_policy_batching                => true,
  disable_policy_batching_ipv4           => 'xx',
  disable_policy_batching_ipv6           => 'yy',
  enforce_first_as                       => true,
  event_history_cli                      => 'size_large',
  event_history_detail                   => 'size_large',
  event_history_errors                   => 'size_large',
  event_history_events                   => 'size_large',
  event_history_objstore                 => 'size_medium',
  event_history_periodic                 => '100000',
  fast_external_fallover                 => true,
  flush_routes                           => false,
  isolate                                => false,
  maxas_limit                            => '50',
  reconnect_interval                     => '55',
  shutdown                               => false,

  supress_fib_pending                    => true,
  log_neighbor_changes                   => true,

  # Best Path Properties
  bestpath_always_compare_med            => true,
  bestpath_aspath_multipath_relax        => false,
  bestpath_compare_routerid              => true,
  bestpath_cost_community_ignore         => true,
  bestpath_med_confed                    => false,
  bestpath_med_missing_as_worst          => true,
  bestpath_med_non_deterministic         => true,
  timer_bestpath_limit                   => 250,
  timer_bestpath_limit_always            => false,

  # Graceful Restart Properties
  graceful_restart                       => true,
  graceful_restart_timers_restart        => 130,
  graceful_restart_timers_stalepath_time => 310,
  graceful_restart_helper                => true,

  # Nonstop Routing (NSR)
  nsr                                    => false,

  # Timer Properties
  timer_bgp_keepalive                    => 30,
  timer_bgp_holdtime                     => 90,
}

~~~

Example Title Patterns:

~~~puppet

cisco_bgp { 'new_york':
  ensure                                 => present,
  asn                                    => '39317',
  vrf                                    => 'green',

~~~

~~~puppet

cisco_bgp { '55':
  ensure                                 => present,
  vrf                                    => 'blue',

~~~

~~~puppet

cisco_bgp { '55 blue':
  ensure                                 => present,

~~~

Properties

  • bestpath_always_compare_med

    Enable/Disable Multi Exit Discriminator (MED) comparison on paths from different autonomous systems

    Supported values:
    • true
    • false
    • default
  • bestpath_aspath_multipath_relax

    Enable/Disable load sharing across the providers with different (but equal-length) AS paths

    Supported values:
    • true
    • false
    • default
  • bestpath_compare_routerid

    Enable/Disable comparison of router IDs for identical eBGP paths.

    Supported values:
    • true
    • false
    • default
  • bestpath_cost_community_ignore

    Enable/Disable capability to ignore the cost community for BGP best-path calculations.

    Supported values:
    • true
    • false
    • default
  • bestpath_med_confed

    Enable/Disable enforcement of bestpath to do a MED comparison only between paths originated within a confederation.

    Supported values:
    • true
    • false
    • default
  • bestpath_med_missing_as_worst
    Supported values:
    • true
    • false
    • default
  • bestpath_med_non_deterministic

    Enable/Disable deterministic selection of the best MED path from among the paths from the same autonomous system.

    Supported values:
    • true
    • false
    • default
  • cluster_id

    Route Reflector Cluster-ID. Valid values are String, keyword ‘default’.

  • confederation_id

    Routing domain confederation AS. Valid values are String, keyword ‘default’.

  • confederation_peers

    AS confederation parameters. Valid values are Array, String, keyword ‘default’

  • disable_policy_batching
    Supported values:
    • true
    • false
    • default
  • disable_policy_batching_ipv4

    Enable/Disable the batching evaluation of prefix advertisements to all peers. Valid values are String

  • disable_policy_batching_ipv6

    Enable/Disable the batching evaluation of prefix advertisements to all peers. Valid values are String

  • enforce_first_as
    Supported values:
    • true
    • false
    • default
  • ensure (defaults to: present)

    The basic property that the resource should be in.

    Supported values:
    • present
    • absent
  • event_history_cli

    event_history_cli state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • event_history_detail

    event_history_detail state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • event_history_errors

    event_history_errors state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • event_history_events

    event_history_events state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • event_history_objstore

    event_history_objstore state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • event_history_periodic

    event_history_periodic state. Valid values are False, size_small, size_medium, size_large, size_disable, size in bytes

  • fast_external_fallover
    Supported values:
    • true
    • false
    • default
  • flush_routes

    Enable/Disable flush routes in RIB upon controlled restart

    Supported values:
    • true
    • false
    • default
  • graceful_restart

    Enable/Disable

    Supported values:
    • true
    • false
    • default
  • graceful_restart_helper

    Enable/Disable

    Supported values:
    • true
    • false
    • default
  • graceful_restart_timers_restart

    Set maximum time for a restart sent to the BGP peer. Valid values are Integer, keyword ‘default’.

  • graceful_restart_timers_stalepath_time

    Set maximum time that BGP keeps the stale routes from the restarting BGP peer. Valid values are Integer, keyword ‘default’.

  • isolate

    Enable/Disable isolate this router from BGP perspective

    Supported values:
    • true
    • false
    • default
  • log_neighbor_changes

    Enable/Disable message logging for neighbor up/down event

    Supported values:
    • true
    • false
    • default
  • maxas_limit

    Specify Maximum number of AS numbers allowed in the AS-path attribute. Valid values are integers between 1 and 2000, or keyword ‘default’ to disable this property

  • neighbor_down_fib_accelerate

    Enable/Disable handle BGP neighbor down event, due to various reasons

    Supported values:
    • true
    • false
    • default
  • nsr

    Enable/Disable Non-Stop Routing (NSR)

    Supported values:
    • true
    • false
    • default
  • reconnect_interval
  • route_distinguisher

    VPN Route Distinguisher (RD). The RD is combined with the IPv4 or IPv6 prefix learned by the PE router to create a globally unique address. Valid values are a String in one of the route-distinguisher formats (ASN2:NN, ASN4:NN, or IPV4:NN); the keyword ‘auto’, or the keyword ‘default’.

  • router_id

    Router Identifier (ID) of the BGP router instance. Valid values are String, keyword ‘default’.

  • shutdown

    Administratively shutdown the BGP protocol

    Supported values:
    • true
    • false
    • default
  • suppress_fib_pending

    Enable/Disable advertise only routes that are programmed in hardware to peers

    Supported values:
    • true
    • false
    • default
  • timer_bestpath_limit

    Specify timeout for the first best path after a restart, in seconds. Valid values are Integer, keyword ‘default’.

  • timer_bestpath_limit_always

    Enable/Disable update-delay-always option

    Supported values:
    • true
    • false
    • default
  • timer_bgp_holdtime

    Set bgp hold timer. Valid values are Integer, keyword ‘default’.

  • timer_bgp_keepalive

    Set bgp keepalive timer. Valid values are Integer, keyword ‘default’.

Parameters

  • asn

    BGP autonomous system number. Valid values are String, Integer in ASPLAIN or ASDOT notation

  • name (namevar)
  • provider

    The specific backend to use for this ‘cisco_bgp` resource. You will seldom need to specify this — Puppet will usually discover the appropriate provider for your platform.

  • vrf (defaults to: default)

    Name of the resource instance. Valid values are string. The name ‘default’ is a valid VRF.

    Supported values:
    • /^\S+$/