Stand Ansible - was fehlt noch

Moin,

wie hier beschrieben, habe ich vorhin mit Ansible die nächste Domäne gebaut. Auch wenn Greyworm-02 im wesentlichen ein geklontes Image ist, auf Sense-03 hat man gemerkt, wie fix das doch geht.

Folgende Sachen habe ich mir notiert, die noch per Hand gemacht werden müssen und noch ansibilisiert werden müssen:

  • Kernel-Header 4.2 installieren (derzeit nicht benötigt)
  • mehrere fastd instanzen
  • DHCP Logging verkürzen (seperates File, Rotation alle 3 Stunden, Aufbewahrung der letzen 4 Logs)
  • iptables NAT limit hochsetzen (nf_conntrack_max=317750)
  • DHCP-Leasedatei in Ramdisk stecken, Eintrag in /etc/rc.local
  • IP-Forwarding (IP4/6) aktivieren (neue Rolle geschrieben „ip_forwarding“, „ipforwarding“ obsolet) ✓
  • Perl Lokalisation setzen ✓
  • GRE-Tunnel graben ✓
  • bird/bird6-Konfig ✓
  • Backports aktivieren ✓
  • Kernel 4.2 installieren ✓
  • Routingtabelle ffnet anlegen ✓
  • bird/bird6 enable (Bug) vermutlich gelöst (✓)

Der ganze Rest lief ziemlich glatt, ein paar Kleinigkeiten hatte ich schon während der Konfiguration behoben. Das wollte ich kurz hier festhalten und dokumentieren.

Grüße
Matthias

1 „Gefällt mir“

Mach doch bitte aus deinem Post ein Wiki. Denn ich habe auch noch ein paar Sachen:

  • Routing zwischen den Domänen
  • Anbindung ans Monitoring (dazu ist vorheriger Schritt notwendig)

(Ich hoffe, dass ich heute nicht so stark an Prokrastination leide. Dann können wir vielleicht heute Abend das aktuelle Routing durchsprechen, dann gieße ich das in eine Ansible Rolle. Ich habe da schon etwas vorbereitet auf meiner Platte liegen, da muss “nur” noch der richtige Inhalt reingegossen werden)

Bitteschön :smile:.

Das Routen ist simpel und erfordert pro Domäne nur drei zusätzliche, statische Zeilen in Bird. Wir müssen an irgendeiner Stelle nur die Tunnel vernünftig definieren.

Was ich gerade so sehe, das Routing zwischen den Domänen läuft schon. Nur die Testdomäne und die Münsterlanddomäne sind isoliert. Die ganzen neuen, also WAF, Domäne-01 und Domäne-02 sind vernetzt.

Bzgl. des Bugs, dass bird nicht gestartet wird und auch bzgl. Multi-Fastd könnten wir uns das hier mal ansehen: http://grokbase.com/t/gg/ansible-project/1543hdr32b/bug-in-service-module-when-enabling-multiple-systemd-multi-instance-services

Da kann man Dienste mit systemctl aktivieren und es scheint auch eine Funktion von systemctl zu sein, dass es Dienste mehrfach starten kann.

Ich würde denken das man nicht „einen Dienst mehrfach starten will“ sondern dies als unterschiedliche Dienste sieht (da sie anderes parametrisiert sind). Wie man das z.b. bei Webservern oder Datenbanken halt auch macht (auch wenn es dasselbe Binary ist).
Da mit systemd Magic zu hantieren macht das IMHO nur schwerer wartbar. Mehreres services und fertig.

Bis auf Multi-Fastd sind jetzt alle fehlenden Teile eingepflegt:

PLAY RECAP ******************************************************************** 
greyworm-01                : ok=52   changed=0    unreachable=0    failed=0   
remue-01                   : ok=52   changed=0    unreachable=0    failed=0   
sense-02                   : ok=52   changed=0    unreachable=0    failed=0
3 „Gefällt mir“

Was IMHO dringend fehlt ist das Logging anzupassen. Immerhin sind auf den Dom1…3 schon echte Nutzer drauf.

D.h. mindestens:

  • dhcp logs in separetes Logfile, nicht nach syslog
  • Log Roatation alle 6h
  • Logs nach 3 Rotationen wegschmeissen

DHCP Logs ganz abzuschalten ist während der Stabiliserungsphase nicht hilfreich, da wirdas brauchen. Aber die Dinger mehr als 24h aufzubewahren ist gefährlich.

1 „Gefällt mir“

@paulinsche Hast du da vielleicht schon etwas für die warendorfer angefangen? Du erzähltest letztens über die Thematik.

Was ich mir außerdem noch wünschen würde:
https://freifunk-muensterland.de/wiki/doku.php?id=intern:ssh-logging

1 „Gefällt mir“

Soweit ich weiß, hatte sich @FanLin auch mal angeschaut, wo man das Logging überall abschalten muss.

Wo man überall abschaltwn muss steht im Wiki unten in der Gateway-Doku. Aber wir wollen ja nicht abschalten, sondern zeitnah entsorgen.

1 „Gefällt mir“

Halte ich auch für den besseren Weg. Sonst sehen wir Fehler nicht siehe nf_conntrack Überlauf.

Ja, aber ich hatte auch gesagt, dass ich mich nach dem Abend nicht mehr an das Thema erinnern würde. Ich las heute in der Zeitung auch, dass wir seid heute alle Daten für fast immer aufbewahren müssen (aber nur wenn … – kann das mal einer ergänzen?!).

VDS in Kraft getreten, jetzt wird erstmal geklagt.

Ob wer was speichert, darüber können wir uns gerne im Herbst 2016 unterhalten.
Whoops, Off-Topic.

1 „Gefällt mir“

Hm eigentlich hat es bei Domäne-04 geklappt, aber gerade bei Domäne-05 waren bird und bird6 wieder nicht im Autostart:

- name: bird aktivieren und starten
  service: name=bird state=started enabled=yes

- name: bird6 aktivieren und starten
 service: name=bird6 state=started enabled=yes

Zumindest bei der remue Kiste für dom-04 ist das Ansible doch nicht an einem Stück durchgelaufen, da wir probleme mit dem host hatten, oder? Ich denke das könnte an der Reihenfolge sein, in der die durch den handler initiierten (re)starts der Dienste erfolgen. Magst du die letzten Zeilen der ansible-Ausgabe mal hier posten, damit wir sehen, in welcher Reihenfolge das geschah?

Die habe ich nicht mehr.

Die Rolle, die die GRE-Tunnel zum Backbone baut, lässt auf Greyworm die VMs abstürzen.

Ohne lief es erst durch. Mit ist er jetzt beim networking restart hängen geblieben.

Nein, ich glaube sie hängt nur das Netzwerk ab. Absturz ist was anderes.