(Teil-)Ursache für komische Last-Verteilung und komische Routen im Backbone / BB<->GW gefunden:
Die most specific routen, die über OSPF announced wurden passten nicht mit dem überein, was als DHCP Range auf den GWs eingestellt war. Daher gab es Überschneidungen, die dann quer geroutet wurden:
Es war jedoch kein Programmatischer Fehler oder Konfigurationsfehler. Es scheint, dass die Ranges angepasst wurden, anschließend jedoch lediglich die bird Rolle ausgeführt wurde, nicht jedoch die dhcp rolle.
Ich habe das nun nachgeholt:
TASK [dhcp : create dhcp config] ***********************************************
changed: [greyworm-01]
--- before: /etc/dhcp/dhcpd.conf
+++ after: dynamically generated
@@ -1,16 +1,16 @@
# This file is managed by ansible, don't make changes here - they will be overwritten.
default-lease-time 240;
max-lease-time 1200;
authoritative;
-log-facility local6;
+log-facility local7;
subnet 10.43.8.0 netmask 255.255.248.0 {
- range 10.43.13.67 10.43.15.254;
+ range 10.43.12.1 10.43.13.255;
option routers 10.43.8.4;
option domain-name-servers 10.43.8.4;
option interface-mtu 1280;
}
changed: [remue-01]
--- before: /etc/dhcp/dhcpd.conf
+++ after: dynamically generated
@@ -1,16 +1,16 @@
# This file is managed by ansible, don't make changes here - they will be overwritten.
default-lease-time 240;
max-lease-time 1200;
authoritative;
-log-facility local6;
+log-facility local7;
subnet 10.43.8.0 netmask 255.255.248.0 {
- range 10.43.8.26 10.43.10.160;
+ range 10.43.8.26 10.43.9.255;
option routers 10.43.8.2;
option domain-name-servers 10.43.8.2;
option interface-mtu 1280;
}
changed: [fanlin-03]
--- before: /etc/dhcp/dhcpd.conf
+++ after: dynamically generated
@@ -1,16 +1,16 @@
# This file is managed by ansible, don't make changes here - they will be overwritten.
default-lease-time 240;
max-lease-time 1200;
authoritative;
-log-facility local6;
+log-facility local7;
subnet 10.43.8.0 netmask 255.255.248.0 {
- range 10.43.10.161 10.43.13.66;
+ range 10.43.10.1 10.43.11.255;
option routers 10.43.8.3;
option domain-name-servers 10.43.8.3;
option interface-mtu 1280;
}
Grund für bird logging spam im syslog auf des1 gefunden.
Mar 17 06:26:27 des1 bird: Netlink: File exists
Mar 17 06:27:27 des1 bird: Netlink: File exists
Mar 17 06:28:26 des1 bird: Netlink: File exists
Mar 17 06:29:27 des1 bird: Netlink: File exists
Mar 17 06:30:27 des1 bird: Netlink: File exists
Mar 17 06:31:27 des1 bird: Netlink: File exists
Mar 17 06:32:27 des1 bird: Netlink: File exists
Mar 17 06:33:26 des1 bird: Netlink: File exists
Mar 17 06:34:27 des1 bird: Netlink: File exists
Mar 17 06:35:27 des1 bird: Netlink: File exists
Mar 17 06:36:27 des1 bird: Netlink: File exists
Mar 17 06:37:27 des1 bird: Netlink: File exists
Mar 17 06:38:27 des1 bird: Netlink: File exists
Mar 17 06:39:27 des1 bird: Netlink: File exists
Mar 17 06:40:27 des1 bird: Netlink: File exists
Mar 17 06:41:27 des1 bird: Netlink: File exists
Mar 17 06:42:27 des1 bird: Netlink: File exists
Mar 17 06:43:27 des1 bird: Netlink: File exists
Mar 17 06:44:27 des1 bird: Netlink: File exists
Mar 17 06:45:27 des1 bird: Netlink: File exists
Mar 17 06:46:26 des1 bird: Netlink: File exists
Grund war eine Alien-Route auf einem nicht mehr genutzten Tunnel: Mar 18 01:20:29 des1 bird: p-kernel-ff: 10.0.1.4/30: [alien] ignored
Ich habe daher das (auf der anderen Seite nicht mehr konfigurierte) Interface iface gre-ffwaf-srv2 abgerissen. Jetzt ist Ruhe.
PS: Auf die Schliche gekommen bin ich dem Ganzen, indem ich im kernel protokol in der bird config debug all eingetragen habe. Anschließend erhält man sehr hilfreiche Status-Meldungen im syslog.
snmp wurde vom Server-Spender dort konfiguriert und läuft daher nicht auf allen Servern. Es scheint wohl einen Bug bzgl. mancher ipv6 Konfigurationen im snmp zu geben. Ich habe die defaults entsprechend diesem bugreport angepasst: https://bugs.launchpad.net/ubuntu/+source/net-snmp/+bug/1246347
Habe gerade festgestellt, dass es außerdem ziemlich wichtig ist, dass man bei gre-tunneln das „ttl 255“ nicht vergisst. Tut man das, dass vererbt sich das ttl des transportieren Pakets, und ein traceroute sieht dann nicht gut aus, oder ein mtr klappt gar nicht:
$ traceroute 10.43.120.33
traceroute to 10.43.120.33 (10.43.120.33), 30 hops max, 60 byte packets
1 10.43.120.33 (10.43.120.33) 39.905 ms 39.979 ms 39.969 ms
Die neun Hop ober kommen zustande, weil …
# traceroute 89.187.208.59
traceroute to 89.187.208.59 (89.187.208.59), 30 hops max, 60 byte packets
1 ffhost01.yadn.de (144.76.30.226) 0.059 ms 0.046 ms 0.040 ms
2 static.113.186.243.136.clients.your-server.de (136.243.186.113) 0.906 ms 1.283 ms 1.372 ms
3 hos-tr6-juniper2.rz19.hetzner.de (213.239.251.161) 0.350 ms hos-tr4.juniper2.rz19.hetzner.de (213.239.231.33) 0.336 ms hos-tr3.juniper2.rz19.hetzner.de (213.239.231.1) 0.330 ms
4 core21.hetzner.de (213.239.245.97) 0.307 ms 0.311 ms core22.hetzner.de (213.239.245.137) 0.295 ms
5 core4.hetzner.de (213.239.245.14) 4.834 ms core1.hetzner.de (213.239.245.218) 4.834 ms core4.hetzner.de (213.239.245.18) 4.839 ms
6 juniper4.ffm.hetzner.de (213.239.245.1) 4.916 ms 5.015 ms 4.987 ms
7 vitroconnect.fra.ecix.net (62.69.146.52) 6.403 ms 5.868 ms 5.947 ms
8 dsdf1-cr1-tgige-0-0-0-0.net.vitroconnect.de (89.187.208.138) 8.581 ms 8.662 ms 8.553 ms
9 ffwaf-srv4.freifunk-muensterland.net (89.187.208.59) 8.110 ms 7.980 ms 7.932 ms
Ich habe jetzt die Service-VM komplett an die neue domaenen-Variable in group_vars/all angepasst, nachdem ich dort die nötigen Einträge für alle Domänen erstellt habe. Teilweise werden aber auch noch die alten Variablen genutzt, so dass die Service-VM sowohl mit “alten” Domänen als auch mit den neuen Multidomänen arbeiten kann.
Virthost FanLin hat sich heute um 04:00 wohl irgendwie verabschiedet. Pingtechnisch ist er irgendwie noch ansprechbar, mehr aber auch nicht. Über das Servermanagementinterface habe ich versucht ihn zu restarten; erfolglos. Der Support ist verständigt und weitere Infos folgen.
Auf Remü-08 den DNS-Eintrag für firmware.ffms manuell ins Bind gesetzt, da der Domänentransfair von der Service-VM nicht mehr funktioniert und nur so die Knoten per Autoupdater wegmigriert werden können.
@Fungur und ich haben heute die Graphite-Installation auf der neuen ServiceVM fortgesetzt.
Restart-Probleme des Services wurden behoben.
Der Branch ‘graphiteumzug’ wurde in ‘master’ gemerged.
Beim Rollout über Ansible gab es noch mal Probleme die wir beheben konnten.
Die Einbindung in Grafana und die Karten habe ich überprüft, beides Funktioniert mit der Url graphite.freifunk-muensterland.de … wir können das also so lassen.
Mittwoch können wir den Umzug der Graphite-Daten angehen.
Folgende Punkte müssen dabei relativ zeitnah bearbeitet werden:
Transfer der Graphite-Daten
Umschwenken der collectd-Installationen auf den Servern
Umschwenken der Scripte auf der ServiceVM
Einbindung im der Karte anpassen
Datenquelle in Grafana anpassen
Weitere Datenzugriffe anpassen oder Url “/render” vom Webserver passend umleiten
Das Zertifikat des Webservers ist jetzt erst mal verlängert.
Aktuell noch von StartSSL … müsste IrgendwannTM halt auch mal auf LetsEncrypt umgestellt werden.
Fehler wurde erkannt und behoben. Warendorf scheint wohl noch nicht auf 2016.1.2 gegangen zu sein. Diese Variable wurde für alle Domänen eindeutig gesetzt. Habe nun ein Attribut version_base hinzugefügt, das an jede Domäne gesetzt wird. (Das führt zwar zu einigen Inkonsistenzen (auf der Seite wird von 2016.1.2 gesprochen, aber so funktionieren immerhin die Download-Links wieder). Im gleichen Zuge habe die aktuelle Firmware von http://images.freifunk-muensterland.net/stable/ gezogen und die Dateien entsprechend unseres Namenschemas umbenannt.
Ich hab die Domänen sieben und acht neu als L2TP angelegt und zusätzlichen die Domänen elf und zwölf. Damit laufen jetzt auf Remü-08 und Greyworm-06 jeweils sechs Domänen.
Die sieben wird für Telgte sein und 11 war schon länger für Bocholt reserviert. Die anderen beiden sind noch unbestimmt.
Die Stadtlohner Knoten sind jetzt nach Domäne 09 migriert. Wir haben dabei leider eine kleine Brücke gebaut, den entsprechenden Knoten habe ich auf Remü-04 und Greyworm-05 im fastd blockiert. Bleibt abzuwarten, ob er sich jetzt die passende Firmware noch zieht, sonst muss der per Hand umgezogen werden.
Laut @descilla haben wir eine Hand voll Knoten verloren, da muss noch eine Liste erstellt werden und an die WMLer gesendet werden.