Nachhaltigkeit in der Firma?

Nachhaltigkeit in der Firma?

Was bedeutet Nachhaltigkeit für dich?

Jeder von uns hat eine gewisse Vorstellung davon was man dazu beitragen kann, für künftige Generationen Ressourcen zu erhalten. Manche setzen sich dafür ein, dass nur so viele Bäume gefällt werden wie auch gepflanzt werden, manche finden es am Wichtigsten, dass nicht so viel Essen weggeworfen werden. Was ist dir wichtiger?
Dass weniger Plastikmüll produziert wird? Oder, dass man lokale Produkte kauft wegen der Umwelt?
Nun stellt sich die Frage, was man als Firma umsetzen kann, ohne direkt auf etwas zu verzichten.
Klar, wenn es einer Firma gut geht kann man tatsächlich einiges tun. Aber es muss gar nicht so viel kosten!

 

Was wir bei NETWAYS umsetzen

Also wir trinken unglaublich gerne Kaffee, und auch wenn wir wissen, dass sich diesen nicht auf der neuen Dachterrasse züchten lässt, können wir dennoch nicht darauf verzichten. Also, was tun?
Wir haben den Lieferanten gewechselt und werden nun von der lokalen Kaffeerösterei Rösttrommel beliefert, damit nicht auch noch der geröstete Kaffee weite Wege transportiert werden muss. Außerdem wird nun die Milch jede Woche frisch vom Biohof Stähr hierhin beliefert. Natürlich kostet es ein Bisschen mehr als die H-Milch von Discounter um die Ecke, aber wir tun damit etwas Gutes nicht nur umwelttechnisch, sondern auch für unsere Gesundheit. Unser Obstlieferant Fruiton achtet auch auf einen Obstkorb mit Früchten der Saison, und kein Kollege beschwert sich, dass im Dezember keine Erdbeeren dabei sind. Dass wir trotzdem importierte Bananen dabei haben ist eine Wahl, die wir treffen. Keine Firma kann auf alles verzichten, aber was lässt sich machen ohne viel Aufwand?

Unser Shop zum Beispiel muss viel Verpackungsmaterial nutzen, um sicher zu gehen, dass jegliche Sensoren etc. heil beim Kunden ankommen. Aber was spricht dagegen Luftpolsterfolien von unseren Lieferungen wiederzuverwenden? Gar nichts, weshalb wir auch kaum Geld für solche Artikel ausgeben müssen, und gleichzeitig etwas für die Umwelt tun. Die neue Kollegin braucht einen Stifteköcher? Klar ist der aus Plastik günstiger, aber es gibt eine große Auswahl an Produkten aus nachwachsenden Rohstoffen, die gar nicht so unglaublich teuer sind.

 

Keine Firma kann im Alleingang die Welt retten

Jeder hat eigene Vorstellungen davon was wirklich wichtig ist. Also, was könnt ihr tun?
Wir bei NETWAYS haben viele Ideen, die wir künftig umsetzen können und werden.
Ihr auch?

Catharina Celikel
Catharina Celikel
Office Manager

Catharina unterstützt seit März 2016 unsere Abteilung Finance & Administration. Die gebürtige Norwegerin ist Fremdsprachenkorrespondentin für Englisch. Als Office Manager kümmert sie sich deshalb nicht nur um das Tagesgeschäft sondern übernimmt nebenbei zusätzlich einen Großteil der Übersetzungen. Privat ist der bekennende Bücherwurm am liebsten mit dem Fahrrad unterwegs.
Monthly Snap September 2019

Monthly Snap September 2019

The summer is officially over, and the days are getting shorter. At NETWAYS we are happy to have eight(!) new apprentices in the office! And since our team has a lot to teach, let`s start with one of our “old” trainees, teaching us something very useful!

Consultants consulting

Out of sheer curiosity Philipp learnt the advantages of a “hot backup” versus a “cold” or offline backup. Read about his hot backup with the tool Xtrabackup by Percona in Hot Backups mittels Xtrabackup.
Thilo told us why you should be Managing your Ansible Environment with Galaxy. Avoid a messy configuration and let Galaxy structure your environment. How do you combine Elastic Stack and Ansible? Thomas tried it in Logstash automatisiert ausrollen? Freilich!

NWS has a new App for you!

Our NWS-team has news for you! Cachet now available at NETWAYS Web Services. Marius checked it out for us. Do you want to test it? The first 30 days are for free!
In case you haven`t heard it yet: The NETWAYS Cloud offers Open Stack Software Defined Networking (SDN)! Martin explained how it works in NETWAYS Cloud: Schnell & einfach Netzwerke erstellen mit SDN.

