Skip to content

KarlAustin/ansible-anycast

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

exabgp

Role to deploy and manage exabgp.

Requirements

The only requirement is pip for RedHat. No requirements on Ubuntu Xenial. This role will install pip if it is missing and required.

Role Variables

  • exabgp_version: Version number of exabgp to deploy. Defaults to 3.4.10. (RedHat only)
  • exabgp_pid_file: Path to PID file. Defaults to /var/run/exabgp.pid.
  • exabgp_user: User for exabgp process to run as. Defaults to nobody.
  • exabgp_group: Group for exabgp process to run as. Defaults to nobody.
  • exabgp_env: This is a dictionary of dictionaries that configures how the exabgp process starts and runs. Refer to exabgp documentation for what are valid configuration values. A typical configuration knob is of the form exabgp.log.enable. The first two parts, exabgp.log form the section name. The last part is configuration key that accepts a parameter. This defaults to:
  exabgp_env:
    exabgp.daemon:
      daemonize: true
      pid: "{{ exabgp_pid_file }}"
    exabgp.log:
      all: false
      enable: true
      destination: syslog
  • exabgp_conf: This is a list of configuration sections for exabgp.conf. Each element in the list is a dictionary with three possible keys: section (such as group, neighbor, etc), name (optional), and config that defines the actual configuration for this section. This defaults to an empty list.
  exabgp_conf:
    - section: group
      name: EXAMPLE
      config: |-
        local-as 64512;
        local-address 127.0.0.1;
        hold-time 180;
        group-updates;
        family {
          ipv4 unicast;
        }
        neighbor 127.0.0.10 {
          description "EXAMPLE";
          peer-as 64513;
        }

Dependencies

No dependency on other roles.

Example Playbook

Example:

- hosts: bgp_servers
  vars:
    exabgp_conf:
      - section: neighbor
        name: 127.0.0.15
        config: |-
          local-as 64512;
          local-address 127.0.0.1;
          description "Example neighbor";
          peer-as 64514;
          hold-time 5;
          static {
            route 127.0.0.2 {
              next-hop 127.0.0.3;
            }
          }
          family {
            inet unicast;
          }
  roles:
     - { role: sfromm.exabgp }

License

GPLv2

Author Information

See https://github.com/sfromm

About

Role to manage exabgp

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%