21x9.org


Active/Active Cluster mit haproxy, glusterfs und Galera


Categories: [blog]

Ich habe hier im Blog ja schon öfter Artikel zu Clustern geschrieben, es handelte sich aber immer um Active/Passive Setups. Diesmal soll es ein Active/Active Setup werden.

Worin liegt der Unterschied? Bei einem Active/Passive Setup gibt es einen aktiven Node auf dem alle gewünschten Dienste gestartet sind. Auf dem passiven Node sind zwar dieselben Dienste und Daten vorhanden, aber nicht gestartet. Tritt auf dem aktiven Node ein Fehler auf werden die restlichen Dienste dort heruntergefahren und auf dem passiven Node gestartet. Das dauert natürlich etwas und in der Zeit sind die Dienste nicht erreichbar. In einem Active/Active Setup sind die Dienste auf allen Nodes gestartet und es gibt keine Downtime, wenn auf einem Node ein Fehler auftritt. Ein weiterer Vorteil, man kann die Last auf die Nodes verteilen.

Continue Reading...


glusterfs, galera, haproxy (debian jessie)


Categories: [blog]

Ich habe hier im Blog ja schon öfter Artikel zu Clustern geschrieben, es handelte sich aber immer um Active/Passive Setups. Diesmal soll es ein Active/Active Setup werden.

Worin liegt der Unterschied? Bei einem Active/Passive Setup gibt es einen aktiven Node auf dem alle gewünschten Dienste gesta...

Continue Reading...


Sender Policy Framework (SPF) mit Postfix


Categories: [blog]

Ich habe mich echt lange davor gedrückt mit endlich mal richtig mit SPF (und DKIM, dazu aber ein andermal mehr) zu beschäftigen. Heute habe ich es dann endlich gemacht und er hat gar nicht gebohrt es war verblüffend einfach und schnell gemacht.

SPF ist dazu da einem empfangenden Mailsystem eine Möglichkeit zu geben festzustellen ob der einliefernde Server vom Domaininhaber überhaupt für den Mailversand vorgesehen wurde.

Continue Reading...


Command Line Adventues: AWK


Categories: [blog]

Wenn ich mich recht erinnere haben wir in den vorangegangenen CLI-Adventures awk bisher immer nur verwendet um eine bestimmte Stelle (nennen wir es Spalte) einer Zeile herauszulösen. awk kann jedoch deutlich mehr, zum Beispiel Rechnen und Systembefehle ausführen.

Continue Reading...


HTTP Strict Transport Layer Security (HSTS)


Categories: [blog]

Wo ich schonmal dabei war an den SSL-Zertifikaten zu schrauben habe ich gleich noch HSTS angeknipst. HSTS zwingt den Browser, für eine gewisse Zeit, nur noch HTTPS-Verbindungen zu einem Server/einer Domain herzustellen und verhindert so bestimmte Formen von Man-in-the-middle-Angriffen.

Continue Reading...


letsencrypt.sh


Categories: [blog]

Ich weiß nicht, wie oft ich schon Mails von Bloglesern erhalten habe, mein SSL-Zertifikat sei abgelaufen und ich sollte es doch endlich mal erneuern. Nicht dass mir mein Monitoring das nicht rechtzeitig gesagt hätte, auch https://startssl.com hat mir immer rechtzeitig eine entsprechende Info geschickt. Aber Zertifikatupdates sind einfach umständlich und doof.

Um so erfreuter war ich, als https://letsencrypt.org sich anschickte hier Abhilfe zu schaffen. Doch der Betatest brachte einige Ernüchterung. Der Standard-Client brachte nicht nur zahlreiche Dependencies und damit überraschend viel Komplexität mit sich, er wollte außerdem auf genau den Ports laufen, die mein Webserver belegt. Das manuelle Verfahren, welches zumindest die letztgenannte Einschränkung nicht mit sich brachte war leider nicht sauber automatisierbar, da es ständig irgendwelche Rückfragen stellte.

Abhilfe schaffte hier [[https://github.com/lukas2511/letsencrypt.sh|letsencrypt.sh]]. Es benötigt lediglich sed und curl, beides ist sowieso installiert. Das eigentliche Script ist in Bash geschrieben und deutlich überschaubarer als der letsencrypt-Standard-Client. Der einzige Nachteil, die Apache-Konfiguration muss ich weiterhin selbst übernehmen, doch das hatte der letsencrypt-Client auch nicht sauber hinbekommen.

Continue Reading...


Serverüberwachung mit collectd und facette


Categories: [blog]

Neben der Serverüberwachung mit Icinga/Nagios habe ich bisher immer Munin verwendet. Munin zeichnet Graphen z.B. für die aktuelle Serverlast (Load) oder die Belegung der Festplatten. Leider skaliert Munin nicht besonders gut. In festen Intervallen fragt Munin die verbundenen Clients nach neuen Daten und rendert neue Grafiken. Das dauert leider einigermaßen lang.

Eine ressourcensparendere Alternative ist collectd (https://collectd.org/).

Continue Reading...


Tape Backups mit Bacula


Categories: [blog]

Speichermedien für Backups gibt es reichlich. Eines der ältesten Medien sind sicherlich Bänder. Und auch wenn sie immer mehr von Cloudlösungen und Festplatten abgelöst werden gibt es sie noch immer. Die Vorteile sind sicherlich die hohen Kapazitäten in Verbindung mit den günstigen Medien. Einzig die Einstiegpreise für ein entsprechendes Laufwerk sind zunächst sicher abschreckend.

Ein Nachteil von Bändern ist sicher dass man sie nicht einfach so wie eine normale Festplatte ansprechen kann. Somit scheiden viele Backuplösungen aus und man benötigt eine auf Bandlaufwerke spezialisierte Software.

Hier kommt Bacula ins Spiel.

Continue Reading...


OpenVPN


Categories: [blog]

Ein VPN ist eine praktische Sache und eine der seltenen Maßnahmen, die sowohl Komfort als auch Sicherheit erhöhen. Die Einrichtung eines VPNs kann recht komplex sein, mit OpenVPN geht es aber ziemlich leicht. Außerdem stehen für OpenVPN Clients für quasi jedes Betriebssystem zur Verfügung.

Continue Reading...


Two Node Cluster mit Pacemaker und Corosync


Categories: [blog]

Vor einiger Zeit habe ich bereits ein Cluster-Setup auf Pacemaker/Corosync-Basis unter Debian Wheezy hier verbloggt. Seitdem hat sich im Pacemakerumfeld ein wenig was getan und somit ist es an der Zeit für ein Update, diesmal mit CentOS7.

Die größte Neuerung (für mich) war der Wegfall des Cluster Resource Managers (crm), er wird durch pcs bzw. pcsd ersetzt, letzterer stellt sogar ein komfortables Webinterface zur Verwaltung des Clusters zur Verfügung.

Continue Reading...