Meet up with the community

Julia reminded us why we are looking forward to the OSMC with the blog series OSMC| take a glance back. Make sure to sign up for the workshop or the hackathon (or both) when you buy your OSMC ticket. More information can be found in Julia`s More Monitoring at OSMC: Workshops & Hackathon. Did you know that the program is fixed? OSMC 2019: The Program is Online
Have you seen the program for the DevOpsDays? Julia gave us the highlights in DevOpsDays Berlin: Work & Culture.

To Sleep or not to Sleep?

In our Blog-series “Just Fit- Just AwesomeStephanie wrote about early birds and night owls in Von Eulen und Lerchen. Which one you are influences your productive hours, and of course your sleep rhythm.

Webinars and Shop-news

Are you interested in our various webinars on Graylog? Or do want to know when the next webinars on Open Stack will take place? Christian is ready for you! Eine Reise in Richtung Graylog – Webinar Serie.
Nicole was very excited to announce that Icinga.com now also offers hardware integration for monitoring sensors and for SMS alerting. Find out how it works and which plugins to use in Verstärkte Zusammenarbeit mit Icinga. Do you want to know more about the products in our shop, and about their producers? Check out our new webinar series! Nicole let us know more about it in Kick Off für die neue Webinar-Reihe “Monitoring Hardware”. Who wants to build their own monitoring kit? Well, not build exactly, but the Tinkerforge bricks are easily connected. Interested? Nicole shared her happiness about our Icinga Team working on a plugin for Tinkerforge products in TinkerForge – ein Blick auf den Brick.
Darf es ein wenig Umweltüberwachung sein? As Christian explained, our shop offers monitoring systems from various producers. Which one is the right system for your needs? They are all good for monitoring, but what kinds of alerts do you prefer in case of e.g. too high humidity? There is an updated software version for the SMS gateways from SMS Eagle available, as Nicole informed us! SMSEagle: Neue Software-Version 3.41

Develop the WWW

How do we make our websites accessible for visually impaired? Flying blind – accessibility in the world wide web is Feu`s highly informative text on screen readers, colour blindness and colour themes for improving the world wide web.

#lifeatnetways

