Switch ipv6_edge_router to quagga #8
14 changed files with 174 additions and 257 deletions
|
@ -1,186 +0,0 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
=IWDv
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
egKcOCfAMg==
|
||||
=Lt8H
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
HGxIKIAggOUujclydhvu
|
||||
=+/L/
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -1,5 +1,11 @@
|
|||
---
|
||||
- name: restart frr
|
||||
- name: restart bgpd
|
||||
service:
|
||||
name: frr
|
||||
name: bgpd
|
||||
state: restarted
|
||||
|
||||
- name: restart zebra
|
||||
service:
|
||||
name: zebra
|
||||
state: restarted
|
||||
...
|
||||
|
|
|
@ -1,39 +1,56 @@
|
|||
---
|
||||
- name: install GPG
|
||||
- name: Install quagga
|
||||
apt:
|
||||
name: gnupg
|
||||
name: quagga
|
||||
|
||||
- name: Add FRR repo key
|
||||
apt_key:
|
||||
data: "{{ lookup('file', 'frr-apt-key.asc') }}"
|
||||
state: present
|
||||
- name: Tweak sysctl for table size
|
||||
ansible.posix.sysctl:
|
||||
name: net.ipv6.route.max_size
|
||||
value: '500000'
|
||||
sysctl_set: yes
|
||||
|
||||
- name: Add FRR apt repository
|
||||
apt_repository:
|
||||
repo: deb https://deb.frrouting.org/frr buster frr-stable
|
||||
state: present
|
||||
notify: restart frr
|
||||
|
||||
- name: Install frr
|
||||
apt:
|
||||
name: frr
|
||||
|
||||
- name: setup frr daemons
|
||||
- name: Setup Quagga configuration
|
||||
template:
|
||||
src: daemons.j2
|
||||
dest: /etc/frr/daemons
|
||||
mode: 0644
|
||||
notify: restart frr
|
||||
src: "{{ item }}.j2"
|
||||
dest: "/etc/quagga/{{ item }}"
|
||||
mode: u=rw,g=r,o=
|
||||
loop:
|
||||
- daemons
|
||||
- zebra.conf
|
||||
- bgpd.conf
|
||||
# FIXME: re-activate when failover is working
|
||||
#notify:
|
||||
# - restart bgpd
|
||||
# - restart zebra
|
||||
|
||||
- name: setup frr.conf
|
||||
template:
|
||||
src: frr.conf.j2
|
||||
dest: /etc/frr/frr.conf
|
||||
mode: 0644
|
||||
notify: restart frr
|
||||
|
||||
- name: enable+start frr
|
||||
- name: enable+start bgpd and quagga
|
||||
service:
|
||||
name: frr
|
||||
name: "{{ item }}"
|
||||
state: started
|
||||
enabled: true
|
||||
loop:
|
||||
- bgpd.service
|
||||
- zebra.service
|
||||
|
||||
- name: Install quagga prometheus exporter
|
||||
template:
|
||||
src: '{{ item.src }}'
|
||||
dest: '{{ item.dest }}'
|
||||
mode: '{{ item.mode }}'
|
||||
loop:
|
||||
- src: quagga.py.j2
|
||||
dest: /usr/share/prometheus-node-exporter/quagga.py
|
||||
mode: "0755"
|
||||
- src: prometheus-node-exporter-quagga.service.j2
|
||||
dest: /etc/systemd/system/prometheus-node-exporter-quagga.service
|
||||
mode: "0644"
|
||||
- src: prometheus-node-exporter-quagga.timer.j2
|
||||
dest: /etc/systemd/system/prometheus-node-exporter-quagga.timer
|
||||
mode: "0644"
|
||||
|
||||
- name: Enable node-exporter
|
||||
service:
|
||||
name: prometheus-node-exporter.service
|
||||
enabled: yes
|
||||
state: started
|
||||
...
|
||||
|
|
|
@ -1,17 +1,5 @@
|
|||
log syslog informational
|
||||
log stdout
|
||||
|
||||
hostname routeur-aurore
|
||||
password Tux
|
||||
enable password Tux
|
||||
|
||||
interface lo
|
||||
line vty
|
||||
|
||||
|
||||
# Aurore AS.
|
||||
router bgp 43619
|
||||
#no synchronization
|
||||
no synchronization
|
||||
bgp router-id 45.66.111.254
|
||||
|
||||
# Remote-AS: Zayo.
|
||||
|
@ -21,4 +9,5 @@ router bgp 43619
|
|||
neighbor 2001:1b48:2:103::d7:1 activate
|
||||
exit-address-family
|
||||
!
|
||||
|
||||
log file /var/log/quagga/bgpd.log
|
||||
log stdout
|
|
@ -1,24 +1,5 @@
|
|||
# This file tells the frr package which daemons to start.
|
||||
#
|
||||
# Sample configurations for these daemons can be found in
|
||||
# /usr/share/doc/frr/examples/.
|
||||
#
|
||||
# ATTENTION:
|
||||
#
|
||||
# When activation a daemon at the first time, a config file, even if it is
|
||||
# empty, has to be present *and* be owned by the user and group "frr", else
|
||||
# the daemon will not be started by /etc/init.d/frr. The permissions should
|
||||
# be u=rw,g=r,o=.
|
||||
# When using "vtysh" such a config file is also needed. It should be owned by
|
||||
# group "frrvty" and set to ug=rw,o= though. Check /etc/pam.d/frr, too.
|
||||
#
|
||||
# The watchfrr and zebra daemons are always started.
|
||||
#
|
||||
{% if 'backup' in inventory_hostname %}
|
||||
bgpd=no
|
||||
{% else %}
|
||||
bgpd=yes
|
||||
{% endif %}
|
||||
zebra=yes
|
||||
ospfd=no
|
||||
ospf6d=no
|
||||
ripd=no
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
[Unit]
|
||||
Description=Collect quagga metrics for prometheus-node-exporter
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/bin/bash -c "/usr/share/prometheus-node-exporter/quagga.py | sponge /var/lib/prometheus/node-exporter/quagga.prom"
|
|
@ -0,0 +1,9 @@
|
|||
[Unit]
|
||||
Description=Run quagga metrics collection every 15 minutes
|
||||
|
||||
[Timer]
|
||||
OnBootSec=0
|
||||
OnUnitActiveSec=15min
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
56
roles/ipv6_edge_router/templates/quagga.py.j2
Executable file
56
roles/ipv6_edge_router/templates/quagga.py.j2
Executable file
|
@ -0,0 +1,56 @@
|
|||
#!/usr/bin/python3
|
||||
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
|
||||
def parse_bgp_summary(summary):
|
||||
header = 'Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd\n'
|
||||
res = {'routes': 0, 'uptime': 0}
|
||||
try:
|
||||
index = summary.index(header) + len(header)
|
||||
except ValueError:
|
||||
return res
|
||||
summary = summary[index:]
|
||||
match = re.match(r'(?P<neighbor>[^\s\n])+\n?\s+(?P<version>4)\s+(?P<as>\d{1,5})\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+(?P<uptime>[^\s]+)\s+(?P<routes>\d+)\n', summary)
|
||||
if match is None:
|
||||
return res
|
||||
res['routes'] = int(match.group('routes'))
|
||||
uptime = match.group('uptime')
|
||||
if re.fullmatch(r'[0-9]+:[0-9]+:[0-9]+', uptime) is not None:
|
||||
uptime = uptime.split(':')
|
||||
uptime = int(uptime[0])*3600 + int(uptime[1])*60 + int(uptime[2])
|
||||
else:
|
||||
uptime_match = re.fullmatch(r'([0-9]+)d([0-9]+)h([0-9]+)m', uptime)
|
||||
if uptime_match is not None:
|
||||
uptime = int(uptime_match.group(1))*86400 + int(uptime_match.group(2))*3600 + int(uptime_match.group(3))*60
|
||||
else:
|
||||
uptime_match = re.fullmatch(r'([0-9]+)w([0-9]+)d([0-9]+)h', uptime)
|
||||
if uptime_match is not None:
|
||||
uptime = int(uptime_match.group(1))*604800 + int(uptime_match.group(2))*86400 + int(uptime_match.group(3))*3600
|
||||
else:
|
||||
uptime_match = re.fullmatch(r'([0-9]+)y([0-9]+)w([0-9]+)d', uptime)
|
||||
if uptime_match is not None:
|
||||
uptime = int(uptime_match.group(1))*220752000 + int(uptime_match.group(2))*604800 + int(uptime_match.group(3))*86400
|
||||
else:
|
||||
uptime = 0
|
||||
res['uptime'] = uptime
|
||||
return res
|
||||
|
||||
def prompt(version='ipv4'):
|
||||
bgp_unicast_summary = subprocess.run(['/usr/bin/vtysh', '-c', f'show bgp {version} unicast summary'], capture_output=True).stdout.decode('utf-8')
|
||||
bgp_routes_uptime = parse_bgp_summary(bgp_unicast_summary)
|
||||
routes = bgp_routes_uptime['routes']
|
||||
uptime = bgp_routes_uptime['uptime']
|
||||
print(f'# HELP quagga_bgp_{version}_routes Number of {version} routes added by quagga')
|
||||
print(f'# TYPE quagga_bgp_{version}_routes gauge')
|
||||
print(f'quagga_bgp_{version}_routes {routes}')
|
||||
print(f'# HELP quagga_bgp_{version}_uptime {version} BGP connection uptime')
|
||||
print(f'# TYPE quagga_bgp_{version}_uptime gauge')
|
||||
print(f'quagga_bgp_{version}_uptime {uptime}')
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
prompt('ipv4')
|
||||
prompt('ipv6')
|
8
roles/ipv6_edge_router/templates/zebra.conf.j2
Normal file
8
roles/ipv6_edge_router/templates/zebra.conf.j2
Normal file
|
@ -0,0 +1,8 @@
|
|||
hostname routeur-aurore
|
||||
password Tux
|
||||
enable password Tux
|
||||
|
||||
log file /var/log/quagga/zebra.log
|
||||
|
||||
interface lo
|
||||
line vty
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
- name: restart keepalived
|
||||
- name: reload keepalived
|
||||
systemd:
|
||||
state: restarted
|
||||
state: reloaded
|
||||
name: keepalived
|
||||
enabled: true
|
||||
|
||||
|
|
|
@ -80,15 +80,22 @@
|
|||
src: keepalived.conf
|
||||
dest: /etc/keepalived/keepalived.conf
|
||||
mode: 0644
|
||||
notify: restart keepalived
|
||||
notify: reload keepalived
|
||||
when: "'routeur-aurore' not in ansible_hostname"
|
||||
|
||||
- name: install notify-quagga on routeur-aurore*
|
||||
template:
|
||||
src: notify-quagga.j2
|
||||
dest: /usr/local/sbin/notify-quagga
|
||||
mode: u=rx,g=r,o=r
|
||||
when: "'routeur-aurore' in ansible_hostname"
|
||||
|
||||
- name: configure keepalived for routeur-aurore*
|
||||
template:
|
||||
src: keepalived-aurore.conf
|
||||
dest: /etc/keepalived/keepalived.conf
|
||||
mode: 0644
|
||||
notify: restart keepalived
|
||||
notify: reload keepalived
|
||||
when: "'routeur-aurore' in ansible_hostname"
|
||||
|
||||
- name: Configure cron
|
||||
|
|
|
@ -11,7 +11,6 @@ iface lo inet loopback
|
|||
auto ens18
|
||||
iface ens18 inet static
|
||||
address 10.129.0.{{ router_hard_ip_suffix }}/16
|
||||
gateway 10.129.0.1
|
||||
|
||||
iface ens18 inet6 static
|
||||
address 2a09:6840:129::0:{{ router_hard_ip_suffix }}/64
|
||||
|
|
|
@ -127,5 +127,9 @@ vrrp_instance VI_ROUT_aurore_IPv6 {
|
|||
2a09:6840:50::/64 via 2a09:6840:129::5:254 dev ens18
|
||||
2a09:6840:51::/64 via 2a09:6840:129::5:254 dev ens18
|
||||
}
|
||||
|
||||
notify_master "/usr/local/sbin/notify-quagga master"
|
||||
notify_backup "/usr/local/sbin/notify-quagga backup"
|
||||
notify_fault "/usr/local/sbin/notify-quagga fault"
|
||||
}
|
||||
|
||||
|
|
21
roles/router/templates/notify-quagga.j2
Normal file
21
roles/router/templates/notify-quagga.j2
Normal file
|
@ -0,0 +1,21 @@
|
|||
#!/bin/bash
|
||||
{{ ansible_managed | comment }}
|
||||
|
||||
if [[ $# = 0 ]]; then
|
||||
echo "Invalid number of arguments" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
master)
|
||||
systemctl start zebra.service
|
||||
systemctl start bgpd.service
|
||||
;;
|
||||
backup | fault)
|
||||
systemctl stop zebra.service
|
||||
systemctl stop bgpd.service
|
||||
;;
|
||||
*)
|
||||
echo "Invalid argument" >&2
|
||||
exit 1
|
||||
esac
|
Loading…
Reference in a new issue