Niko joined the NETWAYS family a year ago as an apprentice, and now he shared a bit more about himself in the blogpost NETWAYS stellt sich vor – Niko Martini. Are you considering an apprenticeship at NETWAYS? Or just curious what it might be like? Read Tobias` review of his first year with us! Mein erstes Jahr bei NETWAYS! Working here is different for everyone, but it is truly important to us all that everyone should feel comfortable here!

Catharina Celikel
Catharina Celikel
Office Manager

Catharina unterstützt seit März 2016 unsere Abteilung Finance & Administration. Die gebürtige Norwegerin ist Fremdsprachenkorrespondentin für Englisch. Als Office Manager kümmert sie sich deshalb nicht nur um das Tagesgeschäft sondern übernimmt nebenbei zusätzlich einen Großteil der Übersetzungen. Privat ist der bekennende Bücherwurm am liebsten mit dem Fahrrad unterwegs.

Von Eulen und Lerchen

This entry is part 8 of 8 in the series Just fit – Just awesome

In unserer Blog-Reihe „Just fit – just awesome“, haben wir bereits einiges darüber erfahren, wie wir durch aktive kleine Umstellungen im Alltag unseren Körper fit halten können. In diesem Beitrag möchte ich auf einen Gesundheitsaspekt eingehen, der von den Genen vorbestimmt ist und zwar unsere innere Uhr.


In der Chronobiologie (Wissenschaft der zeitlichen Organisation physiologischer Prozesse) wird zwischen zwei Chronotypen unterschieden: Den Morgenmenschen, die „Lerchen“ und den Spätmenschen, die „Eulen“ genannt werden. Das heißt nicht zwangsläufig, dass Spätmenschen mehr und Morgenmenschen weniger schlafen, denn die Schlafdauer ist von Mensch zu Mensch unterschiedlich. Sondern, dass sich der Aktivitätsmodus der beiden deutlich unterscheidet.
Lerchen können in den Morgenstunden Bäume ausreißen. Ihre Leistungskurve steigt kurz nach dem Aufstehen an, erreicht in der Mittagszeit einen kurzen Tiefpunkt und hat am Nachmittag wieder eine Hochphase. Dafür ist dieser Chronotyp in den frühen Abendstunden schon ausgelaugt, müde und nicht mehr sonderlich produktiv. Generell kommt Lerchen der frühe Schul- und Arbeitszeitbeginn entgegen, Nachtschichten bekommen ihnen dagegen nicht so gut. Eulen hingegen werden in den Nachmittags- und Abendstunden aktiv und können da hochkonzentriert arbeiten, kommen aber morgens kaum aus dem Bett, selbst wenn sie ausgeschlafen sind. Ihre Leistungsphase tritt später ein, dementsprechend schlafen sie auch später und stehen später auf. Sie machen den größeren Teil der Bevölkerung aus, werden aber in dem oft vorgegebenen morgenbetonten Lebensrhythmus meist benachteiligt.


Da in der heutigen Welt kaum Rücksicht auf die verschiedenen Schlaftypen genommen wird, führt das bei vielen zu einer zunehmenden Stressbelastung, die auf lange Sicht krank machen kann. Menschen, die kontinuierlich gegen die innere Uhr leben, sind anfälliger für Depressionen, leiden häufiger an Diabetes oder Herz-Kreislauferkrankungen und sogar Krebs. Auch Schlaf – und Konzentrationsstörungen, Abgeschlagenheit, Gereiztheit, Appetitlosigkeit oder Übergewicht können die Folge sein.

Wer also versucht im Einklang mit der inneren Uhr zu leben, lebt gesünder und kann produktiver und effizienter arbeiten. Ein wichtiger Taktgeber unseres Biorhythmus ist das Sonnenlicht. Wer tagsüber genug davon tankt, unterstützt einen gesunden Tages-Nacht-Rhythmus. Deshalb ist es auch wichtig sich abends vor dem biologisch starkwirksamen blauen Licht des Fernsehers, Computers oder Smartphones fernzuhalten, da das die Melatoninausschüttung hemmt und der Tag sich so künstlich nach hinten verschiebt. Außerdem sollte die Schlafens- und Aufstehzeit stets dieselbe sein, mit einer maximalen Abweichung von einer halben Stunde, da ein unregelmäßiger Schlafrhythmus die innere Uhr durcheinanderbringt. Wer sich seine Arbeitszeiten selbst einteilen kann oder Gleitzeit im Job hat, kann seinen Arbeitsbeginn so verschieben, dass die persönlichen Hoch- und Tiefphasen bestmöglich genutzt werden. Auch die Ernährung spielt eine Rolle und hilft unsere innere Uhr im Takt zu halten. Kalorienreiche Nahrungsmittel, wie Zucker, Alkohol und fetthaltige Speisen sollten möglichst komplett gemieden werden. Es empfiehlt sich drei Mahlzeiten täglich zu essen, wobei abends auf kohlenhydrathaltige Kost verzichtet werden sollte, da diese abends wesentlich schlechter verwertet werden kann als tagsüber. Allgemein kann man sagen, dass regelmäßige Strukturen im Alltag und ein achtsamer Umgang mit belastenden Einflüssen dazu beitragen mit unserer inneren Uhr im Gleichgewicht zu leben.
Unter dem Strich lässt sich also sagen: Egal, ob du eine Lerche oder eine Eule bist, beides birgt Vor- und Nachteile. Lebt euren Tag so, wie es sich für euch richtig anfühlt und ihr den größtmöglichen Nutzen daraus zieht.

Stephanie Kotilge
Stephanie Kotilge
Accountant

Steffi ist seit 2011 bei NETWAYS. Sie fing als Office Managerin an und unterstützt seit 2017 als Accountant das Finance & Administration Team in allen buchhalterischen Belangen. In ihrer Freizeit ist sie mit ihrem Sohn immer auf der Suche nach den schönsten Spielplätzen in Nürnberg oder plant den nächsten Familientrip.

Darf es ein wenig Umweltüberwachung sein?

Seit vielen Jahren bieten wir in unserem Online-Shop Hardware der verschiedensten Hersteller an, um die Umweltbedingungen in Rechenzentren zu überwachen. Das umfasst neben Temperatur- und Luftfeuchtigkeit, Zugriffskontrollen und Spannungsversorgung beispielsweise auch Wassereinbruch und Luftstrom. Wichtig ist dabei vor allem nicht nur die Überwachung selbst, sondern auch die Alarmierung über SMS-Gateways und die Integration in Monitoring-Lösungen wie Icinga 2.

Gude stellt unter anderem umfangreiche Lösungen für die Stromversorgung, die Überwachung und Kontrolle bereit. Neben der klassischen Alarmierung, können hier direkt über die Software der Geräte einzelne Strom-Ports geschalten werden. Das wird vor allem dann interessant, wenn eine Monitoring Lösung wie Icinga 2 zum Einsatz kommt, um im Alarmierungsfall Strom-Ports direkt ein- oder auszuschalten, um eine zusätzliche Kühlung zu aktivieren oder ein System vom Netz zu nehmen. Wer mehr zu Gude erfahren möchte, kann sich hierzu gerne unser geplantes Webinar ansehen.

Für die ganzheitliche Überwachung von Geräten und Umwelteinflüssen bietet sich AKCP an. Über die Basisstationen können eine Vielzahl von Sensoren angeschlossen werden, welche in der Regel mit Standard RJ45 Kabeln arbeiten. Hierdurch erhält man gleich mehrere Vorteile:

  • Standard-Kabelschächte oder Anschlüsse können direkt verwendet werden (ohne Switch / Router dazwischen)
  • Viele der Sensoren können bis zu 300m verlängert werden
  • Eine Erweiterung um zusätzliche Sensoranschlüsse ist über Extension-Boxen möglich

Was AKCP an Umfang für die Sensoren bietet, ist dabei beeindruckend.

Eine Überwachung mit Icinga 2 ist über die vorhandenen Plugins natürlich ebenfalls möglich.

Darüber hinaus gibt es natürlich noch Hersteller wie HWgroup, MessPC und Tinkerforge, welche vom Sensor-Umfang her ebenfalls über ein breites Repertoire verfügen. Eine Zusammenfassung gibt es hier in unserem Blog-Post nächste Woche.

Zu guter letzt bleibt nur eine Frage offen: Welche Produkte passen am besten auf mich? Grundsätzlich hat jeder Hersteller Vor- und Nachteile. Wer sich nicht entscheiden kann oder für den eigenen Use-Case eine Beratung wünscht, kann gerne mit uns Kontakt aufnehmen – wir beraten gerne und bieten genau das passende an!

Wir freuen uns auf eure Anfragen!

Christian Stein
Christian Stein
Lead Senior Account Manager

Christian kommt ursprünglich aus der Personalberatungsbranche, wo er aber schon immer auf den IT Bereich spezialisiert war. Bei NETWAYS arbeitet er als Senior Sales Engineer und berät unsere Kunden in der vertrieblichen Phase rund um das Thema Monitoring. Gemeinsam mit Georg hat er sich Mitte 2012 auch an unserem Hardware-Shop "vergangen".

Mein erstes Jahr bei NETWAYS!

Mein erstes Jahr in der Ausbildung zum Fachinformatiker für Systemintegration bei NETWAYS ist vorbei. Welche Eindrücke ich gesammelt habe und wie es sich entwickelt hat, möchte ich euch in diesem Beitrag erzählen.

Mit welcher Einstellung habe ich die Ausbildung begonnen?

Bevor ich erzähle, was ich alles erlebt habe und wie ich es in der Ausbildung bei NETWAYS finde, sollten wir vielleicht klären, wie meine Einstellung zu Beginn der Ausbildung und vor der Ausbildung war. Natürlich hat man vor Beginn einer Ausbildung hohe Erwartungen, aber auch Angst, dass nicht alles so ist, wie man es sich erhofft. Ich für meinen Teil hatte vor allem vor Ausbildungsbeginn Bange, dass ich mit den Kollegen nicht klar komme oder ich nicht “aufgenommen”  werde.

Als ich meinen Ausbildungsvertrag unterschrieben habe, hatte ich nicht wirklich einen Überblick, was mich alles in der Ausbildung erwarten wird. Alles was ich wusste, war was für Themen mich grob erwarten und was mich als ausgelernter Consultant erwartet.

Haben sich meine Erwartungen erfüllt?

Ich kann nur sagen, dass sich alle Erwartungen die ich an die Ausbildung und Firma hatte, erfüllt haben. Und die Befürchtung dass ich nicht aufgenommen werde, war wenn ich jetzt darüber nachdenke, auch sinnlos. Ich fühle mich hier unter den Kollegen wie in einer großen Familie, in der sich jeder um jeden kümmert. Ein kleines Beispiel dazu wären die Freundschaften, die durch die Arbeit mit den Kollegen bei NETWAYS entstanden sind. Aber sowas kann man im Vorfeld natürlich nicht wissen…

Meine bisherigen Eindrücke von der Ausbildung

Fachinformatiker für Systemintegration ist genau das, was ich mir vorgestellt habe, später mal zu werden. Durch eine Vielzahl an Projekten und Schulungen lerne ich immer neue Dinge dazu, die mir bei den nächsten Aufgaben vielleicht weiterhelfen können. Eine Sache, die mir an diesem Beruf sehr gut gefällt, ist die Abwechslung. Von einem LAMP (Linux Apache MySQL PHP) Projekt bis hin zum Umzug ins neue NETWAYS Büro (was allerdings kein wirklicher Teil der Ausbildung zum Fachinformatiker ist), durfte ich überall mit anpacken und habe dadurch neue, wertvolle Erfahrungen gesammelt.

Wie geht es weiter?

Da ich nun im zweiten Lehrjahr bin, stehen neben Unmengen an Schulungen und Projekten auch der erste “Kontakt” mit dem Kunden vor Ort an. Zwar habe ich auch jetzt schon für NETWAYS-Kunden gearbeitet, aber noch nicht als angehender Consultant direkt vor Ort. Das bedeutet, dass ich mit einem der Consultants mit zu einem Kunden fahre und dort schon aktiv mitarbeite. Die Hauptgründe weshalb wir, Azubis ab dem zweitem Lehrjahr, aber mitfahren dürfen, ist dass wir erste Erfahrungen sammeln, sehen wie ein Consulting-Termin abläuft und daneben auch ein wenig Unterstützung leisten können.

Die Hauptsache für mich ist, dass die nächsten zwei Jahre in der Ausbildung genau so gut und voll mit Informationen und Erfahrungen werden wie das erste Jahr! Nach meinen Erfahrungen im ersten Lehrjahr glaube ich nicht, dass dem etwas im Wege steht.

Tobias Bauriedel
Tobias Bauriedel
Junior Consultant

Tobias ist ein offener und gelassener Mensch, dem vor allem der Spaß an der Arbeit wichtig ist. Bei uns macht er zurzeit seine Ausbildung zum Fachinformatiker. In seiner Freizeit ist er viel unterwegs und unternimmt gern etwas mit Freunden.

Über Physik, Erdnuss-Snacks und Schlangenöl aka Datenbanken

Achtung ein Hinweis in eigener Sache, dieser Artike kann Spuren von Polemik und rant enthalten!

Neal Stephenson hat in seinem wunderbaren Roman Cryptonomicon eine kleine Randgeschichte über eine Bandsäge eingebaut. Der für mich schönste Satz darin ist:

Anecdotes about accidents involving the bandsaw were told in hushed voices and not usually commingled with other industrial-accident anecdotes.

An diesen Satz muss ich immer denken, wenn es auf PostgreSQL-Konferenzen in den abendlichen War-Story-Runden zu Geschichten über MySQL oder MariaDB kommt, zugegeben hauptsächlichen deren Migration zu PostgreSQL.
Bei Entity–Attribute–Value (EAV) Schemas, nicht getesteten Backups, Prozeduren, die nicht maskierte Benutzereingaben als Tabellennamen für dynamisches SQL hernehmen etc. kann man sagen sie hätten es wissen können bzw. müssen. (Halt die üblichen Katastrophen, die man sich in gemütlicher Runde so erzählt, Datenbanker sind halt schon ein komischer Haufen.)

Das ist bei MySQL wie auch diversen anderen Datenbanken irgendwie anders, und ich frage mich immer wieder, warum ist das so?

Es hat evtl. etwas mit einer grundsätzlichen Bereitschaft zu tun, über physikalische Gegebenheiten nachzudenken.

Wenn jemand eine PostgreSQL-Mailingliste anschreibt und erklärt, dass Oracle eine Anfrage in 0,009 ms beantwortet, für die PostgreSQL über zwei Minuten benötigt, dann ist diese Frage erst einmal legitim.

Wenn dann aber nach und nach herauskommt, dass es um eine Tabelle mit 9.649.110 Zeilen und rund 3,5GB geht, die mittels SELECT * FROM table1; komplett gelesen wird, müsste einem doch sofort klar sein, das Ersteres nicht sein kann? Das brandneue DDR5-RAM schafft gerade mal 5,2 GT/s (Megatransfer), und da ist noch keine Netzwerkverbindung im Spiel. In 0,000009 Sekunden schafft selbst Licht “nur” rund 2,7km.

Wie können solche offensichtlichen Mess- oder Denkfehler nicht sofort auffallen? Die 2,7 km muss man ja nicht parat haben, aber dass 0,000009 Sekunden ein sehr kurzer Zeitraum sind, um 3,5GB Daten zu übertragen, liegt doch eigentlich für ITler nah?

Was mich zum Thema MM (Multi-Master-Replication) oder politisch korrekt Multi-Primary, Write-Anywhere etc. bringt…

PostgreSQL-Umsteiger von MySQL, MariaD, CockroachDB, Oracle,… fragen immer wieder (z.B. im Telegram-/Slack-Channel, den Mailinglisten, Seminaren), wie man denn einen MM-Cluster aufbaut.

Der Dialog läuft üblicherweise so ab:
Q: “Ich komme von und habe dort einen Multimaster-Cluster. Wie baue ich dasselbe mit PostgreSQL auf?”
A: “Gar nicht. Wahrscheinlich willst du das aber auch gar nicht.”
Q: “Doch, doch. Ich brauche die Hochverfügbarkeit und die Performance (ein Knoten allein schafft meine Schreiblast nicht)!”
A: “MM kostet Performance und verbessert deine Verfügbarkeit nicht wirklich. Benutze einfach eine klassische Replikation, ggfs. mit Lese-Lastverteilung.”

Verdeutlichen wir uns kurz, was es für eine Datenbank bedeutet, auf mehr als einem Clusterknoten schreibenden Zugriff zu erlauben:

  • Sequenzen (für Primärschlüssel bzw. “auto-increment/identity” Spalten) müssen synchronisiert werden, damit keine IDs doppelt vergeben werden
  • es muss sichergestellt werden, dass bei z.B. DELETE-Statements die referentielle Integrität erhalten bleibt; es muss also die Möglichkeit geben,
    clusterweit Datensätze oder sogar ganze Tabellen zu LOCKen
  • wenn auf mehreren Knoten derselbe Datensatz verändert wird, muss eine Konfliktbehandlung erfolgen. Wenn die nicht dem Zufall, sprich dem Replikations-Lag überlassen werden soll, werden clusterweite Transaktions-IDs benötigt
  • und zum Thema Schreiblast: Ziel ist es ja weiterhin, einen einheitlichen und konsistenten Datenbestand zu haben, die Schreiblast pro Knoten bleibt also unverändert!

Je mehr Knoten beteiligt sind, desto mehr Koordination ist erforderlich. Und jede dieser Aktivitäten benötigt Zeit, mindestens 1-2 Netzwerk-Roundtrips.

Je weiter meine Knoten voneinander entfernt sind, desto mehr Zeit und damit Performance geht allein schon durch pure Physik verloren!

Für PostgreSQL gibt bzw. gab es einige FOSS-Varianten, die MM beherrschen (Postgres-XC, Postgres-XL, BDR). Und 2ndQuadrant, deren derzeitiger Maintainer, sagt sinngemäß:

Die Einschränkungen und zusätzlichen Maßnahmen, die MM mit sich bringt bzw. erfordert, sind so eklatant, dass MM wahrscheinlich nie Einzug in den PostgreSQL-Core kommen wird. Und so ein Cluster ist explizit nicht für Hochverfügbarkeit gedacht, sondern um z.B. logisch weitgehend voneinander getrennte Datenbestände, z.B. Verkäufe und Lagerbestände in verschiedenen Ländern, in den jeweils anderen Standorten verfügbar zu machen.

Der Aufwand ist also durchaus erheblich, und mit ein klein wenig Nachdenken sollten sich die Zusammenhänge und Gründe auch jedem Interessenten erschließen.

Oder man macht sich einfach keine Gedanken und setzt bidirektionale Replikation auf, “was soll schon passieren” und “war ganz einfach, mit diesem Tutorial aus dem Netz”…

Multimaster-Clustering ist ein wenig wie im Dunkeln, bei Regen, mit 250 km/h über die Autobahn zu fahren. Als Beifahrer…

  1. Man wünscht sich auf jeden Fall, dass die Person am Steuer nicht nachtblind (sprich: “has RTFM”) ist
  2. das Auto und seine Grenzen sehr genau kennt (pun intended!)
  3. ein oder besser mehrere Fahrsicherheitstrainings hinter sich hat.

Und trotzdem ist man letztlich Faktoren überlassen, auf die man keinen Einfluss hat. Meist geht es ja auch gut…

Hier schließt sich der Kreis zur Bandsäge von oben, denn gewisse DBMS (Datenbank Management Systeme) stehen ja schon ohne bidirektionale Replikation nicht unbedingt im Ruf, Datenintegrität besonders hoch zu bewerten (https://bugs.mysql.com/bug.php?id=11472).

Zur Performance:

Ich erinnere mich, dass Oracle seinerzeit für ihr RAC angegeben hat, dass jeder neue Knoten 90% der Leistung des vorherigen Knotens bringt*. Was ein sensationell guter Wert wäre, aber eben alles andere als lineare Skalierung (linear steigt lediglich der Preis…):


WITH perf AS (
SELECT nodes, 0.9^(nodes-1) AS nextnodes_performance
FROM generate_series(1,8) AS nodes
)
SELECT *
,avg(nextnodes_performance) OVER (ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS average_performance
,nodes * avg(nextnodes_performance) OVER (ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
AS overall_performance
FROM perf;
┌───────┬───────────────────────┬────────────────────────┬────────────────────────┐
│ nodes │ nextnodes_performance │ average_performance │ overall_performance │
├───────┼───────────────────────┼────────────────────────┼────────────────────────┤
│ 1 │ 1.0000000000000000 │ 1.00000000000000000000 │ 1.00000000000000000000 │
│ 2 │ 0.9000000000000000 │ 0.95000000000000000000 │ 1.90000000000000000000 │
│ 3 │ 0.8100000000000000 │ 0.90333333333333333333 │ 2.70999999999999999999 │
│ 4 │ 0.7290000000000000 │ 0.85975000000000000000 │ 3.43900000000000000000 │
│ 5 │ 0.6561000000000000 │ 0.81902000000000000000 │ 4.09510000000000000000 │
│ 6 │ 0.5904900000000000 │ 0.78093166666666666667 │ 4.68559000000000000002 │
│ 7 │ 0.5314410000000000 │ 0.74529014285714285714 │ 5.21703099999999999998 │
│ 8 │ 0.4782969000000000 │ 0.71191598750000000000 │ 5.69532790000000000000 │
└───────┴───────────────────────┴────────────────────────┴────────────────────────┘

* vielleich waren es auch 80% oder 95% oder die Aussage war einfach kompletter Humbug?

Zur Verfügbarkeit:

Ein anderes gerne vorgebrachtes Argument, z.B. auf galeracluster.com ist “Transparent to Applications: Required no or minimal changes to the application”.

Ich habe mich immer gefragt, wie Oracle beim RAC das TCP-Protokoll aushebelt, eine Netzwerkverbindung bricht nun einmal ab, wenn der Host offline geht. Bis mir mal jemand gesteckt hat, dass man auf ein RAC mit einer anderen Client-Bibliothek zugreift. Mit anderen Worten: der Verbindungsabbruch wird nicht an das Programm durchgereicht, sondern das Statement (bzw. die Transaktion?) wird auf einer neuen Verbindung wiederholt. Ich unterstelle einfach mal, dass Galera etc. ähnlich arbeiten.

Können das die modernen Connection-Pools, ORMs etc. nicht auch alle schon mehr oder weniger selbsttätig oder mit “minimal changes”? Eine Applikation sollte es auf jeden Fall können. Aber gut, es sollte auch keine Applikationen mehr geben, die mehr als ein Statement außerhalb einer Transaktion durchführen…!

Auf jeden Fall rücken solche Aussagen die entsprechenden Produkte m. E. in die Nähe eines Worts, das im Titel dieses Beitrags steht…

Der klassische Ansatz:

Der Vollständigkeit halber sei noch kurz umrissen, wie eine hochverfügbare Cluster-Lösung mit PostgreSQL oder auch anderen DBMS aussehen kann.

  • ein Knoten (“Primary” oder non-PC “master”, P) erlaubt lesende und schreibende Zugriffe (R/W)
  • n andere Knoten (“Secondaries” oder “slaves”, S1,…,Sn) erhalten die Änderungen von P und erlauben lesende Zugriffe (RO)
  • zusätzlich landen alle Änderungen in einem Archiv, aus dem jeder beliebige Zeitpunkt wieder hergestellt werden kann (PITR)
  • Sn können synchron oder asynchron replizieren (bei synchroner Replikation sollte n > 1 sein!)

Der Zugriff auf den Knoten P kann auf verschiedene Arten erfolgen:

  • Clients erhalten die IPs aller Knoten und können selbst festlegen, ob sie Schreib-Lesezugriff benötigen
  • P hat eine zusätzliche virtuelle IP-Adresse, unter der er angesprochen wird (gerne zusammen mit P in einer Resource-Group der eingesetzten HA-Lösung)
  • ein vorgeschaltetes Tool, z.B. HAProxy weiß, welcher Knoten gerade P ist

Zusätzlich können Clients entscheiden, ob ihre jeweilige Aktivität nur lesend oder schreibend ist und sich entsprechend mit P oder einem Sn unterhalten, um die Gesamt-Performance zu verbessern.

Manche Pooler, z.B. PGPool-II können diese Unterscheidung sogar selber mehr oder weniger gut treffen. Vorsicht aber mit z.B. schreibenden Triggern!

Dass eine Client-Software eine halbwegs funktionale Fehlerbehandlung haben sollte, vielleicht sogar mit ein wenig Wartezeit vor’m retry, versteht sich von selbst.

Multi-Master-Datenbankcluster bringen einige Aspekte mit, die zu wenig oder zumindest selten beachtet werden. Manche sind ausgesprochen gefährlich!

Eine klassische Replikationslösung bietet annähernd dieselbe Verfügbarkeit, i.A. deutlich bessere Performance und bereitet auf Dauer wesentlich weniger Kopfschmerzen.

Wie man ein solches Cluster aufbaut, lernt man in unserem Kurs PostgreSQL Fundamentals.

Gunnar “Nick” Bluth hat seine Liebe zu relationalen Datenbanken Ende des letzten Jahrtausends entdeckt. Über MS Access und MySQL 3.x landete er sehr schnell bei PostgreSQL und hat nie zurückgeschaut, zumindest nie ohne Schmerzen. Er verdient seine Brötchen seit beinahe 20 Jahren mit FOSS (Administration, Schulungen, Linux, PostgreSQL). Gelegentlich taucht er auch tiefer in die Programmierung ein, so als SQL-Programmierer bei der Commerzbank oder in App-Nebenprojekten.